private async Task <IList <OrderItem> > GetOrderItemsWithAssignedIdAsyc() { IList <OrderItem> orderItemsWithId = new List <OrderItem>(); foreach (OrderItem orderItem in await this.GetAllOrderItemsFromCartContentAsync()) { orderItemsWithId.Add(await _orderItemRepository.AddAsync(orderItem)); } return(orderItemsWithId); }
public async Task <bool> AddOrderAsync(AddOrderModel model) { var result = await _orderRep.AddAsync(model.ToEntity()); if (result != null) { foreach (var item in model.OrderItems) { await _orderItemRep.AddAsync(item.ToEntity(result.Id)); } return(true); } return(false); }
public async Task <OperationResult> AddAsync(OrderItem item) { var validationResult = _orderItemValidator.Validate(item); if (!validationResult.IsValid) { var errors = validationResult.Errors.Select(e => e.ErrorMessage).ToList(); return(new OperationResult(false, item, errors)); } await _orderItemRepository.AddAsync(item); await _stockService.DecrementStock(item.ProductId, item.Amount); await _unitOfWork.CommitAsync(); await UpdateOrderTotal(item.OrderId); return(new OperationResult(true, item, null)); }
public async Task <OrderItem> AddItem(int productId, int customerId) { try { var item = new OrderItem { Completed = false, CustomerId = customerId, ProductId = productId }; await _orderItemRepository.AddAsync(item); return(item); } catch (Exception ex) { throw; } }
public async Task <OrderItem> AddOrderItemAsync(OrderItem orderItem) { return(await _orderItemRepository.AddAsync(orderItem)); }