Ejemplo n.º 1
0
 public OrderItem(OrderItemState state)
 {
     ProductId       = state.ProductId;
     ProductName     = state.ProductName;
     UnitPrice       = state.UnitPrice;
     Units           = state.Units;
     PictureFileName = state.PictureFileName;
 }
Ejemplo n.º 2
0
        private void TableAppSubscriber_OrderItemStateChangedEvent(object sender, OrderItemState e)
        {
            var element =
                AddedElements.FirstOrDefault(omi => omi.Id == e.MenuItemId && omi.Quantities == e.Quantity && omi.Ready != e.Ready);                 //Może zamiast sprawdzania po menuitemid i quantities (nie gwarantuje unikalności), lepiej przekazywać menuitemquantityId i po tym sprawdzać ?

            if (element != null)
            {
                element.Ready = e.Ready;
            }

            AddedElements.Refresh();
        }
Ejemplo n.º 3
0
 public void Set(OrderItemState state)
 {
     if (state != Current)
     {
         var disposition = GetDisposition(state);
         if (disposition == OrderItemStateTransitionDisposition.Forbidden)
         {
             throw new InvalidOperationException("This state transition (from " + Current + " to " + state + ") is not allowed.");
         }
         Add(new OrderItemStateEntry {
             Value = state, Changed = DateTime.UtcNow
         });
     }
 }
Ejemplo n.º 4
0
        public IOrderItemState Get(OrderItemId id, bool nullAllowed)
        {
            IOrderItemState state = CurrentSession.Get <OrderItemState>(id);

            if (!nullAllowed && state == null)
            {
                state = new OrderItemState();
                (state as OrderItemState).OrderItemId = id;
            }
            if (ReadOnlyProxyGenerator != null && state != null)
            {
                return(ReadOnlyProxyGenerator.CreateProxy <IOrderItemState>(state, new Type[] {  }, _readOnlyPropertyNames));
            }
            return(state);
        }
Ejemplo n.º 5
0
        public object Convert(object value, Type targetType, object parameter,
                              CultureInfo culture)
        {
            OrderItemState state = (OrderItemState)value;

            switch (state)
            {
            case OrderItemState.Ordered:
                return("/Images/OrderedProduct.ico");

            case OrderItemState.Processing:
                return("/Images/ProcessingProduct.ico");

            case OrderItemState.Ready:
                return("/Images/ReadyProduct.ico");

            case OrderItemState.Served:
                return("/Images/ServedProduct.ico");

            default:
                return("/Images/Unknown.ico");
            }
        }
        public object Convert(object value, Type targetType, object parameter,
                              CultureInfo culture)
        {
            OrderItemState state = (OrderItemState)value;

            switch (state)
            {
            case OrderItemState.Ordered:
                return("Đã gọi");

            case OrderItemState.Processing:
                return("Đang làm");

            case OrderItemState.Ready:
                return("Sẵn sàng");

            case OrderItemState.Served:
                return("Đã phục vụ");

            default:
                return("Unknown");
            }
        }
Ejemplo n.º 7
0
        /// <summary>
        /// change order item state
        /// </summary>
        /// <param name="orderItemNr"></param>
        /// <param name="state"></param>
        /// <returns></returns>
        public Msg <string> ChangeOrderItemState(string orderItemNr, OrderItemState state, string userNr = null, string userGroupNr = null)
        {
            Msg <string> msg = new Msg <string>();
            var          req = new RestRequest(ApiConfig.OrderItemUpdateStateAction, Method.PUT);

            req.RequestFormat = DataFormat.Json;
            req.AddParameter("order_item_nr", orderItemNr);
            req.AddParameter("state", (int)state);
            req.AddParameter("user_nr", userNr);
            req.AddParameter("user_group_nr", userGroupNr);
            var res  = new ApiClient().Execute(req);
            var data = res.Content;

            if (data != null)
            {
                msg.Result = true;
                msg.Object = data;
            }
            else
            {
                msg.Content = "No Order";
            }
            return(msg);
        }
Ejemplo n.º 8
0
 public OrderItemStateTransitionDisposition GetDisposition(OrderItemState state)
 {
     return(Transitions[Current].ContainsKey(state)
                ? Transitions[Current][state]
                : OrderItemStateTransitionDisposition.Forbidden);
 }
Ejemplo n.º 9
0
 public static bool IsValidForOrder(this OrderItemState state)
 {
     return(state == OrderItemState.Active || state == OrderItemState.Added);
 }
Ejemplo n.º 10
0
 public void NotifyOrderItemStateChanged(OrderItemState state)
 {
     Task.Run(() => HandleSafely(OrderItemStateChangedEvent, state));             //should be awaited...
 }