This commit is contained in:
@@ -40,9 +40,8 @@ namespace AyaNova.Biz
|
|||||||
|
|
||||||
public static async Task AddEvent(NotifyEvent ev)
|
public static async Task AddEvent(NotifyEvent ev)
|
||||||
{
|
{
|
||||||
//iterate subs, figure out who gets this event
|
|
||||||
//add to table for any that do
|
|
||||||
|
|
||||||
|
log.LogTrace($"AddEvent processing: [{ev.ToString()}]");
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
|
||||||
@@ -51,27 +50,20 @@ namespace AyaNova.Biz
|
|||||||
|
|
||||||
using (AyContext ct = AyaNova.Util.ServiceProviderProvider.DBContext)
|
using (AyContext ct = AyaNova.Util.ServiceProviderProvider.DBContext)
|
||||||
{
|
{
|
||||||
//select all jobs with no deliver date or deliver date no longer in future
|
//iterate subs, figure out who gets this event
|
||||||
|
//add to table for any that do
|
||||||
//### PLAN if it's an smtp delivery that fails and it's to someone who can be delivered in app then it should send an inapp notification of
|
var subs=await ct.NotifySubscription.AsNoTracking().Where(z=>z.EventType==ev.EventType &&)
|
||||||
//delivery failure and still delete the smtp delivery
|
|
||||||
//If it's not possible to notify the person via in app of the failed smtp then perhaps it notifies OPS personnel and biz admin personnel
|
|
||||||
//NEW NOTIFICATION SUBSCRIPTION EVENT TYPE:
|
|
||||||
//OPERATIONS_PROBLEMS - backup, notifications, out of memory, what have you, anyone can subscribe to it regardless of rights
|
|
||||||
//this is just to let people know there is a problem
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
|
log.LogError(ex, $"Error adding notification event: [{ev.ToString()}]");
|
||||||
}
|
}
|
||||||
finally
|
finally
|
||||||
{
|
{
|
||||||
log.LogTrace("Notify is done setting to not running state and tagging lastRun timestamp");
|
log.LogTrace($"Notify event processed: [{ev.ToString()}]");
|
||||||
lastRun = DateTime.UtcNow;
|
|
||||||
NotifyIsRunning = false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -34,6 +34,11 @@ namespace AyaNova.Models
|
|||||||
Created = DateTime.UtcNow;
|
Created = DateTime.UtcNow;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public override string ToString()
|
||||||
|
{
|
||||||
|
return JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.None);
|
||||||
|
}
|
||||||
|
|
||||||
}//eoc
|
}//eoc
|
||||||
|
|
||||||
}//eons
|
}//eons
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ namespace AyaNova.Models
|
|||||||
|
|
||||||
[Required]
|
[Required]
|
||||||
public long UserId { get; set; }
|
public long UserId { get; set; }
|
||||||
public AyaType? AyaType { get; set; }
|
public AyaType? AyaType { get; set; }//Note: could be Global meaning any corebiz object would be included if relevant (e.g. ObjectCreated)
|
||||||
[Required]
|
[Required]
|
||||||
public NotifyEventType EventType { get; set; }
|
public NotifyEventType EventType { get; set; }
|
||||||
public TimeSpan? AdvanceNotice { get; set; } //Note: I've been doing nullable wrong sort of: https://stackoverflow.com/a/29149207/8939
|
public TimeSpan? AdvanceNotice { get; set; } //Note: I've been doing nullable wrong sort of: https://stackoverflow.com/a/29149207/8939
|
||||||
|
|||||||
Reference in New Issue
Block a user