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"); }
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); } }
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; }