private void PrintOilSample(object obj) { if (OilSampleEntrySelectedItem == null) { return; } if (string.IsNullOrEmpty(OilSamplePrintConfig.PrinterName) || OilSamplePrintConfig.TemplateFileName == null) { MessageBox.Show("请选择模板和打印机"); return; } if (OilSampleEntrySelectedItem.CurrencyPrintCount <= 0 || OilSampleEntrySelectedItem.CurrencyPrintCount > 4) { MessageBox.Show("一次最大打印张数为4"); return; } var batchNo = new PrintService().BarTenderOilSamplePrint(OilSamplePrintConfig, OilSampleEntrySelectedItem); //var batchNo = "p020340"; if (!string.IsNullOrEmpty(batchNo)) { var log = new OilSampleFlowPrintLogModel { FormsonId = OilSampleEntrySelectedItem.Id, Title = OilSampleFlowSelectedItem.Title, FormmainId = OilSampleEntrySelectedItem.FormmainId, TypeId = OilSamplePrintConfig.TemplateTypeId, TypeDesc = OilSamplePrintConfig.TemplateTypeName, BatchNo = batchNo, PrintCount = OilSampleEntrySelectedItem.CurrencyPrintCount, PrintedCount = OilSampleEntrySelectedItem.PrintedCount + OilSampleEntrySelectedItem.CurrencyPrintCount, EntryId = OilSampleEntrySelectedItem.EntryId }; OilSampleEntrySelectedItem.PrintedCount = log.PrintedCount; OilSampleEntrySelectedItem.CurrencyPrintCount = OilSampleEntrySelectedItem.PrintTotalCount - log.PrintedCount; // 写日志 int id = _oilSampleService.InsertOilSampleFlowLog(log); if (id > 0) { log.Id = id; OilSampleFlowLogs.Insert(0, log); MessageBox.Show("打印成功"); } else { MessageBox.Show("插入日志数据失败,请联系管理员"); } } else { MessageBox.Show($"打印失败"); } }
private void InitData() { _oilSampleService.GetOilSampleFlow().ToList().ForEach(x => OilSampleFlows.Add(x)); _oilSampleService.GetOilSampleFlowLog().ToList().ForEach(x => OilSampleFlowLogs.Add(x)); ComputerPrinters = CommonService.GetComputerPrinters(); GetOilSamplePrintConfig(); GetExpressPrintConfig(); }
private void OrderPrintOilSampleEntry(object obj) { int printCount = 0; int previousCounts = 0; if (string.IsNullOrEmpty(OilSamplePrintConfig.PrinterName) || OilSamplePrintConfig.TemplateFileName == null) { MessageBox.Show("请选择模板和打印机"); return; } var data = new ObservableCollection <OilSampleEntryModel>(); foreach (var item in OilSampleEntries) { if (item.CurrencyPrintCount > 0) { printCount += item.CurrencyPrintCount; if (printCount >= 4) { item.CurrencyPrintCount = 4 - previousCounts; printCount = 4; data.Add(item); break; } else { previousCounts += item.CurrencyPrintCount; data.Add(item); } } } if (printCount == 0 || printCount > 4) { MessageBox.Show("本流程明细已经全部打印完毕"); return; } var r = new PrintService().BarTenderOilSampleEntryMergePrint(OilSamplePrintConfig, data, printCount, OilSampleTemplates); if (r) { // 重新加载明细 OilSampleEntries.Clear(); OilSampleFlowLogs.Clear(); _oilSampleService.GetOilSampleEntries(OilSampleFlowSelectedItem.Id).ToList().ForEach(x => OilSampleEntries.Add(x)); _oilSampleService.GetOilSampleFlowLog().ToList().ForEach(x => OilSampleFlowLogs.Add(x)); MessageBox.Show("打印成功"); } else { MessageBox.Show("打印过程出错,请联系管理员 "); } }
private void PrintExpress(object obj) { if (OilSampleFlowSelectedItem == null) { return; } if (string.IsNullOrEmpty(ExpressPrintConfig.PrinterName) || ExpressPrintConfig.TemplateSelectedItem == null) { MessageBox.Show("请选择模板和打印机"); return; } var printResult = new PrintService().BarTenderExpressPrint(ExpressPrintConfig, OilSampleFlowSelectedItem.Id); //bool printResult = true; if (printResult) { var log = new OilSampleFlowPrintLogModel { FormsonId = 0, Title = OilSampleFlowSelectedItem.Title, FormmainId = OilSampleFlowSelectedItem.Id, TypeId = ExpressPrintConfig.TemplateTypeId, TypeDesc = ExpressPrintConfig.TemplateTypeName, BatchNo = "0", PrintCount = 1, PrintedCount = OilSampleFlowSelectedItem.ExpressPrintedCount + 1, EntryId = 0 }; OilSampleFlowSelectedItem.ExpressPrintedCount = log.PrintedCount; // 写日志 int id = _oilSampleService.InsertOilSampleFlowLog(log); if (id > 0) { log.Id = id; OilSampleFlowLogs.Insert(0, log); MessageBox.Show("打印成功"); } else { MessageBox.Show("插入日志数据失败,请联系管理员"); } } else { MessageBox.Show($"打印失败"); } }
private void ModifyOilSampleEntryPrintLog(object obj) { if (OilSampleEntrySelectedItem == null) { return; } var r = _oilSampleService.UpdateOilSampleFlowLog(OilSampleEntrySelectedItem.Id); if (r) { // 重新加载entries 和log OilSampleEntries.Clear(); OilSampleFlowLogs.Clear(); _oilSampleService.GetOilSampleEntries(OilSampleFlowSelectedItem.Id).ToList().ForEach(x => OilSampleEntries.Add(x)); _oilSampleService.GetOilSampleFlowLog().ToList().ForEach(x => OilSampleFlowLogs.Add(x)); MessageBox.Show("该行打印张数已全部清0"); } else { MessageBox.Show("清空日志失败,请联系管理员"); } }
private void MergePrintOilSampleEntry(object obj) { int printCount = 0; if (string.IsNullOrEmpty(OilSamplePrintConfig.PrinterName) || OilSamplePrintConfig.TemplateFileName == null) { MessageBox.Show("请选择模板和打印机"); return; } if (OilSampleEntries.Count == 0) { MessageBox.Show($"请先选择样油明细"); return; } var data = new ObservableCollection <OilSampleEntryModel>(); foreach (var item in OilSampleEntries) { if (item.IsChecked && item.CurrencyPrintCount > 0) { printCount += item.CurrencyPrintCount; data.Add(item); } } if (OilSampleEntries.Count > 1 && printCount > 4) { MessageBox.Show($"多条明细最多选择打印4小张"); return; } if (printCount == 0) { MessageBox.Show($"打印张数为0,请修改数量"); return; } if (printCount > 4) { printCount = 4; } var r = new PrintService().BarTenderOilSampleEntryMergePrint(OilSamplePrintConfig, data, printCount, OilSampleTemplates); if (r) { // 重新加载明细 OilSampleEntries.Clear(); OilSampleFlowLogs.Clear(); _oilSampleService.GetOilSampleEntries(OilSampleFlowSelectedItem.Id).ToList().ForEach(x => OilSampleEntries.Add(x)); _oilSampleService.GetOilSampleFlowLog().ToList().ForEach(x => OilSampleFlowLogs.Add(x)); MessageBox.Show("打印成功"); } else { MessageBox.Show("打印过程出错,请联系管理员 "); } }