This commit is contained in:
2
.vscode/launch.json
vendored
2
.vscode/launch.json
vendored
@@ -50,7 +50,7 @@
|
||||
"AYANOVA_USE_URLS": "http://*:7575;",
|
||||
"AYANOVA_FOLDER_USER_FILES": "c:\\temp\\RavenTestData\\userfiles",
|
||||
"AYANOVA_FOLDER_BACKUP_FILES": "c:\\temp\\RavenTestData\\backupfiles",
|
||||
"AYANOVA_SERVER_TEST_MODE":"false",
|
||||
"AYANOVA_SERVER_TEST_MODE":"true",
|
||||
"AYANOVA_SERVER_TEST_MODE_SEEDLEVEL":"small",
|
||||
"AYANOVA_SERVER_TEST_MODE_TZ_OFFSET":"-7",
|
||||
"AYANOVA_BACKUP_PG_DUMP_PATH":"C:\\data\\code\\PostgreSQLPortable_12.0\\App\\PgSQL\\bin\\"
|
||||
|
||||
@@ -190,7 +190,7 @@ methods they have two entries here, no other table indicates events to be tracke
|
||||
so for example a CreatedWithTag notification or UpdatedWithTag notification will work on any object with that tag if global or a specific type i.e. customer with that tag
|
||||
Then they can control by tag as well, intags are used to filter and include (or any if no intags), outtags filter out and trump intags
|
||||
These are also used for tag type conditions
|
||||
(aID, userId, ayatype, aEventType, advancenoticetimespan, idvalue, decvalue, aDeliveryMethod, deliveryaddress, attachreportid, intags, outtags, HASH)
|
||||
(aID, userId, ayatype, aEventType, advancenoticetimespan, agevalue, idvalue, decvalue, aDeliveryMethod, deliveryaddress, attachreportid, intags, outtags, HASH)
|
||||
|
||||
/Notifyevent table - contains all events, created by updating objects or directly in some cases and used by generator for processing as deliveries
|
||||
created (timestamp used to clean out old stuck events), ayatype, objectid, eventtype, appliestouserid (single subscriber event), aEventDate, ASAVEDMESSAGE, HASH?
|
||||
@@ -253,6 +253,7 @@ WorkorderItemPartRequestCreated case 3652 [GENERAL]
|
||||
ContractExpiring - Customer version in addition to User version [CUSTOMER]
|
||||
WorkorderTotalExceedsThreshold - Custom notification case 1745 "the andy" [GENERAL] [CONDITION: DOLLARTOTAL money value]
|
||||
WorkOrderStatusAge "deadman" delivery if *SPECIFIC* status not changed to different status before XX time period [GENERAL] https://rockfish.ayanova.com/default.htm#!/rfcaseEdit/1137
|
||||
NOTE: this will need a timespan with a different title
|
||||
|
||||
QuoteStatusAge [PERSONAL (prepared by), GENERAL]
|
||||
UnitWarranyExpiry case 1361 [GENERAL]
|
||||
|
||||
@@ -239,7 +239,7 @@ namespace AyaNova.Api.Controllers
|
||||
TranslationKeysToFetch.Add("NotifyEventCSRRejected");
|
||||
TranslationKeysToFetch.Add("NotifyEventWorkorderClosed");
|
||||
TranslationKeysToFetch.Add("NotifyEventQuoteStatusChange");
|
||||
//TranslationKeysToFetch.Add("NotifyEventWorkorderFollowUp");
|
||||
TranslationKeysToFetch.Add("NotifyEventObjectAge");
|
||||
TranslationKeysToFetch.Add("NotifyEventServiceBankDepleted");
|
||||
TranslationKeysToFetch.Add("NotifyEventReminderImminent");
|
||||
TranslationKeysToFetch.Add("NotifyEventScheduledOnWorkorder");
|
||||
@@ -269,7 +269,7 @@ namespace AyaNova.Api.Controllers
|
||||
ReturnList.Add(new NameIdItem() { Name = LT["NotifyEventCSRRejected"], Id = (long)NotifyEventType.CSRRejected });
|
||||
ReturnList.Add(new NameIdItem() { Name = LT["NotifyEventWorkorderClosed"], Id = (long)NotifyEventType.WorkorderClosed });
|
||||
ReturnList.Add(new NameIdItem() { Name = LT["NotifyEventQuoteStatusChange"], Id = (long)NotifyEventType.QuoteStatusChange });
|
||||
// ReturnList.Add(new NameIdItem() { Name = LT["NotifyEventWorkorderFollowUp"], Id = (long)NotifyEventType.WorkorderFollowUp });
|
||||
ReturnList.Add(new NameIdItem() { Name = LT["NotifyEventObjectAge"], Id = (long)NotifyEventType.ObjectAge });
|
||||
ReturnList.Add(new NameIdItem() { Name = LT["NotifyEventServiceBankDepleted"], Id = (long)NotifyEventType.ServiceBankDepleted });
|
||||
ReturnList.Add(new NameIdItem() { Name = LT["NotifyEventReminderImminent"], Id = (long)NotifyEventType.ReminderImminent });
|
||||
ReturnList.Add(new NameIdItem() { Name = LT["NotifyEventScheduledOnWorkorder"], Id = (long)NotifyEventType.ScheduledOnWorkorder });
|
||||
|
||||
@@ -19,7 +19,7 @@ namespace AyaNova.Biz
|
||||
CSRRejected = 7,
|
||||
WorkorderClosed = 8,
|
||||
QuoteStatusChange = 9,
|
||||
// WorkorderFollowUp=10,
|
||||
ObjectAge = 10,
|
||||
ServiceBankDepleted = 11,
|
||||
ReminderImminent = 12,
|
||||
ScheduledOnWorkorder = 13,
|
||||
|
||||
@@ -22,6 +22,7 @@ namespace AyaNova.Models
|
||||
public TimeSpan? AdvanceNotice { get; set; } //Note: I've been doing nullable wrong sort of: https://stackoverflow.com/a/29149207/8939
|
||||
public long? IdValue { get; set; }
|
||||
public decimal? DecValue { get; set; }
|
||||
public TimeSpan? AgeValue {get;set;}//for events that depend on an age of something (e.g. WorkorderStatusAge)
|
||||
[Required]
|
||||
public NotifyDeliveryMethod DeliveryMethod { get; set; }
|
||||
public string DeliveryAddress { get; set; }
|
||||
|
||||
@@ -1885,5 +1885,7 @@
|
||||
"NotifyEventUnitMeterReadingMultipleExceeded": "Zählerstand überschritten (Vielfaches)",
|
||||
"NotifyEventDefaultNotification": "Standardbenachrichtigung",
|
||||
"NotifyDeliveryMethodApp": "In Anwendung liefern",
|
||||
"NotifyDeliveryMethodSMTP": "An E-Mail-Adresse liefern"
|
||||
"NotifyDeliveryMethodSMTP": "An E-Mail-Adresse liefern",
|
||||
"NotifyEventObjectAge":"Objektalter seit der Erstellung",
|
||||
"Duration": "Dauer"
|
||||
}
|
||||
@@ -1885,5 +1885,7 @@
|
||||
"NotifyEventUnitMeterReadingMultipleExceeded": "Unit meter reading multiple exceeded",
|
||||
"NotifyEventDefaultNotification": "Default notification",
|
||||
"NotifyDeliveryMethodApp": "Deliver in application",
|
||||
"NotifyDeliveryMethodSMTP": "Deliver to email address"
|
||||
"NotifyDeliveryMethodSMTP": "Deliver to email address",
|
||||
"NotifyEventObjectAge":"Object age since created",
|
||||
"Duration": "Duration"
|
||||
}
|
||||
@@ -1885,5 +1885,7 @@
|
||||
"NotifyEventUnitMeterReadingMultipleExceeded": "Lectura de medidor de unidad excedida (múltiple)",
|
||||
"NotifyEventDefaultNotification": "Notificación predeterminada",
|
||||
"NotifyDeliveryMethodApp": "Entregar en programa",
|
||||
"NotifyDeliveryMethodSMTP": "Entregar a la dirección de correo electrónico"
|
||||
"NotifyDeliveryMethodSMTP": "Entregar a la dirección de correo electrónico",
|
||||
"NotifyEventObjectAge":"Edad del objeto desde su creación",
|
||||
"Duration": "Duración"
|
||||
}
|
||||
@@ -1885,5 +1885,7 @@
|
||||
"NotifyEventUnitMeterReadingMultipleExceeded": "Lecture du compteur unitaire dépassée (multiple)",
|
||||
"NotifyEventDefaultNotification": "Notification par défaut",
|
||||
"NotifyDeliveryMethodApp": "Livrer dans le programme",
|
||||
"NotifyDeliveryMethodSMTP": "Livrer à l'adresse e-mail"
|
||||
"NotifyDeliveryMethodSMTP": "Livrer à l'adresse e-mail",
|
||||
"NotifyEventObjectAge":"Âge de l'objet depuis sa création",
|
||||
"Duration": "Durée"
|
||||
}
|
||||
@@ -22,7 +22,7 @@ namespace AyaNova.Util
|
||||
//!!!!WARNING: BE SURE TO UPDATE THE DbUtil::EmptyBizDataFromDatabaseForSeedingOrImporting WHEN NEW TABLES ADDED!!!!
|
||||
private const int DESIRED_SCHEMA_LEVEL = 12;
|
||||
|
||||
internal const long EXPECTED_COLUMN_COUNT = 380;
|
||||
internal const long EXPECTED_COLUMN_COUNT = 381;
|
||||
internal const long EXPECTED_INDEX_COUNT = 139;
|
||||
|
||||
//!!!!WARNING: BE SURE TO UPDATE THE DbUtil::EmptyBizDataFromDatabaseForSeedingOrImporting WHEN NEW TABLES ADDED!!!!
|
||||
@@ -685,7 +685,7 @@ $BODY$;
|
||||
|
||||
await ExecQueryAsync("CREATE TABLE anotifysubscription (id BIGINT GENERATED ALWAYS AS IDENTITY PRIMARY KEY, " +
|
||||
"userid bigint not null, ayatype integer, eventtype integer not null, advancenotice interval, " +
|
||||
"idvalue bigint, decvalue decimal(19,4), deliverymethod integer not null, deliveryaddress text, attachreportid bigint, intags varchar(255) ARRAY, outtags varchar(255) ARRAY)");
|
||||
"idvalue bigint, decvalue decimal(19,4), agevalue interval, deliverymethod integer not null, deliveryaddress text, attachreportid bigint, intags varchar(255) ARRAY, outtags varchar(255) ARRAY)");
|
||||
|
||||
await ExecQueryAsync("CREATE TABLE anotifyevent (id BIGINT GENERATED ALWAYS AS IDENTITY PRIMARY KEY, created timestamp not null, " +
|
||||
"ayatype integer, objectid bigint, eventtype integer not null, subscriptionid bigint not null, idvalue bigint, decvalue decimal(19,4), eventdate timestamp, message text)");
|
||||
|
||||
Reference in New Issue
Block a user