示例#1
0
 private void OnSelectionChanged()
 {
     SelectedProperty = null;
     FocusedTasks     = null;
     if (SelectedColumn != null && SelectedOrder != null)
     {
         Binding binding      = null;
         string  propertyName = String.Empty;
         if (SelectedColumn is DataGridBoundColumn)
         {
             var col = SelectedColumn as DataGridBoundColumn;
             binding      = (Binding)col.Binding;
             propertyName = binding.Path.Path;
         }
         if (SelectedColumn is DataGridTemplateColumn)
         {
             propertyName = AttachedProperties.AttachedStrings.GetPropertyName(SelectedColumn);
         }
         if (propertyName != String.Empty)
         {
             SelectedProperty = SelectedOrder.GetType().GetProperty(propertyName);
         }
         FocusedTasks = SelectedOrder.Tasks;
     }
 }
 private void OnSave(object obj)
 {
     if (SelectedOrder == null)
     {
         SelectedOrder.SendCommand();
     }
 }
示例#3
0
 public void DeleteSelectedOrder()
 {
     if (SelectedOrder != null)
     {
         SelectedOrder.Delete();
     }
 }
示例#4
0
        private async Task ProcessOrderExecute()
        {
            var order = _orderHandler.ProcessOrder(SelectedOrder.GetOrder());
            await _orderRepository.AddOrUpdateAsync(order);

            await UpdateOrders();
        }
示例#5
0
 private void OnPortionSelected(EventParameters <MenuItemPortion> obj)
 {
     if (obj.Topic == EventTopicNames.PortionSelected)
     {
         var taxTemplate = _applicationState.GetTaxTemplates(obj.Value.MenuItemId);
         SelectedOrder.UpdatePortion(obj.Value, _applicationState.CurrentDepartment.PriceTag, taxTemplate);
     }
 }
 private void OnCloseCommandExecuted(string obj)
 {
     if (StopTimer)
     {
         SelectedOrder.StopProductTimer();
     }
     EventServiceFactory.EventService.PublishEvent(EventTopicNames.ActivatePosView);
 }
示例#7
0
        public async Task <SelectedOrder> GetCartDetails(List <SelectedProduct> products)
        {
            SelectedOrder objSelectOrder = new SelectedOrder();

            objSelectOrder.UserId   = SessionHelper.GetUserID();
            objSelectOrder.Products = products;
            objSelectOrder          = await _productService.GetSelectedProductOrderDetails(objSelectOrder);

            return(objSelectOrder);
        }
示例#8
0
        private async Task EditOrderExecute()
        {
            IsLoading = true;
            var editableOrder     = _orderRepository.GetByIdAsync(SelectedOrder.GetOrder().Id);
            var addOrderViewModel = _addOrderViewModelFactory.CreateAddOrderViewModel(await editableOrder);
            var addResult         = await AddOrEditRequest.RaiseAsync(addOrderViewModel);

            if (addResult.Confirmed)
            {
                var order = addResult.GetOrder();
                await _orderRepository.AddOrUpdateAsync(order);
                await UpdateOrders();
            }
            IsLoading = false;
        }
示例#9
0
        private void OnChangePrice(string obj)
        {
            decimal price;

            decimal.TryParse(_applicationState.NumberPadValue, out price);
            if (price <= 0)
            {
                InteractionService.UserIntraction.GiveFeedback(Resources.ForChangingPriceTypeAPrice);
            }
            else
            {
                SelectedOrder.UpdatePrice(price, SelectedDepartment.PriceTag);
            }
            ClearSelectedItems();
            EventServiceFactory.EventService.PublishEvent(EventTopicNames.ResetNumerator);
        }
示例#10
0
        private async Task DeleteOrderExecute()
        {
            IsLoading = true;
            var confirmation = await ConfirmationRequest.RaiseAsync(new Confirmation
            {
                Content = $"Вы действительно хотите удалить заказ по документу {SelectedOrder.NDoc}?",
                Title   = "Внимание!"
            });

            if (confirmation.Confirmed)
            {
                await _orderRepository.Delete(SelectedOrder.GetOrder().Id);
                await UpdateOrders();
            }
            IsLoading = false;
        }
示例#11
0
        public async Task <SelectedOrder> GetSelectedProductOrderDetails(SelectedOrder objSelectedProducts)
        {
            SelectedOrder       result     = new SelectedOrder();
            var                 httpClient = TilleCommHttpClient.GetClient();
            HttpResponseMessage response;
            string              jsonResult = JsonConvert.SerializeObject(objSelectedProducts);

            response = await httpClient.PostAsync(TilleCommURL.GetCartOrders, new StringContent(jsonResult, System.Text.Encoding.UTF8, "application/json"));

            if (response.IsSuccessStatusCode)
            {
                var userAsstring = await response.Content.ReadAsStringAsync().ConfigureAwait(false);

                result = JsonConvert.DeserializeObject <SelectedOrder>(userAsstring);
            }
            return(result);
        }
示例#12
0
        public SelectedOrder GetSelectedProductDetails(SelectedOrder obj)
        {
            List <CalculateTotal> lstProducts = new List <CalculateTotal>();

            if (obj != null)
            {
                if (obj.Products != null && obj.Products.Count() > 0)
                {
                    foreach (var item in obj.Products)
                    {
                        Product product = _productDataAccessLayer.GetProductbyId(item.ProductId);
                        item.MyProductDetails = product;
                        item.Quantity         = (item.Quantity == 0 ? 1 : item.Quantity);
                        lstProducts.Add(new CalculateTotal {
                            Quantity = item.Quantity, Product = product
                        });
                        item.CustomMessage = GetCustomMessage(obj.UserId);
                    }
                    obj.DiscountedPrice = GetDiscountedPrice(obj.UserId, lstProducts);
                    obj.TotalPrice      = GetTotalPrice(obj.UserId, lstProducts);
                }
            }
            return(obj);
        }
示例#13
0
 public OrderBase GetOrder()
 {
     return(SelectedOrder.GetOrder());
 }
        public IHttpActionResult GetCartOrders(SelectedOrder obj)
        {
            ProductOrderDataAccessLayer objProductDAL = new ProductOrderDataAccessLayer();

            return(Ok(objProductDAL.GetSelectedProductDetails(obj)));
        }
 private void OnDeleteOrderCommandExecute()
 {
     SelectedOrder.Remove();
     Orders.Remove(SelectedOrder);
     SelectedOrder = null;
 }
        private string GetValueDescription()
        {
            var mi = SelectedOrder.ProductTimerValue;

            return(string.Format("{0:#} {1} {2}: {3:N}", mi.GetTime(), GetTimeDescription(mi.PriceType), Resources.Price, SelectedOrder.GetPlainPrice()));
        }