public IActionResult UpdateMember(Guid memberId, [FromBody] EditMemberDto memberDto) { if (memberDto == null || memberId != memberDto.Id || !ModelState.IsValid) { return(BadRequest(ModelState)); } var memberExists = _db.Members.Any(x => x.Id == memberId); if (!memberExists) { return(NotFound("عضو یافت نشد.")); } var emailExists = _db.Members.Any(x => x.Id != memberDto.Id && x.Email == memberDto.Email); if (emailExists) { ModelState.AddModelError("Email", "ایمیل قبلا استفاده شده است."); return(StatusCode(409, ModelState)); } var usernameExists = _db.Members.Any(x => x.Id != memberDto.Id && x.Username == memberDto.Username); if (usernameExists) { ModelState.AddModelError("Email", "عنوان قبلا استفاده شده است."); return(StatusCode(409, ModelState)); } var memberTitleExists = _db.Members.Any(x => x.Id != memberDto.Id && x.MemberTitle == memberDto.MemberTitle); if (memberTitleExists) { ModelState.AddModelError("Email", "عنوان قبلا استفاده شده است."); return(StatusCode(409, ModelState)); } var member = _mapper.Map <Member>(memberDto); try { _db.Members.Update(member); _db.SaveChanges(); } catch (Exception ex) { ModelState.AddModelError("", ex.Message); return(StatusCode(500, ModelState)); } return(NoContent()); }
public async Task <IActionResult> EditMemberAsync( [FromRoute] string guildId, EditMemberDto editMemberDto, [FromRoute] ulong id ) { if (editMemberDto.MemberId == null) { editMemberDto.MemberId = id.ToString(); } await _botService.HandleEditMemberAsync( guildId, editMemberDto, await _userManager.GetUserAsync(User) ); return(Ok()); }