예제 #1
0
        /// <summary>
        /// Convert order object into a order model list
        /// </summary>
        /// <param name="OrderList"></param>
        /// <returns></returns>
        public List <OrderModel> OrderListToModelList(List <Entity.Order> OrderList)
        {
            List <OrderModel>          output = new List <OrderModel>();
            ConcurrentBag <OrderModel> concurrentOrderModelList = new ConcurrentBag <OrderModel>();

            foreach (var order in OrderList)
            {
                OrderModel ovm = (OrderModel)_main.ModelCreator.createModel(QOBDModels.Enums.EModel.ORDER);

                // getting the order agent
                var resultAgent = Bl.BlAgent.GetAgentDataById(order.AgentId);
                ovm.AgentModel.Agent = (resultAgent.Count > 0) ? resultAgent[0] : new Entity.Agent();

                // getting the order client
                var resultClient = Bl.BlClient.GetClientDataById(order.ClientId);
                ovm.CLientModel.Client = (resultClient.Count > 0) ? resultClient[0] : new Entity.Client();

                // getting the order tax_order
                var resultSearchOrderTaxList = Bl.BlOrder.searchTax_order(new Tax_order {
                    OrderId = order.ID
                }, ESearchOption.AND);
                ovm.Tax_orderModel = (resultSearchOrderTaxList.Count > 0) ? new Tax_orderModel {
                    Tax_order = resultSearchOrderTaxList[0]
                } : new Tax_orderModel();

                // getting the order tax
                Entity.Tax taxFound = TaxList.Where(x => x.ID == ovm.Tax_orderModel.Tax_order.TaxId).OrderBy(x => x.Date_insert).LastOrDefault();// await Bl.BlOrder.GetTaxDataById(cmdvm.Tax_command.TaxId);
                ovm.Tax = (taxFound != null) ? taxFound : new Entity.Tax();

                ovm.Order = order;
                concurrentOrderModelList.Add(ovm);
            }
            output = new List <OrderModel>(concurrentOrderModelList);
            return(output);
        }
예제 #2
0
        private async void updateDefaultTax(TaxModel obj)
        {
            if (await Singleton.getDialogueBox().showAsync("Do you confirm the update of the default tax?"))
            {
                Singleton.getDialogueBox().showSearch(ConfigurationManager.AppSettings["update_message"]);
                var savedTaxes = await Bl.BlOrder.UpdateTaxAsync(new List <Tax> {
                    obj.Tax
                });

                if (savedTaxes.Count > 0)
                {
                    await Singleton.getDialogueBox().showAsync("The default Tax has been successfully updated!");
                }
            }
            else
            {
                Tax taxFound = Bl.BlOrder.searchTax(new Tax {
                    Tax_current = 1
                }, ESearchOption.AND).SingleOrDefault();
                if (taxFound != null)
                {
                    var taxModel = TaxList.Where(x => x.Tax.ID == taxFound.ID).SingleOrDefault();
                    if (taxModel != null)
                    {
                        taxModel.IsDefault = true;
                    }
                }
            }
            clearNewTax(null);
            Singleton.getDialogueBox().IsDialogOpen = false;
        }
 void OnAmountChange()
 {
     this.PQAmount        = Convert.ToDecimal(PQAmountStr);
     this.AmountBeforeTax = PQAmount;
     if (SelectedTaxID != null)
     {
         var tax = TaxList.Where(e => e.TaxID == SelectedTaxID).FirstOrDefault();
         if (tax != null)
         {
             this.TaxAmount = (PQAmount * tax.TaxRate) / 100;
         }
         else
         {
             this.TaxAmount = 0;
         }
     }
     AmountAfterTax = AmountBeforeTax + TaxAmount;
 }