public async Task <IActionResult> Add(AddPurchaseDto purchaseDto) { var result = await purchaseService.BuyBook(purchaseDto, new CancellationToken()); if (result.Status == ActionStatus.Failure) { return(BadRequest()); } return(Ok(result.Purchase)); }
public async Task <int> Add(AddPurchaseDto addPurchaseDto) { var purchase = new Purchase { Count = addPurchaseDto.Count, InvoiceNumber = addPurchaseDto.InvoiceNumber, PurchaseDate = addPurchaseDto.PurchaseDate, ProductId = addPurchaseDto.ProductId }; var warehouseItem = await _warehouseItemRepository.FindByProductId(addPurchaseDto.ProductId); ThrowExceptionIfWarehouseItemNotExists(addPurchaseDto.ProductId, warehouseItem); await ThrowExceptionIfInvoiceNumberAlreadyExists(addPurchaseDto.InvoiceNumber); warehouseItem.Stock += purchase.Count; _repository.Add(purchase); await _unitOfWork.CompleteAsync(); return(purchase.Id); }
public async Task <int> Add(AddPurchaseDto addPurchaseDto) { return(await _service.Add(addPurchaseDto)); }