Esempio n. 1
0
        public async Task <IActionResult> DeleteAsync(Guid id)
        {
            //TODO: Can be done using cascade delete or this needs a transaction but for now will do
            await _productOptionsRepository.DeleteAsync(po => po.ProductId == id);

            await _productRepository.DeleteAsync(new Product { Id = id });

            return(Accepted());
        }
 public async Task <int> DeleteProductOptionAsync(Guid productId, Guid id)
 {
     if (await _repository.GetByIdAsync(productId, id) == null)
     {
         throw new NotFoundException(Constants.Constants.ProductOptionNotFound, HttpStatusCode.NotFound.ToString());
     }
     return(await _repository.DeleteAsync(productId, id));
 }
Esempio n. 3
0
        public async Task DeleteAsync(Guid id)
        {
            var deleteResult = await _productOptionRepository.DeleteAsync(id);

            if (deleteResult == 0)
            {
                throw new ProductOptionNotFoundException(id);
            }
        }
        public async Task <HttpResponseMessage> DeleteOption(Guid id)
        {
            var current = await productOptionRepository.GetByIdAsync(id);

            if (current == null)
            {
                return(Request.CreateResponse(HttpStatusCode.NotFound));
            }

            await productOptionRepository.DeleteAsync(current.Id);

            return(new HttpResponseMessage(HttpStatusCode.OK));
        }
Esempio n. 5
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public async Task <int> DeleteProductOption(Guid id)
        {
            ProductOption existingProductOption = productOptionRepository.GetById(id);

            if (existingProductOption == null)
            {
                throw new HttpResponseException
                      {
                          Status = 500,
                          Value  = $"Product Option with the id { id } doesn't exists"
                      }
            }
            ;

            return(await productOptionRepository.DeleteAsync(existingProductOption));
        }
        /// <inheritdoc />
        public async Task <Result <bool> > DeleteAsync(Guid productId, Guid id)
        {
            _logger.Debug("Deleting a product option. ProductId: {productId}, ProductOptionId: {productOptionId}", productId, id);

            var productOptionResult = await GetByIdAsync(productId, id);

            if (!productOptionResult.IsSuccess())
            {
                return(Result <bool> .Failed(productOptionResult.Error));
            }

            var isSuccess = await _productOptionRepository.DeleteAsync(id);

            return(isSuccess
                 ? Result <bool> .Success(true)
                 : Result <bool> .Failed(ErrorCode.DownstreamFailure, AppConstants.DownstreamFailure));
        }
Esempio n. 7
0
        public async Task <IHttpActionResult> DeleteOption(Guid productId, Guid id)
        {
            await _productOptionRepository.DeleteAsync(ProductOption.FromId(productId, id));

            return(Ok());
        }