protected override void Handle(CreateRoleRequest request, CreateRoleResponse response) { var organization = _organizationRepository.GetByKey(UserContext.OrganizationKey); var role = _roleFactory.Create(organization, request.Name); var roleDto = Mapper.Map <Role, RoleDto>(role); response.Role = roleDto; }
/// <summary> /// Handles the specified request. /// </summary> /// <param name="request">The request.</param> /// <param name="response">The response.</param> protected override void Handle(CreateOrganizationAdminRequest request, CreateOrganizationAdminResponse response) { var systemAccount = _systemAccountRepository.GetByIdentifier(request.Email); var addRole = false; if (systemAccount == null) { var result = _systemAccountIdentityServiceManager.Create(request.Email); if (result.Sucess) { var systemAccountFactory = new SystemAccountFactory(); systemAccount = systemAccountFactory.Create(request.OrganizationKey, request.Email, new Email(request.Email)); var systemAccountDto = Mapper.Map <SystemAccount, SystemAccountDto> (systemAccount); response.SystemAccountDto = systemAccountDto; addRole = true; } else { var dataErrorInfo = new DataErrorInfo(result.ErrorMessage, ErrorLevel.Error); response.SystemAccountDto = new SystemAccountDto(); response.SystemAccountDto.AddDataErrorInfo(dataErrorInfo); } } else { var result = _systemAccountIdentityServiceManager.ResetPassword(systemAccount.Identifier); if (result.Sucess) { var systemAccountDto = Mapper.Map <SystemAccount, SystemAccountDto> (systemAccount); response.SystemAccountDto = systemAccountDto; addRole = true; } else { var dataErrorInfo = new DataErrorInfo(result.ErrorMessage, ErrorLevel.Error); response.SystemAccountDto = new SystemAccountDto(); response.SystemAccountDto.AddDataErrorInfo(dataErrorInfo); } } if (addRole) { var role = _roleFactory.Create("Default Organization Admin", request.OrganizationKey); role.AddPermision(BasicAccessPermission.AccessUserInterfacePermission); role.AddPermision(OrganizationPermission.OrganizationViewPermission); role.AddPermision(OrganizationPermission.OrganizationEditPermission); role.AddPermision(StaffPermission.StaffAddRolePermission); role.AddPermision(StaffPermission.StaffCreateAccountPermission); role.AddPermision(StaffPermission.StaffEditPermission); role.AddPermision(StaffPermission.StaffLinkAccountPermission); role.AddPermision(StaffPermission.StaffRemoveRolePermission); role.AddPermision(StaffPermission.StaffViewPermission); role.AddPermision(RolePermission.RoleAddPermissionPermission); role.AddPermision(RolePermission.RoleEditPermission); role.AddPermision(RolePermission.RoleRemovePermissionPermission); role.AddPermision(RolePermission.RoleViewPermission); systemAccount.AddRole(role.Key); } }
public Role Add(string name, IEnumerable <Guid> systemModuleIds) { var role = _roleFactory.Create(name); _roleRepository.Add(role); AssignSystemModules(role.Id, systemModuleIds); return(role); }
protected override void Handle(CreateOrganizationAdminRequest request, CreateOrganizationAdminResponse response) { var systemAccount = _systemAccountRepository.GetByIdentifier(request.Email); var organization = _organizationRepository.GetByKey(request.OrganizationKey); if (systemAccount == null) { var identityServiceResponse = _systemAccountIdentityServiceManager.Create(request.Username, request.Email); if (identityServiceResponse.Sucess) { systemAccount = _systemAccountFactory.Create(organization, request.Email, new Email(request.Email)); var systemAccountDto = Mapper.Map <SystemAccount, SystemAccountDto>(systemAccount); response.SystemAccountDto = systemAccountDto; var role = _roleFactory.Create(organization, "Default Organization Admin"); role.AddPermision(BasicAccessPermission.AccessUserInterfacePermission); role.AddPermision(OrganizationPermission.OrganizationViewPermission); role.AddPermision(OrganizationPermission.OrganizationEditPermission); role.AddPermision(StaffPermission.StaffAddRolePermission); role.AddPermision(StaffPermission.StaffCreateAccountPermission); role.AddPermision(StaffPermission.StaffEditPermission); role.AddPermision(StaffPermission.StaffLinkAccountPermission); role.AddPermision(StaffPermission.StaffRemoveRolePermission); role.AddPermision(StaffPermission.StaffViewPermission); role.AddPermision(RolePermission.RoleAddPermissionPermission); role.AddPermision(RolePermission.RoleEditPermission); role.AddPermision(RolePermission.RoleRemovePermissionPermission); role.AddPermision(RolePermission.RoleViewPermission); role.AddPermision(PatientPermission.PatientEditPermission); role.AddPermision(PatientPermission.PatientViewPermission); role.AddPermision(AssessmentPermission.AssessmentEditPermission); role.AddPermision(AssessmentPermission.AssessmentViewPermission); role.AddPermision(StaffPermission.ResetPasswordPermission); systemAccount.AddRole(role); } else { var result = identityServiceResponse.ErrorMessage; var dataErrorInfo = new DataErrorInfo(result, ErrorLevel.Error); response.SystemAccountDto = new SystemAccountDto(); response.SystemAccountDto.AddDataErrorInfo(dataErrorInfo); } } else { _systemAccountIdentityServiceManager.ResetPassword(systemAccount.Email.Address); } }
public void Execute() { var systemAccountRepository = IoC.CurrentContainer.Resolve <ISystemAccountRepository> (); var systemAccount = systemAccountRepository.GetByIdentifier(systemAccountIdentifier); if (systemAccount == null) { var systemAdminRole = _roleFactory.Create("System Admin", RoleType.Internal); systemAdminRole.AddPermision(SystemAdministrationPermission.SystemAdminPermission); systemAdminRole.AddPermision(new Permission { Name = "infrastructuremodule/accessuserinterface" }); systemAccount = new SystemAccount(Guid.Empty, systemAccountIdentifier, new Email(systemAccountIdentifier)); systemAccount.AddRole(systemAdminRole.Key); _unitOfWorkProvider.GetCurrentUnitOfWork().Commit(); } }
private Role?Map(RoleRecord?rec) => rec != null?factory.Create(rec.Id, rec.UserId, rec.RoleType, rec.Domain) : null;