private void GenerateOrderCallback(SQLQueryResult queryResult)
        {
            if (queryResult.MesResult == MessageQueryResult.Done)
            {
                bool refreshCustomer          = false;
                bool refreshMedicineBillBoard = true;

                App.Current.ShowApplicationMessageBox("Tạo hóa đơn mới thành công! Đóng thông báo để tiếp tục in hóa đơn",
                                                      HPSolutionCCDevPackage.netFramework.AnubisMessageBoxType.Default,
                                                      HPSolutionCCDevPackage.netFramework.AnubisMessageImage.Success,
                                                      OwnerWindow.MainScreen,
                                                      "Thông báo!!");

                PrintInvoice();

                SPViewModel.RefreshViewModel(refreshCustomer, refreshMedicineBillBoard);
            }
            else
            {
                App.Current.ShowApplicationMessageBox("Lỗi tạo hóa đơn mới!",
                                                      HPSolutionCCDevPackage.netFramework.AnubisMessageBoxType.Default,
                                                      HPSolutionCCDevPackage.netFramework.AnubisMessageImage.Error,
                                                      OwnerWindow.MainScreen,
                                                      "Lỗi!!");
            }

            SPViewModel.ButtonCommandOV.IsInstantiateNewOrderButtonRunning = false;
        }
        private void CreateNewOrderDetail()
        {
            try
            {
                OrderDetailOV orderDetailVO = new OrderDetailOV();
                orderDetailVO.MedicineName     = SPViewModel.MedicineOV.CurrentSelectedMedicine.MedicineName;
                orderDetailVO.MedicineID       = SPViewModel.MedicineOV.CurrentSelectedMedicine.MedicineID;
                orderDetailVO.MedicineUnitName = SPViewModel.MedicineOV.CurrentSelectedMedicine.tblMedicineUnit.MedicineUnitName;
                orderDetailVO.Quantity         = Convert.ToDouble(SPViewModel.MedicineOV.Quantity);
                orderDetailVO.UnitPrice        = SPViewModel.MedicineOV.CurrentSelectedMedicine.AskingPrice;
                orderDetailVO.UnitBidPrice     = SPViewModel.MedicineOV.CurrentSelectedMedicine.BidPrice;
                GetPromo(orderDetailVO);
                orderDetailVO.TotalPrice = Convert.ToDecimal(Convert.ToDouble(SPViewModel.MedicineOV.Quantity) *
                                                             Convert.ToDouble(SPViewModel.MedicineOV.CurrentSelectedMedicine.AskingPrice) *
                                                             (100 - orderDetailVO.PromoPercent) / 100);

                OrderDetailOV checkExistedVO = null;
                try
                {
                    if (SPViewModel.CustomerOrderDetailItemSource.Count > 0)
                    {
                        checkExistedVO = SPViewModel.CustomerOrderDetailItemSource.First(VO => VO.MedicineID.Equals(orderDetailVO.MedicineID));
                    }
                }
                catch (Exception e)
                {
                }


                if (checkExistedVO != null)
                {
                    checkExistedVO.Quantity   += orderDetailVO.Quantity;
                    checkExistedVO.TotalPrice += orderDetailVO.TotalPrice;
                    orderDetaiDataGrid.Items.Refresh();
                    SPViewModel.Invalidate(SPViewModel.MedicineOV, "MedicineCost");
                    SPViewModel.Invalidate(SPViewModel.MedicineOV, "TotalCost");
                    SPViewModel.Invalidate(SPViewModel.MedicineOV, "RestAmount");
                }
                else
                {
                    SPViewModel.CustomerOrderDetailItemSource.Add(orderDetailVO);
                }
            }
            catch (Exception e)
            {
            }
            finally
            {
                SPViewModel.ButtonCommandOV.IsAddOrderDeatailButtonRunning = false;
                SPViewModel.MedicineOV.CurrentSelectedMedicine             = null;
                SPViewModel.MedicineOV.Quantity = null;
                SPViewModel.MedicineOV.Invalidate("CurrentSelectedMedicine");
                SPViewModel.MedicineOV.Invalidate("Quantity");
            }
        }
示例#3
0
        protected override void ExecuteCommand()
        {
            if (SPViewModel.CustomerOrderDetailItemSource.Count > 0)
            {
                var x = App.Current.ShowApplicationMessageBox("Bạn có chắc tạo mới!",
                                                              HPSolutionCCDevPackage.netFramework.AnubisMessageBoxType.YesNo,
                                                              HPSolutionCCDevPackage.netFramework.AnubisMessageImage.Info,
                                                              OwnerWindow.MainScreen,
                                                              "Thông báo!!");
                if (x == HPSolutionCCDevPackage.netFramework.AnubisMessgaeResult.ResultNo)
                {
                    return;
                }
            }

            bool refreshCustomer = true;
            bool refreshBill     = true;

            SPViewModel.RefreshViewModel(refreshCustomer, refreshBill);

            return;
        }