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)); }
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)); }
/// <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)); }
public async Task <IHttpActionResult> DeleteOption(Guid productId, Guid id) { await _productOptionRepository.DeleteAsync(ProductOption.FromId(productId, id)); return(Ok()); }