public async Task <IActionResult> UpdateOneAsync( [FromRoute] int id, [FromBody] UpdatePublicationDto updatePublicationDto ) { var item = await _publicationService.UpdateOneByIdAsync(id, updatePublicationDto); return(Ok(item)); }
public async Task <PublicationResponseObject> UpdateOneByIdAsync(int id, UpdatePublicationDto t) { var found = await _publicationsRepository.FindOneByIdAsync(id); if (found == null) { throw new HttpResponseException(HttpStatusCode.NotFound, $"User with id {id} was not found"); } // Validations if (!IsDescriptionValid(t.Description)) { throw new HttpResponseException(HttpStatusCode.BadRequest, "Description is not valid"); } if (!IsStockValid(t.Stock)) { throw new HttpResponseException(HttpStatusCode.BadRequest, "Stock is invalid"); } if (!IsPricePerUnitValid(t.PricePerUnit)) { throw new HttpResponseException(HttpStatusCode.BadRequest, "PricePerUnit is invalid"); } // if (!AreDatesValid(t.StartDate, t.EndDate)) // throw new HttpResponseException(HttpStatusCode.BadRequest, "Dates are invalid"); if (!IsImageUrlValid(t.ImageUrl)) { throw new HttpResponseException(HttpStatusCode.BadRequest, "ImageUrl is invalid"); } var updateEntity = t.ToEntity(); updateEntity.Id = id; updateEntity.UserId = found.UserId; updateEntity.UpdatedAt = DateTime.Now; await _publicationsRepository.UpdateOneAsync(updateEntity); var entity = await _publicationsRepository.FindOneByIdAsync(id); return(PublicationResponseObject.FromEntity(entity)); }
public async Task Update(UpdatePublicationDto input) { var @publication = input.MapTo <Publication>(); //@publication.TenantId = AbpSession.GetTenantId(); await _publicationRepository.UpdateAsync(@publication); }