public async Task <ApiResponse <CustomRoleVm> > UpdateRole([FromBody] CustomRoleVm customRoleVm) { var dbResponse = await repository.CustomRoles.UpdateAsync(customRoleVm); if (dbResponse.Success) { var roleVm = new CustomRoleVm(dbResponse.Response); var allAppRoles = roleManager.Roles.ToList(); var roleAppRolesIds = customRoleVm.AppRoles.Where(x => x.IsSelected).Select(x => x.Id).ToList(); roleVm.AppRoles.AddRange(allAppRoles.Select(x => new AppRoleVm { Id = x.Id, Name = x.Name, DisplayName = x.DisplayName, IsSelected = roleAppRolesIds.Contains(x.Id) }).OrderBy(x => x.DisplayName)); return(new ApiResponse <CustomRoleVm> { Response = roleVm, Message = dbResponse.Message }); } return(new ApiResponse <CustomRoleVm> { ErrorMessage = dbResponse.ErrorMessage }); }
public async Task <ApiResponse <CustomRoleVm> > AddRole([FromBody] CustomRoleVm customRoleVm) { var dbResult = await repository.CustomRoles.Add(customRoleVm); if (dbResult.Success) { var customRole = new CustomRoleVm(dbResult.Response); var appRolesIds = customRoleVm.AppRoles.Where(x => x.IsSelected).Select(x => x.Id).ToList(); var allAppRoles = roleManager.Roles.ToList(); customRole.AppRoles.AddRange(allAppRoles.Select(x => new AppRoleVm { Id = x.Id, DisplayName = x.DisplayName, IsSelected = appRolesIds.Contains(x.Id) }).OrderBy(x => x.DisplayName)); return(new ApiResponse <CustomRoleVm> { Message = dbResult.Message, Response = customRole }); } return(new ApiResponse <CustomRoleVm> { ErrorMessage = dbResult.ErrorMessage }); }