protected void NextStateButton_Command(object sender, CommandEventArgs e) { if (!Page.IsValid) { return; } Pharmacy.BusinessLayer.Data.ReplenishmentOrder order = OrderService.GetOrder(GetOrderId()); if (order.State == OrderState.Posting) { string expectedDelivery = ((TextBox)OrderDetailsView.FindControl("ExpectedDeliveryBox")).Text; OrderService.UpdateExpectedDeliveryDate(order.Id, parseDateTime(expectedDelivery)); } if (order.State == OrderState.Ordered) { string actualDelivery = ((TextBox)OrderDetailsView.FindControl("ActualDeliveryBox")).Text; OrderService.UpdateActualDeliveryDate(order.Id, parseDateTime(actualDelivery)); } OrderService.ProceedToNextState(order.Id); // display updated data OrderDetailsView.DataBind(); }
private static void CreatePositionOnOpenOrNewOrder(Drug drug, int quantity, PharmacyContainer db) { if (OpenOrdersAvailable(db)) { ReplenishmentOrder openOrder = GetOpenOrders(db).First(); openOrder.Positions.Add(new Position { Drug = drug, Order = openOrder, Quantity = quantity }); } else { ReplenishmentOrder newOrder = new ReplenishmentOrder(); newOrder.Positions.Add(new Position { Drug = drug, Order = newOrder, Quantity = quantity }); db.ReplenishmentOrderSet.Add(newOrder); } }