コード例 #1
0
        public async Task <IActionResult> UpdateOneAsync(
            [FromRoute] int id,
            [FromBody] UpdatePublicationDto updatePublicationDto
            )
        {
            var item = await _publicationService.UpdateOneByIdAsync(id, updatePublicationDto);

            return(Ok(item));
        }
コード例 #2
0
        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));
        }
コード例 #3
0
 public async Task Update(UpdatePublicationDto input)
 {
     var @publication = input.MapTo <Publication>();
     //@publication.TenantId = AbpSession.GetTenantId();
     await _publicationRepository.UpdateAsync(@publication);
 }