From 17f96e811f2bf36379f9121c56fceb2a9f4b0d6d Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Mon, 11 May 2020 15:43:13 +0000 Subject: [PATCH] --- .../AyaNova/biz/BizObjectExistsInDatabase.cs | 2 + server/AyaNova/biz/BizObjectFactory.cs | 13 +++- server/AyaNova/biz/BizRoles.cs | 67 +++++++++++++++---- 3 files changed, 69 insertions(+), 13 deletions(-) diff --git a/server/AyaNova/biz/BizObjectExistsInDatabase.cs b/server/AyaNova/biz/BizObjectExistsInDatabase.cs index 416d0328..bf68bd59 100644 --- a/server/AyaNova/biz/BizObjectExistsInDatabase.cs +++ b/server/AyaNova/biz/BizObjectExistsInDatabase.cs @@ -78,6 +78,7 @@ namespace AyaNova.Biz return await ct.UnitModel.AnyAsync(m => m.Id == id); case AyaType.Vendor: return await ct.Vendor.AnyAsync(m => m.Id == id); + //--- WorkOrder case AyaType.WorkOrder: return await ct.WorkOrder.AnyAsync(m => m.Id == id); case AyaType.WorkOrderItem: @@ -100,6 +101,7 @@ namespace AyaNova.Biz return await ct.WorkOrderItemTravel.AnyAsync(m => m.Id == id); case AyaType.WorkOrderItemUnit: return await ct.WorkOrderItemUnit.AnyAsync(m => m.Id == id); + //--- case AyaType.WorkOrderTemplate: return await ct.WorkOrderTemplate.AnyAsync(m => m.Id == id); case AyaType.WorkOrderTemplateItem: diff --git a/server/AyaNova/biz/BizObjectFactory.cs b/server/AyaNova/biz/BizObjectFactory.cs index aac59c9d..85840591 100644 --- a/server/AyaNova/biz/BizObjectFactory.cs +++ b/server/AyaNova/biz/BizObjectFactory.cs @@ -74,12 +74,23 @@ namespace AyaNova.Biz return new UnitModelBiz(dbcontext, userId, ServerBootConfig.AYANOVA_DEFAULT_TRANSLATION_ID, roles); case AyaType.Vendor: return new VendorBiz(dbcontext, userId, ServerBootConfig.AYANOVA_DEFAULT_TRANSLATION_ID, roles); + //--- WorkOrder case AyaType.WorkOrder: + case AyaType.WorkOrderItem: + case AyaType.WorkOrderItemExpense: + case AyaType.WorkOrderItemLabor: + case AyaType.WorkOrderItemLoan: + case AyaType.WorkOrderItemPart: + case AyaType.WorkOrderItemPartRequest: + case AyaType.WorkOrderItemScheduledUser: + case AyaType.WorkOrderItemTask: + case AyaType.WorkOrderItemTravel: + case AyaType.WorkOrderItemUnit: return new WorkOrderBiz(dbcontext, userId, ServerBootConfig.AYANOVA_DEFAULT_TRANSLATION_ID, roles); + //--- case AyaType.WorkOrderTemplate: return new WorkOrderTemplateBiz(dbcontext, userId, ServerBootConfig.AYANOVA_DEFAULT_TRANSLATION_ID, roles); - default: throw new System.NotSupportedException($"AyaNova.BLL.BizObjectFactory::GetBizObject type {aytype.ToString()} is not supported"); } diff --git a/server/AyaNova/biz/BizRoles.cs b/server/AyaNova/biz/BizRoles.cs index d990fbe1..0b7164a9 100644 --- a/server/AyaNova/biz/BizRoles.cs +++ b/server/AyaNova/biz/BizRoles.cs @@ -217,6 +217,7 @@ namespace AyaNova.Biz Select = AuthorizationRoles.All }); + //////////////////////////////////////////////////////////// //WorkOrder // @@ -226,36 +227,78 @@ namespace AyaNova.Biz ReadFullRecord = AuthorizationRoles.BizAdminLimited | AuthorizationRoles.DispatchLimited | AuthorizationRoles.SalesLimited | AuthorizationRoles.TechLimited, Select = AuthorizationRoles.All }); - - //////////////////////////////////////////////////////////// - //WorkOrderItem - // + roles.Add(AyaType.WorkOrderItem, new BizRoleSet() { Change = AuthorizationRoles.BizAdminFull | AuthorizationRoles.DispatchFull | AuthorizationRoles.SalesFull | AuthorizationRoles.TechFull | AuthorizationRoles.AccountingFull, ReadFullRecord = AuthorizationRoles.BizAdminLimited | AuthorizationRoles.DispatchLimited | AuthorizationRoles.SalesLimited | AuthorizationRoles.TechLimited, Select = AuthorizationRoles.All }); - - //////////////////////////////////////////////////////////// - //WorkOrderItemLabor - // + + roles.Add(AyaType.WorkOrderItemExpense, new BizRoleSet() + { + Change = AuthorizationRoles.BizAdminFull | AuthorizationRoles.DispatchFull | AuthorizationRoles.SalesFull | AuthorizationRoles.TechFull | AuthorizationRoles.AccountingFull, + ReadFullRecord = AuthorizationRoles.BizAdminLimited | AuthorizationRoles.DispatchLimited | AuthorizationRoles.SalesLimited | AuthorizationRoles.TechLimited, + Select = AuthorizationRoles.All + }); + roles.Add(AyaType.WorkOrderItemLabor, new BizRoleSet() { Change = AuthorizationRoles.BizAdminFull | AuthorizationRoles.DispatchFull | AuthorizationRoles.SalesFull | AuthorizationRoles.TechFull | AuthorizationRoles.AccountingFull, ReadFullRecord = AuthorizationRoles.BizAdminLimited | AuthorizationRoles.DispatchLimited | AuthorizationRoles.SalesLimited | AuthorizationRoles.TechLimited, Select = AuthorizationRoles.All }); - - //////////////////////////////////////////////////////////// - //WorkOrderItemPart - // + + roles.Add(AyaType.WorkOrderItemLoan, new BizRoleSet() + { + Change = AuthorizationRoles.BizAdminFull | AuthorizationRoles.DispatchFull | AuthorizationRoles.SalesFull | AuthorizationRoles.TechFull | AuthorizationRoles.AccountingFull, + ReadFullRecord = AuthorizationRoles.BizAdminLimited | AuthorizationRoles.DispatchLimited | AuthorizationRoles.SalesLimited | AuthorizationRoles.TechLimited, + Select = AuthorizationRoles.All + }); + roles.Add(AyaType.WorkOrderItemPart, new BizRoleSet() { Change = AuthorizationRoles.BizAdminFull | AuthorizationRoles.DispatchFull | AuthorizationRoles.SalesFull | AuthorizationRoles.TechFull | AuthorizationRoles.AccountingFull, ReadFullRecord = AuthorizationRoles.BizAdminLimited | AuthorizationRoles.DispatchLimited | AuthorizationRoles.SalesLimited | AuthorizationRoles.TechLimited, Select = AuthorizationRoles.All }); + + roles.Add(AyaType.WorkOrderItemPartRequest, new BizRoleSet() + { + Change = AuthorizationRoles.BizAdminFull | AuthorizationRoles.DispatchFull | AuthorizationRoles.SalesFull | AuthorizationRoles.TechFull | AuthorizationRoles.AccountingFull, + ReadFullRecord = AuthorizationRoles.BizAdminLimited | AuthorizationRoles.DispatchLimited | AuthorizationRoles.SalesLimited | AuthorizationRoles.TechLimited, + Select = AuthorizationRoles.All + }); + + roles.Add(AyaType.WorkOrderItemScheduledUser, new BizRoleSet() + { + Change = AuthorizationRoles.BizAdminFull | AuthorizationRoles.DispatchFull | AuthorizationRoles.SalesFull | AuthorizationRoles.TechFull | AuthorizationRoles.AccountingFull, + ReadFullRecord = AuthorizationRoles.BizAdminLimited | AuthorizationRoles.DispatchLimited | AuthorizationRoles.SalesLimited | AuthorizationRoles.TechLimited, + Select = AuthorizationRoles.All + }); + + roles.Add(AyaType.WorkOrderItemTask, new BizRoleSet() + { + Change = AuthorizationRoles.BizAdminFull | AuthorizationRoles.DispatchFull | AuthorizationRoles.SalesFull | AuthorizationRoles.TechFull | AuthorizationRoles.AccountingFull, + ReadFullRecord = AuthorizationRoles.BizAdminLimited | AuthorizationRoles.DispatchLimited | AuthorizationRoles.SalesLimited | AuthorizationRoles.TechLimited, + Select = AuthorizationRoles.All + }); + + roles.Add(AyaType.WorkOrderItemTravel, new BizRoleSet() + { + Change = AuthorizationRoles.BizAdminFull | AuthorizationRoles.DispatchFull | AuthorizationRoles.SalesFull | AuthorizationRoles.TechFull | AuthorizationRoles.AccountingFull, + ReadFullRecord = AuthorizationRoles.BizAdminLimited | AuthorizationRoles.DispatchLimited | AuthorizationRoles.SalesLimited | AuthorizationRoles.TechLimited, + Select = AuthorizationRoles.All + }); + + roles.Add(AyaType.WorkOrderItemUnit, new BizRoleSet() + { + Change = AuthorizationRoles.BizAdminFull | AuthorizationRoles.DispatchFull | AuthorizationRoles.SalesFull | AuthorizationRoles.TechFull | AuthorizationRoles.AccountingFull, + ReadFullRecord = AuthorizationRoles.BizAdminLimited | AuthorizationRoles.DispatchLimited | AuthorizationRoles.SalesLimited | AuthorizationRoles.TechLimited, + Select = AuthorizationRoles.All + }); + //--- + //////////////////////////////////////////////////////////// //WorkOrderTemplate