From e7ac7e5702f6ac1f88403485de232e5494a1c76a Mon Sep 17 00:00:00 2001
From: zhaowenxuan <chacca165@163.com>
Date: 星期一, 11 八月 2025 13:55:57 +0800
Subject: [PATCH] 修改错误日志打印
---
ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjReportServiceImpl.java | 400 +++++++++++++++-----------------------------------------
1 files changed, 111 insertions(+), 289 deletions(-)
diff --git a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjReportServiceImpl.java b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjReportServiceImpl.java
index efa15f4..f4d254c 100644
--- a/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjReportServiceImpl.java
+++ b/ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjReportServiceImpl.java
@@ -2,6 +2,7 @@
import java.io.*;
import java.nio.file.Files;
+import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.*;
import java.util.List;
@@ -75,6 +76,8 @@
private ITjOrderRemarkService tjOrderRemarkService;
@Resource
private ITjStandardService tjStandardService;
+ @Autowired
+ private ITjReportPrintService printService;
/**
* 鏌ヨ浣撴鎶ュ憡瀛樺偍
@@ -142,10 +145,10 @@
return tjReportMapper.deleteTjReportByReId(reId);
}
- @Value("${path.filePath}")
- private String value;
+// @Value("${path.filePath}")
+// private String value;
- @Override
+ /* @Override
public AjaxResult getTjReport(String tjNumber) {
//鏍规嵁浣撴鍙�
//鍦╫rder閲屾煡璇綋妫�鐘舵�� 鍒ゆ柇浣撴鏄惁瀹屾垚
@@ -176,9 +179,9 @@
TjProject tjProject = projectService.selectTjProjectByProId(tjOrderDetail.getProId());
tjOrderDetail.setProject(tjProject);
}
- /*
+ *//*
* ====================绗竴閮ㄥ垎 濉厖浣撴鎶ュ憡灏侀潰妯℃澘
- * */
+ * *//*
//鏍规嵁鏁版嵁搴撲腑鐨勬ā鏉夸簩杩涘埗鏂囦欢 杞琾df 鍒涘缓鏂囦欢澶� 灏唒df鏀捐繘鏂囦欢澶�
LambdaQueryWrapper<TjReportTemplate> tjReportTemplateLambdaQueryWrapper = new LambdaQueryWrapper<>();
tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getFlag, 1);
@@ -190,12 +193,12 @@
//褰撳墠鐧诲綍鐨勪汉宸ュ彿
String userId = SecurityUtils.getLoginUser().getUsername();
//浜岃繘鍒惰浆pdf 瀛樺偍鍦ㄤ复鏃舵枃浠跺す涓�
- PDFBinaryUtil.base64StringToPDF(template, FileUtil.mkdir(value).getPath() + "\\" + userId + "浣撴鎶ュ憡灏侀潰妯℃澘.pdf");
+ PDFBinaryUtil.base64StringToPDF(template, FileUtil.mkdir(value).getPath() + File.separator + userId + "浣撴鎶ュ憡灏侀潰妯℃澘.pdf");
// 妯℃澘鏂囦欢璺緞
- String inputFileName = value + "\\" + userId + "浣撴鎶ュ憡灏侀潰妯℃澘.pdf";
+ String inputFileName = value + File.separator + userId + "浣撴鎶ュ憡灏侀潰妯℃澘.pdf";
// 鐢熸垚鐨勬枃浠惰矾寰�
- String outputFileName = value + "\\" + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf";
+ String outputFileName = value + File.separator + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf";
OutputStream os = null;
PdfStamper ps = null;
PdfReader reader = null;
@@ -251,16 +254,16 @@
ps.close();
os.close();
reader.close();
- /*
+ *//*
* ==========================绗簩閮ㄥ垎 鐢熸垚椤圭洰璇︽儏
- */
+ *//*
//鏂囨。瀵硅薄 瀹炵幇A4绾搁〉闈�
Document document = new Document(PageSize.A4);
//document.setMarginMirroring(true);
//璁剧疆鏂囨。鐨勯〉杈硅窛灏辨槸璺濈椤甸潰杈逛笂鐨勮窛绂伙紝鍒嗗埆涓猴細宸﹁竟璺濓紝鍙宠竟璺濓紝涓婅竟璺濓紝涓嬭竟璺�
document.setMargins(70, 70, 40, 40);
//杩欎釜鏄敓鎴恜df鐨勪綅缃互鍙婂悕绉�
- String fileName = value + "\\" + userId + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf";
+ String fileName = value + File.separator + userId + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf";
OutputStream outputStream = Files.newOutputStream(Paths.get(fileName));
PdfWriter pdfWriter = PdfWriter.getInstance(document, outputStream);
@@ -320,16 +323,16 @@
LineSeparator objectName = new LineSeparator();
document.add(objectName);
}
- /*
+ *//*
* document鍏抽棴鐨勫叾瀹炴槸鏂囦欢鐨勭洃鍚姸鎬侊紝writer鍏抽棴鐨勬槸io娴侊紝writer鍒涘缓鍦╠ocument涔嬪悗
- * */
+ * *//*
document.close();
pdfWriter.close();
outputStream.close();
//=============================== 绗笁閮ㄥ垎 鍚堝苟浣撴鎶ュ憡灏侀潰椤靛拰浣撴鎶ュ憡椤圭洰璇︽儏椤�
- String[] files1 = {value + "\\" + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + "\\" + userId + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf"};
- String outputPath1 = value + "\\";
+ String[] files1 = {value + File.separator + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + File.separator + userId + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf"};
+ String outputPath1 = value + File.separator;
String outputFileName1 = tjNumber + "浣撴鎶ュ憡.pdf";
File file1 = new File(outputPath1 + outputFileName1);
@@ -349,9 +352,9 @@
//灏嗕复鏃舵枃浠跺す涓殑鍥涗釜鏂囦欢鍒犻櫎
//FileUtil.del(value+"\\"+tjNumber + "浣撴鎶ュ憡.pdf");
- FileUtil.del(value + "\\" + userId + "浣撴鎶ュ憡灏侀潰妯℃澘.pdf");
- FileUtil.del(value + "\\" + userId + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf");
- FileUtil.del(value + "\\" + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf");
+ FileUtil.del(value + File.separator + userId + "浣撴鎶ュ憡灏侀潰妯℃澘.pdf");
+ FileUtil.del(value + File.separator + userId + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf");
+ FileUtil.del(value + File.separator + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf");
//淇敼order琛ㄤ腑鐨勬墦鍗版姤鍛婃椂闂翠负褰撳墠鏃堕棿
LambdaUpdateWrapper<TjOrder> updateWrapper = new LambdaUpdateWrapper<>();
@@ -369,7 +372,7 @@
}
}
return null;
- }
+ }*/
@Override
public Integer getSelectCount(Wrapper<TjReport> queryWrapper) {
@@ -517,9 +520,9 @@
@Override
- @Transactional
- public AjaxResult makeBatchReport(List<String> tjNumbers) {
- return sqlGetReportToMake(tjNumbers);
+ public AjaxResult makeBatchReport(List<String> tjNumbers,String value) {
+ return sqlGetReportToMake(tjNumbers,value);
+
}
/**
@@ -528,281 +531,100 @@
* @param tjNumbers
* @return
*/
- private AjaxResult sqlGetReportToMake(List<String> tjNumbers) {
- LambdaQueryWrapper<TjReport> tjReportLambdaQueryWrapper = new LambdaQueryWrapper<>();
- tjReportLambdaQueryWrapper.in(TjReport::getTjNumber, tjNumbers);
- List<TjReport> list = tjReportService.list(tjReportLambdaQueryWrapper);
- ArrayList<String> base64Pdfs = new ArrayList<>();
- for (TjReport report : list) {
- if (report == null || report.getReport() == null) {
- // 娌℃湁璇ユ姤鍛� 鐩存帴璺宠繃
- continue;
- }
- base64Pdfs.add(report.getReport());
- }
- tjNumbers.forEach(tjNumber ->{
- LambdaUpdateWrapper<TjOrder> updateWrapper = new LambdaUpdateWrapper<>();
- updateWrapper.eq(TjOrder::getTjNumber, tjNumber);
- updateWrapper.set(TjOrder::getPrintLastTime, new Date());
- updateWrapper.set(TjOrder::getDownloadLastTime, new Date());
- updateWrapper.set(TjOrder::getStatus, TjConstants.TJ_END);
- tjOrderService.update(updateWrapper);
- });
- try {
- byte[] mergePDF = PDFDocumentUtil.mergePDFs(base64Pdfs);
- String s = Base64.getEncoder().encodeToString(mergePDF);
- return AjaxResult.success().put("file",s);
- // 鏈湴鐢熸垚娴嬭瘯
-// String PDF_FILE = "d:\\Users\\w\\Desktop\\test.pdf";
-// BufferedOutputStream outputStream = new BufferedOutputStream(new FileOutputStream(PDF_FILE));
-// outputStream.write(mergePDF);
-// outputStream.flush();
-// outputStream.close();
- } catch (DocumentException | IOException e) {
- e.printStackTrace();
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("鎵归噺鐢熸垚澶辫触");
- }
- }
-
- /**
- * 閫氳繃sql 閲嶆暣鏁版嵁妯℃澘 鍏ㄩ儴閲嶆柊鐢熸垚
- * @param tjNumbers
- * @return
- */
-// private AjaxResult makeReport(List<String > tjNumbers) {
+// private AjaxResult sqlGetReportToMake(List<String> tjNumbers) {
+// LambdaQueryWrapper<TjReport> tjReportLambdaQueryWrapper = new LambdaQueryWrapper<>();
+// tjReportLambdaQueryWrapper.in(TjReport::getTjNumber, tjNumbers);
+// List<TjReport> list = tjReportService.list(tjReportLambdaQueryWrapper);
// ArrayList<String> base64Pdfs = new ArrayList<>();
-// for (String tjNumber : tjNumbers) {
-// LambdaQueryWrapper<TjOrder> wq = new LambdaQueryWrapper<>();
-// wq.eq(TjOrder::getTjNumber, tjNumber);
-// TjOrder tjOrder = tjOrderService.getOne(wq);
-// if (null != tjOrder) {
-// LambdaQueryWrapper<TjReportTemplate> tjReportTemplateLambdaQueryWrapper = new LambdaQueryWrapper<>();
-// TjReportTemplate reportTemplate = null;
-// if (tjOrder.getTjCategory() != null) {
-// //鏌ヨ瀛楀吀
-// LambdaQueryWrapper<SysDictData> wqq = new LambdaQueryWrapper<>();
-// wqq.eq(SysDictData::getDictType, "dict_tjtype");
-// wqq.eq(SysDictData::getDictValue, tjOrder.getTjCategory());
-// SysDictData one = dictDataService.getOne(wqq);
-// if (one != null) {
-// //鏌ヨ瀛楀吀
-// LambdaQueryWrapper<SysDictData> wqq1 = new LambdaQueryWrapper<>();
-// wqq1.eq(SysDictData::getDictType, "report_template_type");
-// wqq1.eq(SysDictData::getDictLabel, one.getDictLabel());
-// SysDictData one1 = dictDataService.getOne(wqq1);
-// if (one1 != null) {
-// tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getFlag, one1.getDictValue());
-// } else {
-// tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getFlag, 1);
-// }
-// } else {
-// tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getFlag, 1);
-// }
-// tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getOpen, 0);
-// reportTemplate = reportTemplateService.getOne(tjReportTemplateLambdaQueryWrapper);
-// } else {
-// tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getOpen, 0);
-// reportTemplate = reportTemplateService.list(tjReportTemplateLambdaQueryWrapper).get(2);
-// }
-//
-// String template = reportTemplate.getTemplate();
-// String userId = null;
-// if (template == null) {
-// // 娌℃湁璇ユā鏉�
-// continue;
-// }
-// // --------浠ヤ笂------- 鏍规嵁鏁版嵁搴撲腑鐨勬ā鏉夸簩杩涘埗鏂囦欢 杞琾df 鍒涘缓鏂囦欢澶� 灏唒df鏀捐繘鏈湴鏂囦欢澶�
-// LambdaQueryWrapper<TjCustomer> wq1 = new LambdaQueryWrapper<>();
-// wq1.eq(TjCustomer::getCusId, tjOrder.getUserId());
-// TjCustomer tjCustomer = tjCustomerService.getOne(wq1);
-// LambdaQueryWrapper<DictComp> wq111 = new LambdaQueryWrapper<>();
-// wq111.eq(DictComp::getDrugManufacturerId, tjOrder.getFirmId());
-// DictComp dictComp = dictCompService.getOne(wq111);
-// LambdaQueryWrapper<TjOrderDetail> wq2 = new LambdaQueryWrapper<>();
-// wq2.eq(TjOrderDetail::getOrderId, tjOrder.getOrderId());
-// wq2.isNotNull(TjOrderDetail::getFlowingWaterId);
-// List<TjOrderDetail> list = tjOrderDetailService.list(wq2);
-// for (TjOrderDetail tjOrderDetail : list) {
-// TjProject tjProject = projectService.selectTjProjectByProId(tjOrderDetail.getProId());
-// tjOrderDetail.setProject(tjProject);
-// }
-// // 鍏辫鑰楁椂5695姣 浠ヤ笅浠g爜鑰楁椂3528
-// // TODO PDF鍒涘缓浼樺寲
-// long pdfMkStart = System.currentTimeMillis();
-// ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
-// PdfStamper ps = null;
-// PdfReader reader = null;
-// try {
-// // 璇诲叆pdf琛ㄥ崟
-// reader = new PdfReader(new ByteArrayInputStream(Base64.getDecoder().decode(template)));
-// // 鏍规嵁琛ㄥ崟鐢熸垚涓�涓柊鐨刾df
-// ps = new PdfStamper(reader, byteArrayOutputStream);
-// // 鑾峰彇pdf琛ㄥ崟
-// AcroFields form = ps.getAcroFields();
-// //璇ュ瓧浣撻�犳垚绫诲瀷涓嶅潎鍖�锛屼絾鏄痯df杞浘鐗囦笉涔辩爜
-// BaseFont bf = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
-// form.addSubstitutionFont(bf);
-// // 濉厖鏁版嵁缁欒〃鏍�
-// Map<String, Object> data = new HashMap<>();
-// // 璁剧疆鐢ㄦ埛淇℃伅
-// setUserInfo(tjNumber, tjOrder, tjCustomer, dictComp, list, data);
-// //灏侀潰椤典笅闈㈢殑鎬绘寤鸿鏄剧ず
-// if (tjOrder.getCheckAdvice() == null) {
-// data.put("remark", "鏃�");
-// } else {
-// data.put("remark", tjOrder.getCheckAdvice());
-// }
-// //灏侀潰椤典笅闈㈢殑鎬绘寤鸿鏄剧ず
-// if (tjOrder.getCheckDoctor() == null) {
-// data.put("docname", "鏃�");
-// } else {
-// data.put("docname", tjOrder.getCheckDoctor());
-// }
-// //寮傚父椤圭洰
-//// data.put("yichang", "銆�1銆戝眻鍏変笉姝n" +
-//// "銆�2銆戞墎妗冧綋鑲モ激\n" +
-//// "銆�3銆戜綋閲嶆寚鏁板饩糪n" +
-//// "銆�4銆戔編鑴傚紓甯革紙鎬昏儐鍥洪唶澧炩炯锛涒舰娌逛笁閰饩硷級\n" +
-//// "銆�5銆懳�-饩曟皑閰拌浆绉婚叾澧炩炯锛涘ぉ饣斿啲姘ㄩ吀姘ㄥ熀杞Щ閰跺饩硷紱涓欐皑閰告皑鍩鸿浆绉婚叾澧炩炯\n" +
-//// "銆�6銆戣交饩勪腑搴﹁剛鑲倽");
-//
-// //鎷兼帴閲嶅ぇ闃虫�х粨鏋�
-// StringBuffer str = new StringBuffer();
-// str.append("銆愰噸澶ч槼鎬ч」鐩�慭n");
-// LambdaQueryWrapper<TjBigPositive> bigPositiveLambdaQueryWrapper = new LambdaQueryWrapper<>();
-// bigPositiveLambdaQueryWrapper.eq(TjBigPositive::getTjNumber, tjNumber);
-// final List<TjBigPositive> list1 = tjBigPositiveService.list(bigPositiveLambdaQueryWrapper);
-// if (list1 != null && list1.size() > 0) {
-// for (int i = 0; i < list1.size(); i++) {
-// str.append(i + 1).append("銆�").append(list1.get(i).getProName()).append(";\n");
-// }
-// } else {
-// str.append(" 鏃狅紱\n");
-// }
-// //鎷兼帴寮傚父椤圭洰
-// str.append("銆愬紓甯告儏鍐甸」鐩�慭n");
-// if (list.size() > 0) {
-//// for (int i = 0; i < list.size(); i++) {
-//// if (list.get(i).getExceptionDesc() == 1) {
-//// str.append(i + 1).append("銆�").append(projectService.getById(list.get(i).getProId()).getProName()).append(";\n");
-//// }
-//// }
-// int[] index = {0};
-// List<TjOrderDetail> collect = list.stream()
-// .filter(item -> item.getExceptionDesc() == 1).collect(Collectors.toList());
-// if (collect.isEmpty()) {
-// str.append(" 鏃狅紱\n");
-// } else {
-// collect.forEach(item -> str.append(index[0]++ + 1).append("銆�").append(projectService.getById(item.getProId()).getProName()).append(";\n"));
-// }
-// } else {
-// str.append(" 鏃狅紱\n");
-// }
-// //寮傚父椤圭洰
-// data.put("yichang", str.toString());
-// // 閬嶅巻data 缁檖df琛ㄥ崟琛ㄦ牸璧嬪��
-// for (String key : data.keySet()) {
-// form.setField(key, data.get(key).toString());
-// }
-// //璁剧疆涓烘棤娉曠紪杈�
-// ps.setFormFlattening(true);
-// ps.close();
-// reader.close();
-// // 灏嗕慨鏀瑰悗鐨凱DF鍐呭鍐欏叆
-// byte[] bytes = byteArrayOutputStream.toByteArray();
-// // 鍒涘缓鏂扮殑PDF鏂囨。
-// Document document = new Document(PageSize.A4);
-// ByteArrayOutputStream finalOutPut = new ByteArrayOutputStream();
-// PdfCopy copy = new PdfCopy(document, finalOutPut);
-// document.open();
-// reader = new PdfReader(bytes);
-// int numberOfPages = reader.getNumberOfPages();
-// for (int i = 1; i <= numberOfPages; i++) {
-// PdfImportedPage page = copy.getImportedPage(reader, i);
-// copy.addPage(page);
-// }
-// // 娣诲姞璇︽儏椤�
-// document.newPage();
-// reader.close();
-// ByteArrayOutputStream infoByteArrayOutputStream = setInfoPage(userId, tjNumber);
-// reader = new PdfReader(infoByteArrayOutputStream.toByteArray());
-// int numberOfPages1 = reader.getNumberOfPages();
-// for (int i = 1; i <= numberOfPages1; i++) {
-// PdfImportedPage page = copy.getImportedPage(reader, i);
-// copy.addPage(page);
-// }
-// infoByteArrayOutputStream.close();
-// // 蹇冪數鍥句互鍙婇檮浠�
-// // 鍥犳暟鎹簱琛ㄥ瓨鏀綽ase64瀵艰嚧鏌ヨ缂撴參 杩欓噷鎵ц缂撴參
-// // 鍦ㄨ繖閲屽鍔犱竴鏉℃煡璇ount 瀵逛簬娌℃湁杩藉姞闄勪欢鐨� 鎻愬崌閫熷害
-// long fujianStart = System.currentTimeMillis();
-// LambdaQueryWrapper<TjReport> queryWrapper = new LambdaQueryWrapper<>();
-// queryWrapper.eq(TjReport::getTjNumber, tjNumber)
-// .and(item -> item.eq(TjReport::getType, "闄勪欢").or().eq(TjReport::getType, "蹇冪數鍥�"));
-// Integer selectCount = tjReportService.getSelectCount(queryWrapper);
-// if (selectCount > 0) {
-// String base64XinDianTu = null;
-// String base64FuJian = null;
-// List<TjReport> reportList = tjReportService.list(queryWrapper);
-// TjReport xinDianTu = null;
-// TjReport fuJian = null;
-// if (!reportList.isEmpty()) {
-// for (TjReport tjReport : reportList) {
-// if ("闄勪欢".equals(tjReport.getType())) {
-// fuJian = tjReport;
-// base64FuJian = fuJian.getReport();
-// } else {
-// xinDianTu = tjReport;
-// base64XinDianTu = xinDianTu.getReport();
-// }
-// }
-// }
-// if (xinDianTu != null) {
-// if (fuJian != null) {
-// addPageByPDFBase64(copy, base64FuJian);
-// document.newPage();
-// addPageByPDFBase64(copy, base64XinDianTu);
-// } else {
-// addPageByPDFBase64(copy, base64XinDianTu);
-// }
-// } else {
-// if (fuJian != null) {
-// addPageByPDFBase64(copy, base64FuJian);
-// }
-// }
-// }
-// copy.close();
-// base64Pdfs.add(Base64.getEncoder().encodeToString(finalOutPut.toByteArray()));
-// document.close();
-// finalOutPut.close();
-// reader.close();
-// //淇敼order琛ㄤ腑鐨勬墦鍗版姤鍛婃椂闂翠负褰撳墠鏃堕棿
-// LambdaUpdateWrapper<TjOrder> updateWrapper = new LambdaUpdateWrapper<>();
-// updateWrapper.eq(TjOrder::getTjNumber, tjNumber);
-// updateWrapper.set(TjOrder::getReportTime, new Date());
-// updateWrapper.set(TjOrder::getPrintLastTime, new Date());
-// updateWrapper.set(TjOrder::getDownloadLastTime, new Date());
-// updateWrapper.set(TjOrder::getStatus, TjConstants.TJ_END);
-// tjOrderService.update(updateWrapper);
-// } catch (Exception e) {
-// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
-// e.printStackTrace();
-// }
+// for (TjReport report : list) {
+// if (report == null || report.getReport() == null) {
+// // 娌℃湁璇ユ姤鍛� 鐩存帴璺宠繃
+// continue;
// }
+// base64Pdfs.add(report.getReport());
// }
+// tjNumbers.forEach(tjNumber ->{
+// LambdaUpdateWrapper<TjOrder> updateWrapper = new LambdaUpdateWrapper<>();
+// updateWrapper.eq(TjOrder::getTjNumber, tjNumber);
+// updateWrapper.set(TjOrder::getPrintLastTime, new Date());
+// updateWrapper.set(TjOrder::getDownloadLastTime, new Date());
+// updateWrapper.set(TjOrder::getStatus, TjConstants.TJ_END);
+// tjOrderService.update(updateWrapper);
+// });
// try {
-// byte[] mergePDFs = PDFDocumentUtil.mergePDFs(base64Pdfs);
+// byte[] mergePDF = PDFDocumentUtil.mergePDFs(base64Pdfs);
+// String s = Base64.getEncoder().encodeToString(mergePDF);
+// return AjaxResult.success().put("file",s);
// // 鏈湴鐢熸垚娴嬭瘯
-// String PDF_FILE = "d:\\Users\\w\\Desktop\\test.pdf";
-// BufferedOutputStream outputStream = new BufferedOutputStream(new FileOutputStream(PDF_FILE));
-// outputStream.write(mergePDFs);
-// outputStream.flush();
-// outputStream.close();
+//// String PDF_FILE = "d:\\Users\\w\\Desktop\\test.pdf";
+//// BufferedOutputStream outputStream = new BufferedOutputStream(new FileOutputStream(PDF_FILE));
+//// outputStream.write(mergePDF);
+//// outputStream.flush();
+//// outputStream.close();
// } catch (DocumentException | IOException e) {
// e.printStackTrace();
+// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
// return AjaxResult.error("鎵归噺鐢熸垚澶辫触");
// }
-// return AjaxResult.success();
// }
+
+ private AjaxResult sqlGetReportToMake(List<String> tjNumbers, String value) {
+// LambdaQueryWrapper<TjReport> tjReportLambdaQueryWrapper = new LambdaQueryWrapper<>();
+// tjReportLambdaQueryWrapper.in(TjReport::getTjNumber, tjNumbers);
+// List<TjReport> list = tjReportService.list(tjReportLambdaQueryWrapper);
+ ArrayList<String> base64Pdfs = new ArrayList<>();
+// for (TjReport report : list) {
+// if (report == null || report.getReport() == null) {
+// // 娌℃湁璇ユ姤鍛� 鐩存帴璺宠繃
+// continue;
+// }
+// base64Pdfs.add(report.getReport());
+// }
+
+ //鍖哄煙鐗堜綋妫�娣诲姞闄㈠尯缂栫爜
+// String key = DataSourceContextHolder.getDataSourceKey();
+// key = key.replace("ltkjpeis10_","");
+
+ if(null !=tjNumbers && !tjNumbers.isEmpty()){
+ for (String number : tjNumbers) {
+ TjOrder order = tjOrderService.getOrderByTjNum(number);
+ TjCustomer tjCustomer = tjCustomerService.getById( order.getUserId());
+ String filePath = value + File.separator + File.separator + tjCustomer.getCusId() + order.getTjNumber() + tjCustomer.getCusName() + "_鎶ュ憡.pdf";
+ try {
+ // 璇诲彇鏂囦欢涓哄瓧鑺傛暟缁�
+ Path path = Paths.get(filePath);
+ byte[] fileBytes = Files.readAllBytes(path);
+ // 灏嗗瓧鑺傛暟缁勮浆鎹负 Base64 瀛楃涓�
+ String base64String = Base64.getEncoder().encodeToString(fileBytes);
+ base64Pdfs.add(base64String);
+
+ //淇濆瓨鎵撳嵃鏁版嵁璁板綍
+ TjReportPrint print=new TjReportPrint();
+ print.setTjNumber(order.getTjNumber());
+ print.setPrintBy(SecurityUtils.getLoginUser().getUser().getNickName());
+ print.setPrintTime(new Date());
+ print.setPrintStatus("宸叉墦鍗�");
+ if (printService.save(print)) {
+ order.setPrintLastTime(new Date());
+ order.setStatus(TjConstants.TJ_END);
+ tjOrderService.updateById(order);
+ }
+
+ } catch (IOException e) {
+ e.printStackTrace();
+ log.error(String.valueOf(e));
+ }
+ }
+ try {
+ byte[] mergePDF = PDFDocumentUtil.mergePDFs(base64Pdfs);
+ String s = Base64.getEncoder().encodeToString(mergePDF);
+ return AjaxResult.success().put("file",s);
+ } catch (DocumentException | IOException e) {
+ e.printStackTrace();
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+ return AjaxResult.error("鎵归噺鐢熸垚澶辫触");
+ }
+ }
+ return AjaxResult.error("鎵归噺鐢熸垚澶辫触");
+ }
}
--
Gitblit v1.8.0