diff --git a/devdocs/todo.txt b/devdocs/todo.txt index 34e94909..c019e041 100644 --- a/devdocs/todo.txt +++ b/devdocs/todo.txt @@ -5,6 +5,8 @@ ## IMMEDIATE ITEMS +TODO: BizRoles.cs seems to get hammered on every single request, is it efficient? + - Why is it not cached in some way? TODO: HOw is it that I'm able to login and view widgets while the server is seeding? - shouldn't it be locked out for any non-ops actions? diff --git a/docs/8.0/ayanova/docs/form-ay-sort-filter.md b/docs/8.0/ayanova/docs/form-ay-data-list-view.md similarity index 100% rename from docs/8.0/ayanova/docs/form-ay-sort-filter.md rename to docs/8.0/ayanova/docs/form-ay-data-list-view.md diff --git a/docs/8.0/ayanova/mkdocs.yml b/docs/8.0/ayanova/mkdocs.yml index b8688370..14278556 100644 --- a/docs/8.0/ayanova/mkdocs.yml +++ b/docs/8.0/ayanova/mkdocs.yml @@ -71,7 +71,7 @@ nav: - 'Review': 'form-ay-review.md' - 'History': 'form-ay-history.md' - 'Customize': 'form-ay-customize.md' - - 'Sort & filter': 'form-ay-sort-filter.md' + - 'Data list view': 'form-ay-data-list-view.md' - 'Log': 'form-ay-log.md' - Customer: - 'Workorders': 'form-customer-workorders.md' diff --git a/server/AyaNova/biz/BizObjectExistsInDatabase.cs b/server/AyaNova/biz/BizObjectExistsInDatabase.cs index d89efcbf..f0457bad 100644 --- a/server/AyaNova/biz/BizObjectExistsInDatabase.cs +++ b/server/AyaNova/biz/BizObjectExistsInDatabase.cs @@ -37,7 +37,7 @@ namespace AyaNova.Biz case AyaType.FileAttachment: return await ct.FileAttachment.AnyAsync(m => m.Id == id); case AyaType.DataListView: - return await ct.DataListSortFilter.AnyAsync(m => m.Id == id); + return await ct.DataListView.AnyAsync(m => m.Id == id); case AyaType.FormCustom: return await ct.FormCustom.AnyAsync(m => m.Id == id); diff --git a/server/AyaNova/biz/BizRoles.cs b/server/AyaNova/biz/BizRoles.cs index 9198053c..ffbbd104 100644 --- a/server/AyaNova/biz/BizRoles.cs +++ b/server/AyaNova/biz/BizRoles.cs @@ -171,7 +171,7 @@ namespace AyaNova.Biz //ONGOING VALIDATION TO CATCH MISMATCH WHEN NEW ROLES ADDED (wont' catch changes to existing unfortunately) //var lastRoles = "{\"User\":{\"Change\":2,\"ReadFullRecord\":1},\"UserOptions\":{\"Change\":2,\"ReadFullRecord\":1},\"Widget\":{\"Change\":34,\"ReadFullRecord\":17},\"ServerState\":{\"Change\":16384,\"ReadFullRecord\":32767},\"License\":{\"Change\":16386,\"ReadFullRecord\":8193},\"LogFile\":{\"Change\":0,\"ReadFullRecord\":24576},\"JobOperations\":{\"Change\":16384,\"ReadFullRecord\":8195},\"AyaNova7Import\":{\"Change\":16384,\"ReadFullRecord\":0},\"Metrics\":{\"Change\":0,\"ReadFullRecord\":24576},\"Locale\":{\"Change\":16386,\"ReadFullRecord\":32767},\"DataListFilter\":{\"Change\":2,\"ReadFullRecord\":32767},\"FormCustom\":{\"Change\":2,\"ReadFullRecord\":32767}}"; - var lastRoles = "{\"User\":{\"Change\":2,\"ReadFullRecord\":1},\"UserOptions\":{\"Change\":2,\"ReadFullRecord\":1},\"Widget\":{\"Change\":34,\"ReadFullRecord\":17},\"ServerState\":{\"Change\":16384,\"ReadFullRecord\":131071},\"License\":{\"Change\":16386,\"ReadFullRecord\":8193},\"LogFile\":{\"Change\":0,\"ReadFullRecord\":24576},\"JobOperations\":{\"Change\":16384,\"ReadFullRecord\":8195},\"AyaNova7Import\":{\"Change\":16384,\"ReadFullRecord\":0},\"Metrics\":{\"Change\":0,\"ReadFullRecord\":24576},\"Locale\":{\"Change\":16386,\"ReadFullRecord\":131071},\"DataListSortFilter\":{\"Change\":2,\"ReadFullRecord\":131071},\"FormCustom\":{\"Change\":2,\"ReadFullRecord\":131071}}"; + var lastRoles = "{\"User\":{\"Change\":2,\"ReadFullRecord\":1},\"UserOptions\":{\"Change\":2,\"ReadFullRecord\":1},\"Widget\":{\"Change\":34,\"ReadFullRecord\":17},\"ServerState\":{\"Change\":16384,\"ReadFullRecord\":131071},\"License\":{\"Change\":16386,\"ReadFullRecord\":8193},\"LogFile\":{\"Change\":0,\"ReadFullRecord\":24576},\"JobOperations\":{\"Change\":16384,\"ReadFullRecord\":8195},\"AyaNova7Import\":{\"Change\":16384,\"ReadFullRecord\":0},\"Metrics\":{\"Change\":0,\"ReadFullRecord\":24576},\"Locale\":{\"Change\":16386,\"ReadFullRecord\":131071},\"DataListView\":{\"Change\":2,\"ReadFullRecord\":131071},\"FormCustom\":{\"Change\":2,\"ReadFullRecord\":131071}}"; Dictionary lastRolesDeserialized = Newtonsoft.Json.JsonConvert.DeserializeObject>(lastRoles); if (lastRolesDeserialized.Count != roles.Count) { diff --git a/server/AyaNova/biz/DataListViewBiz.cs b/server/AyaNova/biz/DataListViewBiz.cs index 69e65400..60423b87 100644 --- a/server/AyaNova/biz/DataListViewBiz.cs +++ b/server/AyaNova/biz/DataListViewBiz.cs @@ -40,7 +40,7 @@ namespace AyaNova.Biz //EXISTS internal async Task ExistsAsync(long id) { - return await ct.DataListSortFilter.AnyAsync(e => e.Id == id); + return await ct.DataListView.AnyAsync(e => e.Id == id); } @@ -59,7 +59,7 @@ namespace AyaNova.Biz outObj.UserId = UserId; - await ct.DataListSortFilter.AddAsync(outObj); + await ct.DataListView.AddAsync(outObj); await ct.SaveChangesAsync(); //Handle child and associated items: @@ -84,7 +84,7 @@ namespace AyaNova.Biz internal async Task GetAsync(long fetchId, bool logTheGetEvent = true) { //This is simple so nothing more here, but often will be copying to a different output object or some other ops - var ret = await ct.DataListSortFilter.SingleOrDefaultAsync(m => m.Id == fetchId && (m.Public == true || m.UserId == UserId)); + var ret = await ct.DataListView.SingleOrDefaultAsync(m => m.Id == fetchId && (m.Public == true || m.UserId == UserId)); if (logTheGetEvent && ret != null) { //Log @@ -102,7 +102,7 @@ namespace AyaNova.Biz List items = new List(); if (!string.IsNullOrWhiteSpace(listKey)) { - items = await ct.DataListSortFilter + items = await ct.DataListView .AsNoTracking() .Where(m => m.ListKey == listKey && (m.Public == true || m.UserId == UserId)) .OrderBy(m => m.Name) @@ -164,7 +164,7 @@ namespace AyaNova.Biz if (HasErrors) return false; - ct.DataListSortFilter.Remove(dbObj); + ct.DataListView.Remove(dbObj); await ct.SaveChangesAsync(); //Delete sibling objects @@ -209,7 +209,7 @@ namespace AyaNova.Biz if (!PropertyHasErrors("Name")) { //Use Any command is efficient way to check existance, it doesn't return the record, just a true or false - if (await ct.DataListSortFilter.AnyAsync(m => m.Name == inObj.Name && m.Id != inObj.Id)) + if (await ct.DataListView.AnyAsync(m => m.Name == inObj.Name && m.Id != inObj.Id)) { AddError(ApiErrorCode.VALIDATION_NOT_UNIQUE, "Name"); } diff --git a/server/AyaNova/models/AyContext.cs b/server/AyaNova/models/AyContext.cs index 93989453..6abc21e2 100644 --- a/server/AyaNova/models/AyContext.cs +++ b/server/AyaNova/models/AyContext.cs @@ -17,7 +17,7 @@ namespace AyaNova.Models public virtual DbSet OpsJobLog { get; set; } public virtual DbSet Locale { get; set; } public virtual DbSet LocaleItem { get; set; } - public virtual DbSet DataListSortFilter { get; set; } + public virtual DbSet DataListView { get; set; } public virtual DbSet Tag { get; set; } public virtual DbSet FormCustom { get; set; } diff --git a/server/AyaNova/resource/de.json b/server/AyaNova/resource/de.json index 2b9f438b..c955b41f 100644 --- a/server/AyaNova/resource/de.json +++ b/server/AyaNova/resource/de.json @@ -1612,5 +1612,5 @@ "NotificationSettings": "Benachrichtigungseinstellungen", "Review": "Überprüfung", "UserSettings": "Benutzereinstellungen", - "DataListSortFilter": "Sortieren und Filtern" + "DataListView": "Datenlistenansicht" } diff --git a/server/AyaNova/resource/en.json b/server/AyaNova/resource/en.json index 967677d8..149bd9ad 100644 --- a/server/AyaNova/resource/en.json +++ b/server/AyaNova/resource/en.json @@ -1611,7 +1611,7 @@ "NotificationSettings": "Notification settings", "Review": "Review", "UserSettings": "User settings", - "DataListSortFilter": "Sort & filter" + "DataListView": "Data list view" diff --git a/server/AyaNova/resource/es.json b/server/AyaNova/resource/es.json index 8baefd40..bcf2a969 100644 --- a/server/AyaNova/resource/es.json +++ b/server/AyaNova/resource/es.json @@ -1612,7 +1612,7 @@ "NotificationSettings": "Configuración de notificaciones", "Review": "Revisión", "UserSettings": "Configuración de usuario", - "DataListSortFilter": "Ordenar y filtrar" + "DataListView": "Vista de lista de datos" } \ No newline at end of file diff --git a/server/AyaNova/resource/fr.json b/server/AyaNova/resource/fr.json index ee097bf2..8616b7f8 100644 --- a/server/AyaNova/resource/fr.json +++ b/server/AyaNova/resource/fr.json @@ -1611,7 +1611,7 @@ "NotificationSettings": "Paramètres de notification", "Review": "Évaluation", "UserSettings": "Paramètres utilisateur", - "DataListSortFilter": "Trier et filtrer" + "DataListView": "Affichage de la liste des données" }