public async Task <IActionResult> UpdateAsync(int id, [FromBody] UpdateRolesResource resource) { if (!ModelState.IsValid) { return(BadRequest(ModelState.GetErrorMessages())); } var result = await _RolesService.UpdateAsync(id, resource); if (!result.Success) { return(BadRequest(result.Message)); } return(Ok(new { msg = "更新成功" })); }
public async Task <SaveRolesResponse> UpdateAsync(int id, UpdateRolesResource resource) { try { var existingRoles = await _RolesRepository.ReadOneAsync(id); if (existingRoles == null) { return(new SaveRolesResponse("Category not found.")); } var RolePermissions = await _RolePermissionsRepository.ReadAllAsync(existingRoles.role); existingRoles.role = resource.role; existingRoles.update_time = resource.update_time; existingRoles.update_user_id = resource.update_user_id; await _RolesRepository.UpdateAsync(existingRoles); await _RolePermissionsRepository.DeleteAsync(RolePermissions); List <RolePermissionsModels> NewRolePermissions = new List <RolePermissionsModels>(); for (int i = 0; i < resource.permission_id.Length; i++) { NewRolePermissions.Add(new RolePermissionsModels() { role_id = id, permission_id = resource.permission_id[i], create_user_id = resource.update_user_id, update_user_id = resource.update_user_id, create_time = DateTime.Now, update_time = DateTime.Now }); } await _RolePermissionsRepository.CreateAsync(NewRolePermissions); return(new SaveRolesResponse(true)); } catch (Exception ex) { // Do some logging stuff return(new SaveRolesResponse($"An error occurred when updating the category: {ex.Message}")); } }