public IActionResult Update([FromBody] SupplierUpdateDto supplierUpdateDto) { var oldSupplier = _supplierService.GetByIdAsync(supplierUpdateDto.Id).Result; var supplierUpdate = _mapper.Map <SupplierUpdateDto, Supplier>(supplierUpdateDto, oldSupplier.Data); var result = _supplierService.Update(supplierUpdate); if (result.ResultStatus == ResultStatus.Error) { return(BadRequest(new ErrorDto { Message = ApiResultMessages.ResultMessage(false), ResultStatus = result.ResultStatus })); } return(Ok(new SupplierDto { Supplier = result.Data, Message = ApiResultMessages.ResultMessage(true), ResultStatus = result.ResultStatus })); }
public async Task <IActionResult> UpdateAsync(int?id, [FromBody] SupplierUpdateDto updateDto) { if (id == null || id.Value != updateDto.Id) { return(BadRequest(new { Error = "Invalid supplier id." })); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var supplier = await _unitOfWork.SupplierRepository.GetByIdAsync(id.Value); if (supplier == null) { return(BadRequest(new { Error = $"Supplier with id {id.Value} cannot be found." })); } var currentUser = await _userManager.GetUserAsync(HttpContext.User); supplier.Name = updateDto.Name; supplier.UpdateUserId = currentUser?.Id; supplier.UpdateDate = DateTime.Now; await _unitOfWork.CompleteAsync(); var dto = _mapper.Map <SupplierDto>(supplier); return(Ok(dto)); }