public async Task <IActionResult> UpsertRole([FromBody] UpsertRoleCmd request) { try { var result = await _service.UpsertRole(request); return(Ok(result)); } catch (BusinessLogicException ex) { return(BadRequest(new Response { Status = false, Message = ex.Message })); } catch (Exception e) { return(BadRequest(new Response { Status = false, Message = ErrorMessages.UnkownError //e.Message })); } }
public async Task <Response> UpsertRole(UpsertRoleCmd request) { ///// var existItem = await _roleManager.FindByNameAsync(request.Name); if (existItem != null) { throw new BusinessLogicException(".این رکورد از قبل موجود می باشد"); } ///// if (!string.IsNullOrEmpty(request.Id)) { var role = await _roleManager.FindByIdAsync(request.Id); if (role == null) { throw new BusinessLogicException("خطای ناشناخته ای رخ داده است"); } role.Name = request.Name; var result = await _roleManager.UpdateAsync(role); if (!result.Succeeded) { throw new BusinessLogicException("ویرایش با شکست مواجه گردید"); } } else { var role = new ApplicationRole(); var existingRole = await _roleManager.FindByNameAsync(request.Name); if (existingRole != null) { throw new BusinessLogicException("این رول از قبل ثبت گردیده است"); } role.Id = Guid.NewGuid().ToString(); role.Name = request.Name; var result = await _roleManager.CreateAsync(role); if (!result.Succeeded) { throw new BusinessLogicException("خطایی صورت گرفته است"); } } return(new Response { Status = true, Message = "success" }); }