diff --git a/server/AyaNova/Controllers/EnumListController.cs b/server/AyaNova/Controllers/EnumListController.cs
index 8bb1fe66..db0f7720 100644
--- a/server/AyaNova/Controllers/EnumListController.cs
+++ b/server/AyaNova/Controllers/EnumListController.cs
@@ -48,7 +48,7 @@ namespace AyaNova.Api.Controllers
/// The key name of the enumerated type
/// List
[HttpGet("list/{enumkey}")]
- public ActionResult GetList([FromRoute]string enumkey)
+ public ActionResult GetList([FromRoute] string enumkey)
{
if (serverState.IsClosed)
return StatusCode(503, new ApiErrorResponse(serverState.ApiErrorCode, null, serverState.Reason));
@@ -148,10 +148,45 @@ namespace AyaNova.Api.Controllers
ReturnList.Add(new NameIdItem() { Name = LT["UserTypeUtility"], Id = (long)UserType.Utility });
ReturnList.Add(new NameIdItem() { Name = LT["UserTypeServiceContractor"], Id = (long)UserType.ServiceContractor });
}
+ else if (keyNameInLowerCase == StringUtil.TrimTypeName(typeof(AyaEvent).ToString()).ToLowerInvariant())
+ {
+ TranslationKeysToFetch.Add("EventDeleted");
+ TranslationKeysToFetch.Add("EventCreated");
+ TranslationKeysToFetch.Add("EventRetrieved");
+ TranslationKeysToFetch.Add("EventModified");
+ TranslationKeysToFetch.Add("EventAttachmentCreate");
+ TranslationKeysToFetch.Add("EventAttachmentDelete");
+ TranslationKeysToFetch.Add("EventAttachmentDownload");
+ TranslationKeysToFetch.Add("EventLicenseFetch");
+ TranslationKeysToFetch.Add("EventLicenseTrialRequest");
+ TranslationKeysToFetch.Add("EventServerStateChange");
+ TranslationKeysToFetch.Add("EventSeedDatabase");
+ TranslationKeysToFetch.Add("EventAttachmentModified");
+ TranslationKeysToFetch.Add("AdminEraseDatabase");
+ TranslationKeysToFetch.Add("EventResetSerial");
+ TranslationKeysToFetch.Add("EventUtilityFileDownload");
+ var LT = TranslationBiz.GetSubsetStaticAsync(TranslationKeysToFetch, TranslationId).Result;
+
+ ReturnList.Add(new NameIdItem() { Name = LT["EventDeleted"], Id = (long)AyaEvent.Deleted });
+ ReturnList.Add(new NameIdItem() { Name = LT["EventCreated"], Id = (long)AyaEvent.Created });
+ ReturnList.Add(new NameIdItem() { Name = LT["EventRetrieved"], Id = (long)AyaEvent.Retrieved });
+ ReturnList.Add(new NameIdItem() { Name = LT["EventModified"], Id = (long)AyaEvent.Modified });
+ ReturnList.Add(new NameIdItem() { Name = LT["EventAttachmentCreate"], Id = (long)AyaEvent.AttachmentCreate });
+ ReturnList.Add(new NameIdItem() { Name = LT["EventAttachmentDelete"], Id = (long)AyaEvent.AttachmentDelete });
+ ReturnList.Add(new NameIdItem() { Name = LT["EventAttachmentDownload"], Id = (long)AyaEvent.AttachmentDownload });
+ ReturnList.Add(new NameIdItem() { Name = LT["EventLicenseFetch"], Id = (long)AyaEvent.LicenseFetch });
+ ReturnList.Add(new NameIdItem() { Name = LT["EventLicenseTrialRequest"], Id = (long)AyaEvent.LicenseTrialRequest });
+ ReturnList.Add(new NameIdItem() { Name = LT["EventServerStateChange"], Id = (long)AyaEvent.ServerStateChange });
+ ReturnList.Add(new NameIdItem() { Name = LT["EventSeedDatabase"], Id = (long)AyaEvent.SeedDatabase });
+ ReturnList.Add(new NameIdItem() { Name = LT["EventAttachmentModified"], Id = (long)AyaEvent.AttachmentModified });
+ ReturnList.Add(new NameIdItem() { Name = LT["AdminEraseDatabase"], Id = (long)AyaEvent.EraseAllData });
+ ReturnList.Add(new NameIdItem() { Name = LT["EventResetSerial"], Id = (long)AyaEvent.ResetSerial });
+ ReturnList.Add(new NameIdItem() { Name = LT["EventUtilityFileDownload"], Id = (long)AyaEvent.UtilityFileDownload });
+ }
else if (keyNameInLowerCase == StringUtil.TrimTypeName(typeof(AuthorizationRoles).ToString()).ToLowerInvariant())
{
- // TranslationKeysToFetch.Add("AuthorizationRoleNoRole");
+ // TranslationKeysToFetch.Add("AuthorizationRoleNoRole");
TranslationKeysToFetch.Add("AuthorizationRoleBizAdminLimited");
TranslationKeysToFetch.Add("AuthorizationRoleBizAdminFull");
TranslationKeysToFetch.Add("AuthorizationRoleDispatchLimited");
@@ -169,10 +204,10 @@ namespace AyaNova.Api.Controllers
TranslationKeysToFetch.Add("AuthorizationRoleOpsAdminFull");
TranslationKeysToFetch.Add("AuthorizationRoleSalesLimited");
TranslationKeysToFetch.Add("AuthorizationRoleSalesFull");
- // TranslationKeysToFetch.Add("AuthorizationRoleAll");
+ // TranslationKeysToFetch.Add("AuthorizationRoleAll");
var LT = TranslationBiz.GetSubsetStaticAsync(TranslationKeysToFetch, TranslationId).Result;
- // ReturnList.Add(new NameIdItem() { Name = LT["AuthorizationRoleNoRole"], Id = (long)AuthorizationRoles.NoRole });
+ // ReturnList.Add(new NameIdItem() { Name = LT["AuthorizationRoleNoRole"], Id = (long)AuthorizationRoles.NoRole });
ReturnList.Add(new NameIdItem() { Name = LT["AuthorizationRoleBizAdminLimited"], Id = (long)AuthorizationRoles.BizAdminLimited });
ReturnList.Add(new NameIdItem() { Name = LT["AuthorizationRoleBizAdminFull"], Id = (long)AuthorizationRoles.BizAdminFull });
ReturnList.Add(new NameIdItem() { Name = LT["AuthorizationRoleDispatchLimited"], Id = (long)AuthorizationRoles.DispatchLimited });
@@ -190,7 +225,7 @@ namespace AyaNova.Api.Controllers
ReturnList.Add(new NameIdItem() { Name = LT["AuthorizationRoleOpsAdminFull"], Id = (long)AuthorizationRoles.OpsAdminFull });
ReturnList.Add(new NameIdItem() { Name = LT["AuthorizationRoleSalesLimited"], Id = (long)AuthorizationRoles.SalesLimited });
ReturnList.Add(new NameIdItem() { Name = LT["AuthorizationRoleSalesFull"], Id = (long)AuthorizationRoles.SalesFull });
- // ReturnList.Add(new NameIdItem() { Name = LT["AuthorizationRoleAll"], Id = (long)AuthorizationRoles.All });
+ // ReturnList.Add(new NameIdItem() { Name = LT["AuthorizationRoleAll"], Id = (long)AuthorizationRoles.All });
}
else
diff --git a/server/AyaNova/util/Seeder.cs b/server/AyaNova/util/Seeder.cs
index 041b801d..309f9359 100644
--- a/server/AyaNova/util/Seeder.cs
+++ b/server/AyaNova/util/Seeder.cs
@@ -25,22 +25,22 @@ namespace AyaNova.Util
public static class Level
{
- public enum SeedLevel { NotValid, SmallOneManShopTrialDataSet, MediumLocalServiceCompanyTrialDataSet, LargeCorporateMultiRegionalTrialDataSet, HugeForLoadTest };
+ public enum SeedLevel { NotValid, Small, Medium, Large, Huge };
public static SeedLevel StringToSeedLevel(string size)
{
switch (size.ToLowerInvariant())
{
case "small":
- return SeedLevel.SmallOneManShopTrialDataSet;
+ return SeedLevel.Small;
case "medium":
- return SeedLevel.MediumLocalServiceCompanyTrialDataSet;
+ return SeedLevel.Medium;
case "large":
- return SeedLevel.LargeCorporateMultiRegionalTrialDataSet;
+ return SeedLevel.Large;
case "huge":
- return SeedLevel.HugeForLoadTest;
+ return SeedLevel.Huge;
default:
return SeedLevel.NotValid;
@@ -73,7 +73,8 @@ namespace AyaNova.Util
try
{
- await LogStatusAsync(JobId, LogJob, log, $"Seeding data, level {slevel.ToString()}, time zone offset {timeZoneOffset.ToString()}");
+ var StatusMsg = $"Seeding data, level {slevel.ToString()}, time zone offset {timeZoneOffset.ToString()}";
+ await LogStatusAsync(JobId, LogJob, log, StatusMsg);
//Only allow this in a trial database
if (!AyaNova.Core.License.ActiveKey.TrialLicense)
@@ -95,6 +96,14 @@ namespace AyaNova.Util
apiServerState.SetOpsOnly("Seeding database");
//Erase all the data except for the license, schema and the SuperUser
await DbUtil.EmptyBizDataFromDatabaseForSeedingOrImportingAsync(log);
+ //Event log erase and seeding
+ using (var ct = ServiceProviderProvider.DBContext)
+ {
+ await EventLogProcessor.LogEventToDatabaseAsync(new Event(1, 0, AyaType.Global, AyaEvent.EraseAllData, "(seeding preparation)"), ct);
+ await EventLogProcessor.LogEventToDatabaseAsync(new Event(1, 0, AyaType.Global, AyaEvent.SeedDatabase, StatusMsg), ct);
+ }
+
+
apiServerState.SetOpsOnly("Seeding database with sample data");
@@ -193,7 +202,7 @@ namespace AyaNova.Util
//log.LogInformation("Seeding all other data");
switch (slevel)
{
- case Level.SeedLevel.SmallOneManShopTrialDataSet:
+ case Level.SeedLevel.Small:
{
#region GenSmall
//This is for a busy but one man shop with a single office person handling stuff back at the shop
@@ -222,7 +231,7 @@ namespace AyaNova.Util
#endregion gensmall
}
break;
- case Level.SeedLevel.MediumLocalServiceCompanyTrialDataSet:
+ case Level.SeedLevel.Medium:
{
#region GenMedium
//This is for a typical AyaNova medium busy shop
@@ -284,7 +293,7 @@ namespace AyaNova.Util
#endregion genmedium
}
break;
- case Level.SeedLevel.LargeCorporateMultiRegionalTrialDataSet:
+ case Level.SeedLevel.Large:
{
#region GenLarge
//this is a large corporation with multiple branches in multiple locations all in the same country
@@ -361,7 +370,7 @@ namespace AyaNova.Util
}
break;
- case Level.SeedLevel.HugeForLoadTest:
+ case Level.SeedLevel.Huge:
{
#region GenHuge
//this is the HUGE dataset for load and other testing