private void InitImportDetail()
 {
     ImportInfo = MSW_DataFlowHost.Current.CurrentModifiedWarehouseImport;
     UpdateMedicineListBySupplier();
     NoteString               = ImportInfo.ImportDescription;
     MedicinePrice            = 0;
     MedicineQuantity         = 0;
     SelectedMedicine         = null;
     TotalPrice               = ImportInfo.TotalPrice;
     PurchasedPrice           = ImportInfo.PurchasePrice;
     NetPrice                 = TotalPrice - PurchasedPrice;
     LstWarehouseImportDetail = new ObservableCollection <MSW_WHMP_WarehouseImportDetailOV>();
     foreach (var item in ImportInfo.tblWarehouseImportDetails.Where(o => o.IsActive))
     {
         var detail = new MSW_WHMP_WarehouseImportDetailOV();
         detail.MedicineID       = item.MedicineID;
         detail.MedicineName     = item.tblMedicine.MedicineName;
         detail.MedicineUnitName = item.tblMedicine.tblMedicineUnit.MedicineUnitName;
         detail.Quantity         = item.Quantity;
         detail.UnitPrice        = item.Price;
         detail.TotalPrice       = (decimal)detail.Quantity * detail.UnitPrice;
         LstWarehouseImportDetail.Add(detail);
     }
     Invalidate("LstWarehouseImportDetail");
     Invalidate("LstMedicine");
     Invalidate("MedicinePrice");
     Invalidate("MedicineQuantity");
     Invalidate("TotalPrice");
     Invalidate("NetPrice");
 }
Example #2
0
 private void InitImportDetail()
 {
     ImportInfo               = MSW_DataFlowHost.Current.CurrentModifiedWarehouseImport;
     TotalPrice               = ImportInfo.TotalPrice;
     PurchasedPrice           = ImportInfo.PurchasePrice;
     NetPrice                 = TotalPrice - PurchasedPrice;
     LstWarehouseImportDetail = new ObservableCollection <MSW_WHMP_WarehouseImportDetailOV>();
     foreach (var item in ImportInfo.tblWarehouseImportDetails.Where(o => o.IsActive))
     {
         var detail = new MSW_WHMP_WarehouseImportDetailOV();
         detail.MedicineID       = item.MedicineID;
         detail.MedicineName     = item.tblMedicine.MedicineName;
         detail.MedicineUnitName = item.tblMedicine.tblMedicineUnit.MedicineUnitName;
         detail.Quantity         = item.Quantity;
         detail.UnitPrice        = item.Price;
         detail.TotalPrice       = (decimal)detail.Quantity * detail.UnitPrice;
         LstWarehouseImportDetail.Add(detail);
     }
 }
Example #3
0
        protected override void ExecuteCommand()
        {
            base.ExecuteCommand();

            dataGrid = DataTransfer[0] as DataGrid;

            try
            {
                StringBuilder error = new StringBuilder();
                if (AWIPViewModel.SelectedMedicine == null)
                {
                    error.Append("Chưa chọn thuốc!").AppendLine();
                }
                if (AWIPViewModel.MedicinePrice < 0)
                {
                    error.Append("Giá thuốc không hợp lệ!").AppendLine();
                }
                if (AWIPViewModel.MedicineQuantity <= 0)
                {
                    error.Append("Số lượng thuốc không hợp lệ!").AppendLine();
                }

                if (error.Length > 0)
                {
                    throw new Exception(error.ToString());
                }

                MSW_WHMP_WarehouseImportDetailOV item;
                if ((item = AWIPViewModel.LstWarehouseImportDetail.Where(o => o.MedicineID == AWIPViewModel.SelectedMedicine.MedicineID).FirstOrDefault()) == null)
                {
                    item                  = new MSW_WHMP_WarehouseImportDetailOV();
                    item.MedicineID       = AWIPViewModel.SelectedMedicine.MedicineID;
                    item.MedicineName     = AWIPViewModel.SelectedMedicine.MedicineName;
                    item.MedicineUnitName = AWIPViewModel.SelectedMedicine.tblMedicineUnit.MedicineUnitName;
                    item.Quantity         = AWIPViewModel.MedicineQuantity;
                    item.UnitPrice        = AWIPViewModel.MedicinePrice;
                    item.TotalPrice       = (decimal)item.Quantity * item.UnitPrice;

                    AWIPViewModel.LstWarehouseImportDetail.Add(item);
                }
                else
                {
                    item.UnitPrice  = AWIPViewModel.MedicinePrice;
                    item.Quantity  += AWIPViewModel.MedicineQuantity;
                    item.TotalPrice = (decimal)item.Quantity * item.UnitPrice;
                    dataGrid.Items.Refresh();
                }

                AWIPViewModel.UpdateTotalPriceAndNewPrice();
            }
            catch (Exception e)
            {
                App.Current.ShowApplicationMessageBox(e.Message,
                                                      HPSolutionCCDevPackage.netFramework.AnubisMessageBoxType.Default,
                                                      HPSolutionCCDevPackage.netFramework.AnubisMessageImage.Error,
                                                      OwnerWindow.MainScreen,
                                                      "Lỗi!");
                return;
            }
            finally
            {
                AWIPViewModel.ButtonCommandOV.IsAddImportDetailButtonRunning = false;
            }
            return;
        }