Exemplo n.º 1
0
        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();
        }
Exemplo n.º 2
0
 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);
     }
 }