This commit is contained in:
2019-06-18 00:10:49 +00:00
parent c4c11c51d8
commit fd34a4f53a
10 changed files with 28 additions and 14 deletions

View File

@@ -100,6 +100,7 @@ namespace AyaNova.Api.Controllers
LocaleKeysToFetch.Add("AuthorizationRoleClientFull"); LocaleKeysToFetch.Add("AuthorizationRoleClientFull");
LocaleKeysToFetch.Add("AuthorizationRoleOpsAdminLimited"); LocaleKeysToFetch.Add("AuthorizationRoleOpsAdminLimited");
LocaleKeysToFetch.Add("AuthorizationRoleOpsAdminFull"); LocaleKeysToFetch.Add("AuthorizationRoleOpsAdminFull");
LocaleKeysToFetch.Add("AuthorizationRoleAll");
var LT = LocaleBiz.GetSubsetStatic(LocaleKeysToFetch, LocaleId).Result; var LT = LocaleBiz.GetSubsetStatic(LocaleKeysToFetch, LocaleId).Result;
ReturnList.Add(new NameIdItem() { Name = LT["AuthorizationRoleNoRole"], Id = (long)AuthorizationRoles.NoRole }); ReturnList.Add(new NameIdItem() { Name = LT["AuthorizationRoleNoRole"], Id = (long)AuthorizationRoles.NoRole });
@@ -118,6 +119,7 @@ namespace AyaNova.Api.Controllers
ReturnList.Add(new NameIdItem() { Name = LT["AuthorizationRoleClientFull"], Id = (long)AuthorizationRoles.ClientFull }); ReturnList.Add(new NameIdItem() { Name = LT["AuthorizationRoleClientFull"], Id = (long)AuthorizationRoles.ClientFull });
ReturnList.Add(new NameIdItem() { Name = LT["AuthorizationRoleOpsAdminLimited"], Id = (long)AuthorizationRoles.OpsAdminLimited }); ReturnList.Add(new NameIdItem() { Name = LT["AuthorizationRoleOpsAdminLimited"], Id = (long)AuthorizationRoles.OpsAdminLimited });
ReturnList.Add(new NameIdItem() { Name = LT["AuthorizationRoleOpsAdminFull"], Id = (long)AuthorizationRoles.OpsAdminFull }); ReturnList.Add(new NameIdItem() { Name = LT["AuthorizationRoleOpsAdminFull"], Id = (long)AuthorizationRoles.OpsAdminFull });
ReturnList.Add(new NameIdItem() { Name = LT["AuthorizationRoleAll"], Id = (long)AuthorizationRoles.All });
} }
break; break;

View File

@@ -46,7 +46,7 @@ namespace AyaNova.Biz
OpsAdminFull = 16384, OpsAdminFull = 16384,
///<summary>Anyone of any role</summary> ///<summary>Anyone of any role</summary>
AnyRole = BizAdminLimited | BizAdminFull | DispatchLimited | DispatchFull | InventoryLimited | All = BizAdminLimited | BizAdminFull | DispatchLimited | DispatchFull | InventoryLimited |
InventoryFull | AccountingFull | TechLimited | TechFull | SubContractorLimited | InventoryFull | AccountingFull | TechLimited | TechFull | SubContractorLimited |
SubContractorFull | ClientLimited | ClientFull | OpsAdminLimited | OpsAdminFull SubContractorFull | ClientLimited | ClientFull | OpsAdminLimited | OpsAdminFull

View File

