public void Add(string values) { var newAuthorizationModel = new AuthorizationBusinessModel(); JsonConvert.PopulateObject(values, newAuthorizationModel); var newAuthorization = _mapper.Map <Authorization>(newAuthorizationModel); AuthorizationRole newAutRole; foreach (var roleId in newAuthorizationModel.RoleIds) { newAutRole = new AuthorizationRole(); newAutRole.Authorization = newAuthorization; newAutRole.Role = _roleUnitOfWork.RoleRepository.GetById(roleId); newAuthorization.AuthorizationRoles.Add(newAutRole); } _roleUnitOfWork.AuthorizationRepository.Add(newAuthorization); _roleUnitOfWork.Complete(); }
public void Update(int id, string values) { Authorization authorization = _roleUnitOfWork.AuthorizationRepository.GetById(id); AuthorizationBusinessModel authorizationBusinessModel = _mapper.Map <AuthorizationBusinessModel>(authorization); _roleUnitOfWork.AuthorizationRepository.Remove(authorization); var autRoleCollections = _roleUnitOfWork.AuthorizationRoleRepository.GetAuthorizationRolesByAuthorizationId(id); int[] RoleIds = new int[autRoleCollections.Count]; int i = 0; foreach (var autRoleCollection in autRoleCollections) { RoleIds[i] = autRoleCollection.RoleId; _roleUnitOfWork.AuthorizationRoleRepository.Remove(autRoleCollection); i++; } authorizationBusinessModel.RoleIds = RoleIds; JsonConvert.PopulateObject(values, authorizationBusinessModel); var newAuthorization = _mapper.Map <Authorization>(authorizationBusinessModel); if (authorizationBusinessModel.RoleIds != null) { AuthorizationRole autRole; foreach (var autRoleId in authorizationBusinessModel.RoleIds) { autRole = new AuthorizationRole(); autRole.Role = _roleUnitOfWork.RoleRepository.GetById(autRoleId); autRole.Authorization = newAuthorization; newAuthorization.AuthorizationRoles.Add(autRole); } } _roleUnitOfWork.AuthorizationRepository.Add(newAuthorization); _roleUnitOfWork.Complete(); }
private void Init(T context) { SysUser user = context.Set <SysUser>().FirstOrDefault(t => t.UserName == "admin"); if (user == null) { context.Set <SysUser>().AddOrUpdate(t => t.UserName, new SysUser() { UserName = "******", Password = new BaseUtils().BuildPW("admin", "1"), RealName = "管理员", TelNumber = "18895353426", CreateDate = DateTime.Now, IsAccountDisabled = false, }); context.SaveChanges(); user = context.Set <SysUser>().FirstOrDefault(t => t.UserName == "admin"); } //List<Flow> FlowList = context.Set<Flow>().ToList(); //if (FlowList == null || FlowList.Count == 0) //{ // Flow flow = new Flow(); // flow.TableType = TableTypeEnums.切削液浓度点检表; // flow.Name = "填写切削液浓度点检表"; // flow.ParentID = 0; // context.Set<Flow>().AddOrUpdate(t => t.Name, FlowList.ToArray()); // context.SaveChanges(); //} List <Role> RoleList = context.Set <Role>().ToList(); if (RoleList == null || RoleList.Count == 0) { Role Role = new Role(); Role.Name = "操作工"; Role.CreateDate = DateTime.Now; Role.IsDel = false; RoleList.Add(Role); Role = new Role(); Role.Name = "班长"; Role.CreateDate = DateTime.Now; Role.IsDel = false; RoleList.Add(Role); Role = new Role(); Role.Name = "车间主任"; Role.CreateDate = DateTime.Now; Role.IsDel = false; RoleList.Add(Role); Role = new Role(); Role.Name = "生产设备部长"; Role.CreateDate = DateTime.Now; Role.IsDel = false; RoleList.Add(Role); Role = new Role(); Role.Name = "工装管理员"; Role.CreateDate = DateTime.Now; Role.IsDel = false; RoleList.Add(Role); Role = new Role(); Role.Name = "设备修理工"; Role.CreateDate = DateTime.Now; Role.IsDel = false; RoleList.Add(Role); Role = new Role(); Role.Name = "系统管理员"; Role.CreateDate = DateTime.Now; Role.IsDel = false; RoleList.Add(Role); context.Set <Role>().AddOrUpdate(t => t.Name, RoleList.ToArray()); context.SaveChanges(); } List <Authorization> AuthorizationList = context.Set <Authorization>().ToList(); if (AuthorizationList == null || AuthorizationList.Count == 0) { Authorization Authorization = new Authorization(); Authorization.CreateDate = DateTime.Now; Authorization.CreateUserID = user.ID; Authorization.Name = "SysUser"; //Authorization.RoleList = context.Set<Role>().Where(t => t.Name == "系统管理员").ToList(); Authorization.ShowName = "用户管理"; Authorization.Description = "管理用户信息,可添加删除修改用户。"; //Authorization.UserList = new List<SysUser>(); AuthorizationList.Add(Authorization); Authorization = new Authorization(); Authorization.CreateDate = DateTime.Now; Authorization.CreateUserID = user.ID; Authorization.Name = "Role"; //Authorization.RoleList = context.Set<Role>().Where(t => t.Name == "系统管理员").ToList(); Authorization.ShowName = "角色管理"; Authorization.Description = "管理角色信息,可添加删除修改角色。"; //Authorization.UserList = new List<SysUser>(); AuthorizationList.Add(Authorization); Authorization = new Authorization(); Authorization.CreateDate = DateTime.Now; Authorization.CreateUserID = user.ID; Authorization.Name = "BaseData"; //Authorization.RoleList = context.Set<Role>().Where(t => t.Name == "系统管理员" || t.Name == "生产设备部部长" || t.Name == "车间主任").ToList(); Authorization.ShowName = "基础信息设置"; Authorization.Description = "可设置基础信息,包括基础班次,基础时间,字典数据和表单基础信息。"; //Authorization.UserList = new List<SysUser>(); AuthorizationList.Add(Authorization); Authorization = new Authorization(); Authorization.CreateDate = DateTime.Now; Authorization.CreateUserID = user.ID; Authorization.Name = "Authorization"; //Authorization.RoleList = context.Set<Role>().Where(t => t.Name == "系统管理员").ToList(); Authorization.ShowName = "权限管理"; Authorization.Description = "可设置权限对应的角色,也可以给单独的用户添加权限。"; //Authorization.UserList = new List<SysUser>(); AuthorizationList.Add(Authorization); Authorization = new Authorization(); Authorization.CreateDate = DateTime.Now; Authorization.CreateUserID = user.ID; Authorization.Name = "Class"; //Authorization.RoleList = context.Set<Role>().Where(t => t.Name == "系统管理员" || t.Name == "生产设备部部长" || t.Name == "车间主任" || t.Name == "班长").ToList(); Authorization.ShowName = "班次管理"; Authorization.Description = "可添加班次。"; //Authorization.UserList = new List<SysUser>(); AuthorizationList.Add(Authorization); context.Set <Authorization>().AddOrUpdate(t => t.Name, AuthorizationList.ToArray()); context.SaveChanges(); } List <AuthorizationRole> AuthorizationRoleList = context.Set <AuthorizationRole>().ToList(); if (AuthorizationRoleList == null || AuthorizationRoleList.Count == 0) { AuthorizationRole AuthorizationRole = new AuthorizationRole(); AuthorizationRole.AuthorizationID = context.Set <Authorization>().FirstOrDefault(t => t.ShowName == "班次管理").ID; AuthorizationRole.RoleID = context.Set <Role>().FirstOrDefault(t => t.Name == "系统管理员").ID; AuthorizationRoleList.Add(AuthorizationRole); AuthorizationRole = new AuthorizationRole(); AuthorizationRole.AuthorizationID = context.Set <Authorization>().FirstOrDefault(t => t.ShowName == "班次管理").ID; AuthorizationRole.RoleID = context.Set <Role>().FirstOrDefault(t => t.Name == "生产设备部部长").ID; AuthorizationRoleList.Add(AuthorizationRole); AuthorizationRole = new AuthorizationRole(); AuthorizationRole.AuthorizationID = context.Set <Authorization>().FirstOrDefault(t => t.ShowName == "班次管理").ID; AuthorizationRole.RoleID = context.Set <Role>().FirstOrDefault(t => t.Name == "车间主任").ID; AuthorizationRoleList.Add(AuthorizationRole); AuthorizationRole = new AuthorizationRole(); AuthorizationRole.AuthorizationID = context.Set <Authorization>().FirstOrDefault(t => t.ShowName == "班次管理").ID; AuthorizationRole.RoleID = context.Set <Role>().FirstOrDefault(t => t.Name == "班长").ID; AuthorizationRoleList.Add(AuthorizationRole); AuthorizationRole = new AuthorizationRole(); AuthorizationRole.AuthorizationID = context.Set <Authorization>().FirstOrDefault(t => t.ShowName == "用户管理").ID; AuthorizationRole.RoleID = context.Set <Role>().FirstOrDefault(t => t.Name == "系统管理员").ID; AuthorizationRoleList.Add(AuthorizationRole); AuthorizationRole = new AuthorizationRole(); AuthorizationRole.AuthorizationID = context.Set <Authorization>().FirstOrDefault(t => t.ShowName == "角色管理").ID; AuthorizationRole.RoleID = context.Set <Role>().FirstOrDefault(t => t.Name == "系统管理员").ID; AuthorizationRoleList.Add(AuthorizationRole); AuthorizationRole = new AuthorizationRole(); AuthorizationRole.AuthorizationID = context.Set <Authorization>().FirstOrDefault(t => t.ShowName == "基础信息设置").ID; AuthorizationRole.RoleID = context.Set <Role>().FirstOrDefault(t => t.Name == "系统管理员").ID; AuthorizationRoleList.Add(AuthorizationRole); AuthorizationRole = new AuthorizationRole(); AuthorizationRole.AuthorizationID = context.Set <Authorization>().FirstOrDefault(t => t.ShowName == "基础信息设置").ID; AuthorizationRole.RoleID = context.Set <Role>().FirstOrDefault(t => t.Name == "生产设备部部长").ID; AuthorizationRoleList.Add(AuthorizationRole); AuthorizationRole = new AuthorizationRole(); AuthorizationRole.AuthorizationID = context.Set <Authorization>().FirstOrDefault(t => t.ShowName == "基础信息设置").ID; AuthorizationRole.RoleID = context.Set <Role>().FirstOrDefault(t => t.Name == "车间主任").ID; AuthorizationRoleList.Add(AuthorizationRole); AuthorizationRole = new AuthorizationRole(); AuthorizationRole.AuthorizationID = context.Set <Authorization>().FirstOrDefault(t => t.ShowName == "权限管理").ID; AuthorizationRole.RoleID = context.Set <Role>().FirstOrDefault(t => t.Name == "系统管理员").ID; AuthorizationRoleList.Add(AuthorizationRole); context.Set <AuthorizationRole>().AddOrUpdate(t => t.AuthorizationID, AuthorizationRoleList.ToArray()); context.SaveChanges(); } }
public static void InitializeDataBase() { using (var scope = ApplicationContext.Container.BeginLifetimeScope()) { using (var context = scope.Resolve <DbContext>()) { //if ((context.GetService<IDatabaseCreator>() as RelationalDatabaseCreator).Exists()) // return; //context.Database.EnsureDeleted(); //context.Database.EnsureCreated(); var organization = new EntityOrganization() { Name = "Default", CreatedDate = DateTime.Now, ModifiedDate = DateTime.Now }; var adminRole = new AuthorizationRole() { Id = 1, Name = "Administrator", EntityOrganization = organization }; var agentRole = new AuthorizationRole() { Id = 2, Name = "Agent", EntityOrganization = organization }; var advisorRole = new AuthorizationRole() { Id = 3, Name = "Advisor", EntityOrganization = organization }; var workflowRole = new AuthorizationRole() { Id = 4, Name = "Workflow", EntityOrganization = organization }; var authorizationGroupA = new AuthorizationGroup() { Id = 1, Name = "Group A", EntityOrganization = organization }; var authorizationGroupB = new AuthorizationGroup() { Id = 2, Name = "Group B", EntityOrganization = organization }; var applicationUser = new ApplicationUser() { Name = "Default", Email = "*****@*****.**", Password = "******", CreatedDate = DateTime.Now, ModifiedDate = DateTime.Now }; var workflowUser = new ApplicationUser() { Name = "Workflow", Email = "*****@*****.**", Password = "******", CreatedDate = DateTime.Now, ModifiedDate = DateTime.Now }; var currentAdvisor = new CurrentAdvisor() { Id = 1, Description = "Advisor A", EntityOrganization = organization }; var gender = new Gender() { Id = 1, Description = "Male", EntityOrganization = organization }; var occupation = new Occupation() { Id = 1, Description = "Unemployed", EntityOrganization = organization }; var addressType = new AddressType() { Id = 1, Description = "Complex", EntityOrganization = organization }; var phonecallActivityType = new LeadScheduledActivityType() { Id = 1, Description = "Phone Call", EntityOrganization = organization }; var meetingActivityType = new LeadScheduledActivityType() { Id = 2, Description = "Meeting", EntityOrganization = organization }; applicationUser.AddEntityOrganization(organization); applicationUser.ActiveEntityOrganizationId = 1; applicationUser.AddAuthorizationGroup(authorizationGroupA); applicationUser.AuthorizationRole = adminRole; context.Add(organization); context.Add(applicationUser); context.Add(workflowUser); context.Add(currentAdvisor); context.Add(gender); context.Add(occupation); context.Add(addressType); context.Add(phonecallActivityType); context.Add(meetingActivityType); context.Add(authorizationGroupA); context.Add(authorizationGroupB); context.Add(agentRole); context.Add(advisorRole); context.Add(workflowRole); context.SaveChanges(); } } }
public void CloneSourceVersionToNewVersion(SubdomainVersion subdomainVersion) { var sourceId = (int)subdomainVersion.SourceVersionId; var sourceVersionCards = _drcUnitOfWork.DrcCardRepository.getAllCardsBySubdomainVersion(sourceId); IList <SourceNewDrcCardMap> sourceNewDrcCardMaps = new List <SourceNewDrcCardMap>(); foreach (var sourceVersionCard in sourceVersionCards) { SourceNewDrcCardMap sourceNewDrcCardMap = new SourceNewDrcCardMap(); sourceNewDrcCardMap.SourceCardId = sourceVersionCard.Id; DrcCard newDrcCard = new DrcCard(); newDrcCard = sourceVersionCard; newDrcCard.Id = 0; newDrcCard.SubdomainVersionId = 0; newDrcCard.SubdomainVersion = subdomainVersion; _drcUnitOfWork.DrcCardRepository.Add(newDrcCard); _drcUnitOfWork.Complete(); sourceNewDrcCardMap.NewCardId = newDrcCard.Id; sourceNewDrcCardMaps.Add(sourceNewDrcCardMap); } foreach (var sourceNewDrcCardMap in sourceNewDrcCardMaps) { var newDrcCard = _drcUnitOfWork.DrcCardRepository.GetById(sourceNewDrcCardMap.NewCardId); var sourceCardResponsibilities = _drcUnitOfWork.DrcCardResponsibilityRepository.GetDrcCardResponsibilitiesByDrcCardId( sourceNewDrcCardMap.SourceCardId); foreach (var sourceDrcCardResponsibility in sourceCardResponsibilities) { Responsibility newResponsibility = new Responsibility(); newResponsibility = _drcUnitOfWork.ResponsibilityRepository.GetByIdWithoutTracking(sourceDrcCardResponsibility .ResponsibilityId); var sourceResponsibilityCollaborations = _drcUnitOfWork.DrcCardResponsibilityRepository.GetResponsibilityCollaborationsByResponsibilityId(newResponsibility.Id); newResponsibility.Id = 0; _drcUnitOfWork.ResponsibilityRepository.Add(newResponsibility); DrcCardResponsibility newDrcCardResponsibility = new DrcCardResponsibility(); newDrcCardResponsibility.DrcCard = newDrcCard; newDrcCardResponsibility.Responsibility = newResponsibility; newDrcCardResponsibility.IsRelationCollaboration = false; _drcUnitOfWork.DrcCardResponsibilityRepository.Add(newDrcCardResponsibility); foreach (var sourceResponsibilityCollaboration in sourceResponsibilityCollaborations) { int newDrcCardId = sourceNewDrcCardMaps .Where(c => c.SourceCardId == sourceResponsibilityCollaboration.DrcCardId) .Select(c => c.NewCardId).Single(); DrcCardResponsibility newResponsibilityCollaboration = new DrcCardResponsibility(); newResponsibilityCollaboration.DrcCardId = newDrcCardId; newResponsibilityCollaboration.Responsibility = newResponsibility; newResponsibilityCollaboration.IsRelationCollaboration = sourceResponsibilityCollaboration.IsRelationCollaboration; _drcUnitOfWork.DrcCardResponsibilityRepository.Add(newResponsibilityCollaboration); _drcUnitOfWork.Complete(); } _drcUnitOfWork.Complete(); } var sourceCardFields = _drcUnitOfWork.DrcCardFieldRepository .GetDrcCardFieldsByDrcCardId(sourceNewDrcCardMap.SourceCardId); foreach (var sourceCardField in sourceCardFields) { Field newField = new Field(); newField = _drcUnitOfWork.FieldRepository.GetByIdWithoutTracking(sourceCardField.FieldId); var sourceFieldCollaboration = _drcUnitOfWork.DrcCardFieldRepository.GetFieldCollaborationByFieldId(newField.Id); newField.Id = 0; _drcUnitOfWork.FieldRepository.Add(newField); DrcCardField newDrcCardField = new DrcCardField(); newDrcCardField.DrcCard = newDrcCard; newDrcCardField.Field = newField; newDrcCardField.IsRelationCollaboration = false; _drcUnitOfWork.DrcCardFieldRepository.Add(newDrcCardField); if (sourceFieldCollaboration != null) { int newCollaborationDrcCardId = sourceNewDrcCardMaps .Where(c => c.SourceCardId == sourceFieldCollaboration.DrcCardId) .Select(c => c.NewCardId).Single(); DrcCardField newDrcCardFieldCollaboration = new DrcCardField(); newDrcCardFieldCollaboration.DrcCardId = newCollaborationDrcCardId; newDrcCardFieldCollaboration.Field = newField; newDrcCardFieldCollaboration.IsRelationCollaboration = true; _drcUnitOfWork.DrcCardFieldRepository.Add(newDrcCardFieldCollaboration); _drcUnitOfWork.Complete(); } _drcUnitOfWork.Complete(); } var sourceCardAuthorizations = _drcUnitOfWork.AuthorizationRepository.GetAuthorizationsByDrcCardId(sourceNewDrcCardMap.SourceCardId); foreach (var sourceCardAuthorization in sourceCardAuthorizations) { Authorization newAuthorization = new Authorization(); newAuthorization = _drcUnitOfWork.AuthorizationRepository.GetByIdWithoutTracking(sourceCardAuthorization.Id); var oldAuthorizationRoles = _drcUnitOfWork.AuthorizationRoleRepository.GetAuthorizationRolesByAuthorizationId(newAuthorization.Id); newAuthorization.Id = 0; newAuthorization.DrcCardId = 0; newAuthorization.DrcCard = newDrcCard; _drcUnitOfWork.AuthorizationRepository.Add(newAuthorization); foreach (var oldAuthorizationRole in oldAuthorizationRoles) { AuthorizationRole authorizationRole = new AuthorizationRole(); authorizationRole.AuthorizationId = newAuthorization.Id; authorizationRole.RoleId = oldAuthorizationRole.RoleId; _drcUnitOfWork.AuthorizationRoleRepository.Add(authorizationRole); _drcUnitOfWork.Complete(); } } _drcUnitOfWork.Complete(); } }
public AuthorizationScope(AuthorizationRole role, AuthorizationPermission permission) { Role = role; Permission = permission; }
internal static void InitializeDataBase() { using (var scope = ApplicationContext.Container.BeginLifetimeScope("ExecutionPipeline")) { using (var context = scope.Resolve <DbContext>()) { //context.Database.EnsureDeleted(); if ((context.GetService <IDatabaseCreator>() as RelationalDatabaseCreator).Exists()) { return; } context.Database.EnsureDeleted(); context.Database.EnsureCreated(); //context.Database.Migrate(); var organization = new EntityOrganization() { Name = "Default", CreatedDate = DateTime.Now, ModifiedDate = DateTime.Now }; var adminRole = new AuthorizationRole() { Id = 1, Name = "Administrator", EntityOrganization = organization }; var agentRole = new AuthorizationRole() { Id = 2, Name = "Agent", EntityOrganization = organization }; var advisoryRole = new AuthorizationRole() { Id = 3, Name = "Advisor", EntityOrganization = organization }; var workflowRole = new AuthorizationRole() { Id = 4, Name = "Workflow", EntityOrganization = organization }; var applicationUser = new ApplicationUser() { Name = "Default", Email = "*****@*****.**", Password = "******", CreatedDate = DateTime.Now, ModifiedDate = DateTime.Now }; var workflowUser = new ApplicationUser() { Name = "Workflow", Email = "*****@*****.**", Password = "******", CreatedDate = DateTime.Now, ModifiedDate = DateTime.Now }; var schedulerFlowUser = new ApplicationUser() { Name = "Scheduler", Email = "*****@*****.**", Password = "******", CreatedDate = DateTime.Now, ModifiedDate = DateTime.Now }; var currentAdviser = new CurrentAdvisor() { Id = 1, Description = "Advisor A", EntityOrganization = organization }; var gender = new Gender() { Id = 1, Description = "Male", EntityOrganization = organization }; var occupation = new Occupation() { Id = 1, Description = "Unemployed", EntityOrganization = organization }; var addressType = new AddressType() { Id = 1, Description = "Complex", EntityOrganization = organization }; var phoneCallActivityType = new LeadScheduledActivityType() { Id = 1, Description = "Phone Call", EntityOrganization = organization }; var meetingActivityType = new LeadScheduledActivityType() { Id = 2, Description = "Meeting", EntityOrganization = organization }; var authorizationGroupA = new AuthorizationGroup() { Id = 1, Name = "Group A", EntityOrganization = organization }; var authorizationGroupB = new AuthorizationGroup() { Id = 2, Name = "Group B", EntityOrganization = organization }; var portfolioTransactionTypeOpen = new PortfolioTransactionType() { Id = 1, Description = "Open", }; var portfolioTransactionTypeClose = new PortfolioTransactionType() { Id = 2, Description = "Close", }; var portfolioShareA = new PortfolioShare() { Description = "ABC short", Code = "ABC" }; var portfolioShareB = new PortfolioShare() { Description = "XYZ short", Code = "XXZ" }; context.Add(portfolioTransactionTypeClose); context.Add(portfolioTransactionTypeOpen); var portfolios = new List <Portfolio>() { new Portfolio() { OpenDate = DateTime.Now, Name = "Test A" }, new Portfolio() { OpenDate = DateTime.Now, Name = "Test B" }, new Portfolio() { OpenDate = DateTime.Now, Name = "Test C" }, new Portfolio() { OpenDate = DateTime.Now, Name = "Test D" }, }; foreach (var portfolio in portfolios) { var summaryDate = DateTime.Now; for (int i = 0; i < 10; i++) { var summary = new PortfolioTransactionsSummary() { CloseAmount = (decimal) new Random(i).NextDouble() * ((decimal) new Random(i).NextDouble() * 10), OpenAmount = (decimal) new Random(i).NextDouble() * ((decimal) new Random(i).NextDouble() * 10), CloseDate = summaryDate, OpenDate = summaryDate.AddDays(-30), Portfolio = portfolio }; context.Add(summary); summaryDate = summaryDate.AddDays(-30); } var transactionDate = DateTime.Now; for (int i = 0; i < 10; i++) { var transaction = new PortfolioTransaction() { Total = (decimal) new Random(i).NextDouble() * 10, Price = (decimal) new Random(i).NextDouble() * ((decimal) new Random(i).NextDouble() * 10), Quantity = Math.Abs(new Random(i).Next()), Date = transactionDate, Portfolio = portfolio, PortfolioShare = portfolioShareA, PortfolioTransactionType = portfolioTransactionTypeClose }; context.Add(transaction); transactionDate = transactionDate.AddDays(-1); } context.Add(portfolio); } applicationUser.AddEntityOrganization(organization); applicationUser.ActiveEntityOrganizationId = 1; applicationUser.AddAuthorizationGroup(authorizationGroupA); applicationUser.AuthorizationRole = adminRole; context.Add(organization); context.Add(adminRole); context.Add(advisoryRole); context.Add(agentRole); context.Add(workflowRole); context.Add(applicationUser); context.Add(workflowUser); context.Add(schedulerFlowUser); context.Add(currentAdviser); context.Add(gender); context.Add(occupation); context.Add(addressType); context.Add(phoneCallActivityType); context.Add(meetingActivityType); context.Add(authorizationGroupA); //context.Add(authorizationGroupB); for (int i = 0; i < 1000; i++) { var user = new ApplicationUser() { Name = "Default", Email = $"testB@test{i}.com", Password = "******", CreatedDate = DateTime.Now, ModifiedDate = DateTime.Now }; user.AddEntityOrganization(organization); user.ActiveEntityOrganizationId = 1; user.AddAuthorizationGroup(authorizationGroupA); user.AuthorizationRole = adminRole; context.Add(user); } context.SaveChanges(); } } }
public static void InitializeDataBase() { using (var scope = ApplicationContext.Container.BeginLifetimeScope()) { using (var context = scope.Resolve <DbContext>()) { //if ((context.GetService<IDatabaseCreator>() as RelationalDatabaseCreator).Exists()) // return; //context.Database.EnsureDeleted(); //context.Database.EnsureCreated(); var organization = new EntityOrganization() { Name = "Default", CreatedDate = DateTime.Now, ModifiedDate = DateTime.Now }; var adminRole = new AuthorizationRole() { Id = 1, Name = "Administrator", EntityOrganization = organization }; var agentRole = new AuthorizationRole() { Id = 2, Name = "Agent", EntityOrganization = organization }; var advisorRole = new AuthorizationRole() { Id = 3, Name = "Advisor", EntityOrganization = organization }; var workflowRole = new AuthorizationRole() { Id = 4, Name = "Workflow", EntityOrganization = organization }; var authorizationGroupA = new AuthorizationGroup() { Id = 1, Name = "Group A", EntityOrganization = organization }; var authorizationGroupB = new AuthorizationGroup() { Id = 2, Name = "Group B", EntityOrganization = organization }; var applicationUser = new ApplicationUser() { Name = "Default", Email = "*****@*****.**", Password = "******", CreatedDate = DateTime.Now, ModifiedDate = DateTime.Now }; var workflowUser = new ApplicationUser() { Name = "Workflow", Email = "*****@*****.**", Password = "******", CreatedDate = DateTime.Now, ModifiedDate = DateTime.Now }; applicationUser.AddEntityOrganization(organization); applicationUser.ActiveEntityOrganizationId = 1; applicationUser.AddAuthorizationGroup(authorizationGroupA); applicationUser.AuthorizationRole = adminRole; context.Add(organization); context.Add(applicationUser); context.Add(workflowUser); context.Add(authorizationGroupA); context.Add(authorizationGroupB); context.Add(agentRole); context.Add(advisorRole); context.Add(workflowRole); context.SaveChanges(); } } }
//////////////////////////////////////////////////////////////////////////////////////////////////// /// <summary> /// IsAuthorized determines whether the User possesses the required authorization role(s). /// </summary> /// /// <param name="role"> The role that needs to be evaluated. </param> /// /// <returns> /// Returns the value associated with the role, which is true or false. If it is not found false /// is returned. /// </returns> //////////////////////////////////////////////////////////////////////////////////////////////////// public bool IsAuthorized(AuthorizationRole role) => _roles.ContainsKey(role) && _roles[role];