Пример #1
0
        /// <inheritdoc />
        public async Task <int> CreateOrEditRoleWorkgroupPermissionsAsync(RoleToWorkroupDto workgroupRole)
        {
            RoleToWorkgroup domainWorkgroupRole = await _permissionRepository
                                                  .GetByRoleAndWorkgroupIds(workgroupRole.RoleId, workgroupRole.WorkgroupId);

            if (domainWorkgroupRole != null)
            {
                return(domainWorkgroupRole.Id);
            }

            RoleToWorkgroup roleToWorkgroup = await _roleRepository
                                              .AddRoleToWorkgroup(workgroupRole.RoleId, workgroupRole.WorkgroupId);

            await _roleRepository.SaveChangesAsync();

            return(roleToWorkgroup.Id);
        }
Пример #2
0
        /// <inheritdoc />
        public async Task <int> CreateRoleAsync(RoleDto roleDto)
        {
            Role domainRole = Mapper.Map <Role>(roleDto);

            domainRole.OwnerId = UserId;
            IdentityResult result = await _identityRoleManager.CreateAsync(domainRole);

            if (!result.Succeeded)
            {
                throw new ValidationException(new ValidationResult(result.Errors.ConvertToValidationResult()));
            }

            RoleToWorkgroup roleToWorkgroup = await _roleRepository
                                              .AddRoleToWorkgroup(domainRole.Id, null);

            await _roleRepository.SaveChangesAsync();

            return(domainRole.Id);
        }