public async Task <long> HandlerAsync(List <OrderCommand> command) { var guid = Guid.NewGuid(); // save each item in the order List <OrderDetail> orderDetails = new List <OrderDetail>(); foreach (var c in command) { var item = await _itemRepo.EntitySet .AsNoTracking() .Where(x => x.ID == c.ItemID) .FirstOrDefaultAsync(); var od = new OrderDetail() { ItemID = c.ItemID, Price = item.Price, Quantity = c.Quantity, ShippedOrderID = guid, TotalPrice = item.Price * c.Quantity }; orderDetails.Add(od); } var savedOrders = await _orderDetailRepo.InsertAsync(orderDetails); // save the shipping order var shippingOrder = new ShippedOrder() { ShippedOrderID = guid, CreatedDateTime = DateTime.Now }; var savedShippingOrder = await _shippedOrderRepo.InsertAsync(shippingOrder); return(savedShippingOrder.ID); }
private void btnDisplay_Click(object sender, RoutedEventArgs e) { if (chkShipping.IsChecked == false) { Orders O1 = new Order.Orders(); O1.setCusName(txtCusName.Text); O1.setCusNum(txtNum.Text); O1.setUnitPrice(Convert.ToDouble(txtUnitPrice.Text)); O1.setNumber(Convert.ToInt32(txtQuantity.Text)); O1.ComputePrice(); lstDisplay.Items.Add(O1.displayOrder()); } else { ShippedOrder O1 = new ShippedOrder(); O1.setCusName(txtCusName.Text); O1.setCusNum(txtNum.Text); O1.setUnitPrice(Convert.ToDouble(txtUnitPrice.Text)); O1.setNumber(Convert.ToInt32(txtQuantity.Text)); O1.ComputePrice(); lstDisplay.Items.Add(O1.displayOrder()); } }