@@ -19,7 +19,7 @@ namespace AyaNova.Biz
//Returns the biz object class that corresponds to the type presented //Returns the biz object class that corresponds to the type presented
internal static BizObject GetBizObject(AyaType aytype, AyContext dbcontext, long userId = 1, AuthorizationRoles roles = AuthorizationRoles.AnyRole) internal static BizObject GetBizObject(AyaType aytype, AyContext dbcontext, long userId = 1, AuthorizationRoles roles = AuthorizationRoles.All)
{ {
switch (aytype) switch (aytype)
{ {

View File

@@ -67,7 +67,7 @@ namespace AyaNova.Biz
roles.Add(AyaType.ServerState, new BizRoleSet() roles.Add(AyaType.ServerState, new BizRoleSet()
{ {
Change = AuthorizationRoles.OpsAdminFull, Change = AuthorizationRoles.OpsAdminFull,
ReadFullRecord = AuthorizationRoles.AnyRole ReadFullRecord = AuthorizationRoles.All
}); });
@@ -128,7 +128,7 @@ namespace AyaNova.Biz
roles.Add(AyaType.Locale, new BizRoleSet() roles.Add(AyaType.Locale, new BizRoleSet()
{ {
Change = AuthorizationRoles.BizAdminFull | AuthorizationRoles.OpsAdminFull, Change = AuthorizationRoles.BizAdminFull | AuthorizationRoles.OpsAdminFull,
ReadFullRecord = AuthorizationRoles.AnyRole ReadFullRecord = AuthorizationRoles.All
}); });
@@ -138,7 +138,7 @@ namespace AyaNova.Biz
roles.Add(AyaType.DataFilter, new BizRoleSet() roles.Add(AyaType.DataFilter, new BizRoleSet()
{ {
Change = AuthorizationRoles.BizAdminFull, Change = AuthorizationRoles.BizAdminFull,
ReadFullRecord = AuthorizationRoles.AnyRole ReadFullRecord = AuthorizationRoles.All
}); });
//////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////
@@ -148,7 +148,7 @@ namespace AyaNova.Biz
{ {
//Only BizAdminFull can modify forms //Only BizAdminFull can modify forms
Change = AuthorizationRoles.BizAdminFull, Change = AuthorizationRoles.BizAdminFull,
ReadFullRecord = AuthorizationRoles.AnyRole ReadFullRecord = AuthorizationRoles.All
}); });
//////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////

View File

@@ -26,7 +26,7 @@ namespace AyaNova.Biz
u.Salt = Hasher.GenerateSalt(); u.Salt = Hasher.GenerateSalt();
u.Login = "manager"; u.Login = "manager";
u.Password = Hasher.hash(u.Salt, "l3tm3in"); u.Password = Hasher.hash(u.Salt, "l3tm3in");
u.Roles = AuthorizationRoles.AnyRole;//AuthorizationRoles.BizAdminFull | AuthorizationRoles.OpsAdminFull | AuthorizationRoles.DispatchFull | AuthorizationRoles.InventoryFull; u.Roles = AuthorizationRoles.All;//AuthorizationRoles.BizAdminFull | AuthorizationRoles.OpsAdminFull | AuthorizationRoles.DispatchFull | AuthorizationRoles.InventoryFull;
u.LocaleId = ServerBootConfig.AYANOVA_DEFAULT_LANGUAGE_ID;//Ensure primeLocales is called first u.LocaleId = ServerBootConfig.AYANOVA_DEFAULT_LANGUAGE_ID;//Ensure primeLocales is called first
u.UserType = UserType.Administrator; u.UserType = UserType.Administrator;

View File

@@ -1548,6 +1548,7 @@
"AuthorizationRoleClientFull":"Client-Benutzer - unbeschränkt", "AuthorizationRoleClientFull":"Client-Benutzer - unbeschränkt",
"AuthorizationRoleOpsAdminLimited":"Systemvorgänge - beschränkt", "AuthorizationRoleOpsAdminLimited":"Systemvorgänge - beschränkt",
"AuthorizationRoleOpsAdminFull":"Systemvorgänge - unbeschränkt", "AuthorizationRoleOpsAdminFull":"Systemvorgänge - unbeschränkt",
"AuthorizationRoleAll":"Alle rollen",
"Welcome":"Willkommen in AyaNova", "Welcome":"Willkommen in AyaNova",
"ErrorFieldValueNotInteger": "Der Wert muss eine ganze Zahl sein", "ErrorFieldValueNotInteger": "Der Wert muss eine ganze Zahl sein",
"ErrorFieldValueNotDecimal": "Wert muss eine Zahl sein", "ErrorFieldValueNotDecimal": "Wert muss eine Zahl sein",

View File

@@ -1547,6 +1547,7 @@
"AuthorizationRoleClientFull":"Client user - full", "AuthorizationRoleClientFull":"Client user - full",
"AuthorizationRoleOpsAdminLimited":"System operations - limited", "AuthorizationRoleOpsAdminLimited":"System operations - limited",
"AuthorizationRoleOpsAdminFull":"System operations - full", "AuthorizationRoleOpsAdminFull":"System operations - full",
"AuthorizationRoleAll":"All roles",
"Welcome":"Welcome to AyaNova", "Welcome":"Welcome to AyaNova",
"ErrorFieldValueNotInteger": "Value must be an integer", "ErrorFieldValueNotInteger": "Value must be an integer",
"ErrorFieldValueNotDecimal": "Value must be a number", "ErrorFieldValueNotDecimal": "Value must be a number",

View File

@@ -1548,6 +1548,7 @@
"AuthorizationRoleClientFull":"Usuario cliente - completo", "AuthorizationRoleClientFull":"Usuario cliente - completo",
"AuthorizationRoleOpsAdminLimited":"Operaciones del sistema - limitada", "AuthorizationRoleOpsAdminLimited":"Operaciones del sistema - limitada",
"AuthorizationRoleOpsAdminFull":"Operaciones del sistema - completo", "AuthorizationRoleOpsAdminFull":"Operaciones del sistema - completo",
"AuthorizationRoleAll":"Todos los roles",
"Welcome":"Bienvenido a AyaNova", "Welcome":"Bienvenido a AyaNova",
"ErrorFieldValueNotInteger": "El valor debe ser un entero", "ErrorFieldValueNotInteger": "El valor debe ser un entero",
"ErrorFieldValueNotDecimal": "El valor debe ser un número", "ErrorFieldValueNotDecimal": "El valor debe ser un número",

View File

@@ -1547,6 +1547,7 @@
"AuthorizationRoleClientFull": "Client utilisateur - complète", "AuthorizationRoleClientFull": "Client utilisateur - complète",
"AuthorizationRoleOpsAdminLimited": "Opérations du système - limited", "AuthorizationRoleOpsAdminLimited": "Opérations du système - limited",
"AuthorizationRoleOpsAdminFull": "Opérations du système - complète", "AuthorizationRoleOpsAdminFull": "Opérations du système - complète",
"AuthorizationRoleAll":"Tous les rôles",
"Welcome": "Bienvenue chez AyaNova", "Welcome": "Bienvenue chez AyaNova",
"ErrorFieldValueNotInteger": "La valeur doit être un entier", "ErrorFieldValueNotInteger": "La valeur doit être un entier",
"ErrorFieldValueNotDecimal": "La valeur doit être un nombre", "ErrorFieldValueNotDecimal": "La valeur doit être un nombre",

View File

@@ -360,9 +360,9 @@ namespace AyaNova.Util
GenSeedUser(log, 1, AuthorizationRoles.OpsAdminLimited, UserType.NonSchedulable, timeZoneOffset, false, "TEST_INACTIVE", "TEST_INACTIVE"); GenSeedUser(log, 1, AuthorizationRoles.OpsAdminLimited, UserType.NonSchedulable, timeZoneOffset, false, "TEST_INACTIVE", "TEST_INACTIVE");
//Alternate locale users for each stock locale //Alternate locale users for each stock locale
GenSeedUser(log, 1, AuthorizationRoles.AnyRole, UserType.Administrator, timeZoneOffset, true, "de", "de", LocaleBiz.LocaleNameToIdStatic("de")); GenSeedUser(log, 1, AuthorizationRoles.All, UserType.Administrator, timeZoneOffset, true, "de", "de", LocaleBiz.LocaleNameToIdStatic("de"));
GenSeedUser(log, 1, AuthorizationRoles.AnyRole, UserType.Administrator, timeZoneOffset, true, "es", "es", LocaleBiz.LocaleNameToIdStatic("es")); GenSeedUser(log, 1, AuthorizationRoles.All, UserType.Administrator, timeZoneOffset, true, "es", "es", LocaleBiz.LocaleNameToIdStatic("es"));
GenSeedUser(log, 1, AuthorizationRoles.AnyRole, UserType.Administrator, timeZoneOffset, true, "fr", "fr", LocaleBiz.LocaleNameToIdStatic("fr")); GenSeedUser(log, 1, AuthorizationRoles.All, UserType.Administrator, timeZoneOffset, true, "fr", "fr", LocaleBiz.LocaleNameToIdStatic("fr"));
} }
@@ -414,7 +414,7 @@ namespace AyaNova.Util
{ {
User u = new User(); User u = new User();
u.Active = active; u.Active = active;
var p = new Bogus.Person(); var p = new Bogus.Person();
u.Name = Uniquify(p.FullName); u.Name = Uniquify(p.FullName);
if (login != null) if (login != null)
@@ -455,6 +455,13 @@ namespace AyaNova.Util
{ {
WidgetBiz Biz = WidgetBiz.GetBizInternal(ServiceProviderProvider.DBContext); WidgetBiz Biz = WidgetBiz.GetBizInternal(ServiceProviderProvider.DBContext);
var f = new Bogus.Faker(); var f = new Bogus.Faker();
//RANDOM ROLES
Array values = Enum.GetValues(typeof(AuthorizationRoles));
Random random = new Random();
for (int x = 0; x < count; x++) for (int x = 0; x < count; x++)
{ {
Widget o = new Widget(); Widget o = new Widget();
@@ -462,9 +469,10 @@ namespace AyaNova.Util
o.Active = true; o.Active = true;
o.StartDate = f.Date.Between(DateTime.Now, DateTime.Now.AddMinutes(60)); o.StartDate = f.Date.Between(DateTime.Now, DateTime.Now.AddMinutes(60));
o.EndDate = f.Date.Between(DateTime.Now.AddMinutes(90), DateTime.Now.AddHours(5)); o.EndDate = f.Date.Between(DateTime.Now.AddMinutes(90), DateTime.Now.AddHours(5));
o.DollarAmount = Convert.ToDecimal(f.Commerce.Price()); o.DollarAmount = Convert.ToDecimal(f.Commerce.Price());
//this is nonsense but just to test an enum //Random but valid enum
o.Roles = AuthorizationRoles.DispatchLimited | AuthorizationRoles.InventoryLimited | AuthorizationRoles.OpsAdminLimited; AuthorizationRoles randomRole = (AuthorizationRoles)values.GetValue(random.Next(values.Length));
o.Roles = randomRole;
o.Notes = f.Lorem.Paragraph(); o.Notes = f.Lorem.Paragraph();
o.Tags = RandomTags(f); o.Tags = RandomTags(f);
var NewObject = Biz.Create(ServiceProviderProvider.DBContext, o); var NewObject = Biz.Create(ServiceProviderProvider.DBContext, o);