From c42f62b32bac302a7ac9fcde7489f7c5fc6e11aa Mon Sep 17 00:00:00 2001 From: zjh <1084500556@qq.com> Date: 星期五, 06 十二月 2024 15:35:17 +0800 Subject: [PATCH] zjh20241205-3 --- ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReportController.java | 134 +++++++++++++++++++++++++------------------- 1 files changed, 75 insertions(+), 59 deletions(-) diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReportController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReportController.java index 57ceb07..5441cdd 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReportController.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReportController.java @@ -58,7 +58,7 @@ */ @RestController @RequestMapping("/system/report") -@Api(tags = "浣撴鎶ュ憡") +@Api(tags = "AAAA_浣撴鎶ュ憡") @Transactional public class TjReportController extends BaseController { @Resource @@ -105,13 +105,15 @@ @ApiOperation(value = "浠庢湰鍦板瓨鍌ㄦā鏉垮埌鏁版嵁搴�") public AjaxResult savePdf() { //浠庢枃浠跺湴鍧�璇诲叆PDF鏂囦欢 浠呭瓨鍌ㄤ竴娆� - String base64String = PDFBinaryUtil.getPDFBinary("D:\\Tjreport\\浣撴妯℃澘5.pdf"); + String base64String = PDFBinaryUtil.getPDFBinary(configService.selectConfigByKey("default_pdf5Template")); + reportTemplateService.remove(new LambdaQueryWrapper<TjReportTemplate>().eq(TjReportTemplate::getName,"浣撴鎶ュ憡妯℃澘5")); TjReportTemplate tem = new TjReportTemplate(); tem.setName("浣撴鎶ュ憡妯℃澘5"); tem.setRemark("浣撴鎶ュ憡妯℃澘5"); tem.setTemplate(base64String); tem.setFlag("1"); tem.setOpen("0"); + tem.setCreateTime(DateUtil.date()); final boolean save = reportTemplateService.save(tem); if (save) { return AjaxResult.success("淇濆瓨鎴愬姛"); @@ -271,7 +273,7 @@ @ApiOperation(value = "鎵撳嵃浣撴鎶ュ憡涓簆df") @Transactional public AjaxResult toPdf(@PathVariable("TjNumber") @ApiParam(value = "浣撴鍙�") String tjNumber) { - AjaxResult error = null; + // AjaxResult error = null; // 涔嬪墠鐨勪唬鐮� 浼樺寲閫熷害 // System.out.println("----------------------------------oldFun寮�濮�-------------------------------------------------------"); // error = oldFun(tjNumber); @@ -297,24 +299,29 @@ // return error; // } // return AjaxResult.success("璇ョ敤鎴蜂綋妫�鏈畬鎴愶紝涓嶈兘鎵撳嵃鎶ュ憡锛侊紒锛�"); - int num = tjOrderRemarkService.getTjYqOrderRemarkByTjNum(tjNumber); - if (num > 0) { - return AjaxResult.error("鏈夊欢鏈熼」鐩殏涓嶈兘鐢熸垚鎶ュ憡!!!"); + String config = configService.selectConfigByKey("sfjcwjhyqxm"); + if(null != config && config.equalsIgnoreCase("Y")){ + int num = tjOrderRemarkService.getTjYqOrderRemarkByTjNum(tjNumber); + if (num > 0) return AjaxResult.error("瀛樺湪鏈鎴栧欢鏈熼」鐩殏涓嶈兘鐢熸垚鎶ュ憡!!!"); } - //鍒ゆ柇琛ㄤ腑鏈夋病鏈夎浣撴鎶ュ憡 涓嶈兘閲嶅鐢熸垚 - LambdaQueryWrapper<TjReport> wqa = new LambdaQueryWrapper<>(); - wqa.eq(TjReport::getTjNumber, tjNumber); - wqa.eq(TjReport::getType, "浣撴鎶ュ憡"); - Integer count = tjReportService.getSelectCount(wqa); - if (count != 0) { - return AjaxResult.error("璇ュ鎴锋姤鍛婂凡鐢熸垚锛佷笉鑳介噸澶嶇敓鎴愶紒鍙洿鎺ラ瑙堟垨鎵撳嵃锛�"); - } + // String configByKey = configService.selectConfigByKey("sfkqdyhis"); String configByKey = "Y"; LambdaQueryWrapper<TjOrder> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(TjOrder::getTjNumber, tjNumber); TjOrder tjOrder = tjOrderService.getOne(queryWrapper); if (null != tjOrder) { + + //鍒ゆ柇琛ㄤ腑鏈夋病鏈夎浣撴鎶ュ憡 涓嶈兘閲嶅鐢熸垚 + LambdaQueryWrapper<TjReport> wqa = new LambdaQueryWrapper<>(); + wqa.eq(TjReport::getTjNumber, tjNumber); + wqa.eq(TjReport::getType, "浣撴鎶ュ憡"); + Integer count = tjReportService.getSelectCount(wqa); + + if (tjOrder.getReportTime() !=null || count != 0 ) { + return AjaxResult.error("璇ュ鎴锋姤鍛婂凡鐢熸垚锛佷笉鑳介噸澶嶇敓鎴愶紒鍙洿鎺ラ瑙堟垨鎵撳嵃锛�"); + } + LambdaQueryWrapper<TjReportTemplate> tjReportTemplateLambdaQueryWrapper = new LambdaQueryWrapper<>(); tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getFlag, 1); tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getOpen, 0); @@ -382,30 +389,7 @@ wq1.eq(TjCustomer::getCusId, tjOrder.getUserId()); TjCustomer tjCustomer = tjCustomerService.getOne(wq1); try { - AjaxResult ajaxResult = hisPDFUtil.hisPDF(tjOrder, tjCustomer, reportTemplate); - if (!ajaxResult.get("code").toString().equals("200")) { - TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); - } else { - Long userId = tjCustomer.getCusId(); - String outputFileName1 = userId + tjNumber + tjCustomer.getCusName() + "_鎶ュ憡.pdf"; - TjReport tjReport = new TjReport(); - tjReport.setTjNumber(String.valueOf(tjNumber)); - tjReport.setPath(urlValue + outputFileName1); - String outputPath1 = value + "\\"; - String pdfBinary = getPDFBinary(outputPath1 + outputFileName1); - tjReport.setReport(pdfBinary); - tjReport.setType("浣撴鎶ュ憡"); - tjReport.setPrint("pdf"); - tjReportService.save(tjReport); - 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); - } - return ajaxResult; + return shengchengbgmoban(tjNumber, tjOrder, tjCustomer, reportTemplate); } catch (Exception e) { TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); e.printStackTrace(); @@ -421,6 +405,37 @@ return AjaxResult.error(); } + public AjaxResult shengchengbgmoban(String tjNumber, TjOrder tjOrder, TjCustomer tjCustomer, TjReportTemplate reportTemplate) throws Exception { + AjaxResult ajaxResult = hisPDFUtil.hisPDF(tjOrder, tjCustomer, reportTemplate); + if (!ajaxResult.get("code").toString().equals("200")) { + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + } else { + Long userId = tjCustomer.getCusId(); + String outputFileName1 = userId + tjNumber + tjCustomer.getCusName() + "_鎶ュ憡.pdf"; + TjReport tjReport = new TjReport(); + tjReport.setTjNumber(String.valueOf(tjNumber)); + tjReport.setPath(urlValue + outputFileName1); + String outputPath1 = value + File.separator; + String pdfBinary = getPDFBinary(outputPath1 + outputFileName1); + tjReport.setReport(pdfBinary); + tjReport.setType("浣撴鎶ュ憡"); + tjReport.setPrint("pdf"); + tjReportService.save(tjReport); + Date date = new Date(); + // LambdaUpdateWrapper<TjOrder> updateWrapper = new LambdaUpdateWrapper<>(); +// updateWrapper.eq(TjOrder::getTjNumber, tjNumber); +// updateWrapper.set(TjOrder::getReportTime, date); +// updateWrapper.set(TjOrder::getPrintLastTime, date); +// updateWrapper.set(TjOrder::getDownloadLastTime,date); +// updateWrapper.set(TjOrder::getStatus, TjConstants.TJ_END); + tjOrder.setStatus(TjConstants.TJ_END); + tjOrder.setReportTime(date); + tjOrder.setPrintLastTime(date); + tjOrder.setDownloadLastTime(date); + tjOrderService.updateById(tjOrder); + } + return ajaxResult; + } /** @@ -684,7 +699,7 @@ System.out.println("鏂囦欢淇濆瓨鍓嶈�楁椂锛�" + (fujianEnd - pdfMkStart)); // 淇濆瓨pdf鏂囦欢 copy.close(); - String outputPath1 = value + "\\"; + String outputPath1 = value + File.separator; String outputFileName1 = userId + tjNumber + tjCustomer.getCusName() + "new_浣撴鎶ュ憡.pdf"; File file = new File(outputPath1 + outputFileName1); BufferedOutputStream outputStream = new BufferedOutputStream(new FileOutputStream(file)); @@ -1010,7 +1025,7 @@ String template = reportTemplate.getTemplate(); String userId = SecurityUtils.getLoginUser().getUsername(); if (template != null) { - PDFBinaryUtil.base64StringToPDF(template, FileUtil.mkdir(value).getPath() + "\\" + userId + "浣撴鎶ュ憡灏侀潰妯℃澘.pdf"); + PDFBinaryUtil.base64StringToPDF(template, FileUtil.mkdir(value).getPath() + File.separator + userId + "浣撴鎶ュ憡灏侀潰妯℃澘.pdf"); } // --------浠ヤ笂------- 鏍规嵁鏁版嵁搴撲腑鐨勬ā鏉夸簩杩涘埗鏂囦欢 杞琾df 鍒涘缓鏂囦欢澶� 灏唒df鏀捐繘鏈湴鏂囦欢澶� @@ -1033,8 +1048,8 @@ tjOrderDetail.setProject(tjProject); } - String inputFileName = value + "\\" + userId + "浣撴鎶ュ憡灏侀潰妯℃澘.pdf"; - String outputFileName = value + "\\" + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf"; + String inputFileName = value + File.separator + userId + "浣撴鎶ュ憡灏侀潰妯℃澘.pdf"; + String outputFileName = value + File.separator + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf"; OutputStream os = null; PdfStamper ps = null; PdfReader reader = null; @@ -1157,7 +1172,7 @@ //璁剧疆鏂囨。鐨勯〉杈硅窛灏辨槸璺濈椤甸潰杈逛笂鐨勮窛绂伙紝鍒嗗埆涓猴細宸﹁竟璺濓紝鍙宠竟璺濓紝涓婅竟璺濓紝涓嬭竟璺� document.setMargins(70, 70, 40, 40); //鐢熸垚pdf鐨勪綅缃互鍙婂悕绉� - String fileName = value + "\\" + userId + tjNumber + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf"; + String fileName = value + File.separator + userId + tjNumber + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf"; OutputStream outputStream = Files.newOutputStream(Paths.get(fileName)); PdfWriter pdfWriter = PdfWriter.getInstance(document, outputStream); @@ -1324,7 +1339,7 @@ // TjReport one11111 = tjReportService.getOne(rtwq1); // if(null !=one11111){ // String report1 = one11111.getReport(); -// PDFBinaryUtil.base64StringToPDF(report1, FileUtil.mkdir(value).getPath() + "\\" + userId + "鍖诲鍚嶈瘝.pdf"); +// PDFBinaryUtil.base64StringToPDF(report1, FileUtil.mkdir(value).getPath() + File.separator + userId + "鍖诲鍚嶈瘝.pdf"); // } LambdaQueryWrapper<TjReport> rtwq = new LambdaQueryWrapper<>(); @@ -1333,7 +1348,7 @@ TjReport one1111 = tjReportService.getOne(rtwq); if (null != one1111) { String report = one1111.getReport(); - PDFBinaryUtil.base64StringToPDF(report, FileUtil.mkdir(value).getPath() + "\\" + tjNumber + userId + "蹇冪數鍥�.pdf"); + PDFBinaryUtil.base64StringToPDF(report, FileUtil.mkdir(value).getPath() + File.separator + tjNumber + userId + "蹇冪數鍥�.pdf"); } LambdaQueryWrapper<TjReport> rtwq12 = new LambdaQueryWrapper<>(); @@ -1342,27 +1357,27 @@ TjReport one111112 = tjReportService.getOne(rtwq12); if (null != one111112) { String report12 = one111112.getReport(); - PDFBinaryUtil.base64StringToPDF(report12, FileUtil.mkdir(value).getPath() + "\\" + tjNumber + userId + "闄勪欢.pdf"); + PDFBinaryUtil.base64StringToPDF(report12, FileUtil.mkdir(value).getPath() + File.separator + tjNumber + userId + "闄勪欢.pdf"); } //鍚堝苟 String[] files1 = null; if (one1111 != null) { if (one111112 != null) { - files1 = new String[]{value + "\\" + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + "\\" + userId + tjNumber + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf", value + "\\" + tjNumber + userId + "闄勪欢.pdf", value + "\\" + tjNumber + userId + "蹇冪數鍥�.pdf"}; + files1 = new String[]{value + File.separator + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + File.separator + userId + tjNumber + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf", value + File.separator + tjNumber + userId + "闄勪欢.pdf", value + File.separator + tjNumber + userId + "蹇冪數鍥�.pdf"}; } else { - files1 = new String[]{value + "\\" + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + "\\" + userId + tjNumber + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf", value + "\\" + tjNumber + userId + "蹇冪數鍥�.pdf"}; + files1 = new String[]{value + File.separator + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + File.separator + userId + tjNumber + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf", value + File.separator + tjNumber + userId + "蹇冪數鍥�.pdf"}; } } else { if (one111112 != null) { - files1 = new String[]{value + "\\" + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + "\\" + userId + tjNumber + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf", value + "\\" + tjNumber + userId + "闄勪欢.pdf"}; + files1 = new String[]{value + File.separator + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + File.separator + userId + tjNumber + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf", value + File.separator + tjNumber + userId + "闄勪欢.pdf"}; } else { - files1 = new String[]{value + "\\" + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + "\\" + userId + tjNumber + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf"}; + files1 = new String[]{value + File.separator + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + File.separator + userId + tjNumber + "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf"}; } } //鍚堝苟 -// String[] files1 = {value + "\\" + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + "\\" + userId + tjNumber+"浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf", value + "\\" +tjNumber+ userId + "闄勪欢.pdf", value + "\\" + tjNumber + userId + "蹇冪數鍥�.pdf"}; - String outputPath1 = value + "\\"; +// String[] files1 = {value + File.separator + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf", value + File.separator + userId + tjNumber+"浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf", value + File.separator +tjNumber+ userId + "闄勪欢.pdf", value + File.separator + tjNumber + userId + "蹇冪數鍥�.pdf"}; + String outputPath1 = value + File.separator; String outputFileName1 = userId + tjNumber + tjCustomer.getCusName() + "_浣撴鎶ュ憡.pdf"; File file1 = new File(outputPath1 + outputFileName1); @@ -1381,11 +1396,11 @@ tjReport.setPrint("pdf"); tjReportService.save(tjReport); - //FileUtil.del(value + "\\" + tjNumber + "浣撴鎶ュ憡.pdf"); - //FileUtil.del(value + "\\" + userId + "浣撴鎶ュ憡灏侀潰妯℃澘.pdf"); - //FileUtil.del(value + "\\" + userId +tjNumber+ "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf"); - //FileUtil.del(value + "\\" + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf"); - //FileUtil.del(value + "\\" + userId + "蹇冪數鍥�.pdf"); + //FileUtil.del(value + File.separator + tjNumber + "浣撴鎶ュ憡.pdf"); + //FileUtil.del(value + File.separator + userId + "浣撴鎶ュ憡灏侀潰妯℃澘.pdf"); + //FileUtil.del(value + File.separator + userId +tjNumber+ "浣撴鎶ュ憡椤圭洰璇︽儏椤�.pdf"); + //FileUtil.del(value + File.separator + userId + "浣撴鎶ュ憡灏侀潰椤�.pdf"); + //FileUtil.del(value + File.separator + userId + "蹇冪數鍥�.pdf"); //淇敼order琛ㄤ腑鐨勬墦鍗版姤鍛婃椂闂翠负褰撳墠鏃堕棿 @@ -1711,9 +1726,9 @@ } String userId = SecurityUtils.getLoginUser().getUsername(); - PDFBinaryUtil.base64StringToPDF(one.getReport(), FileUtil.mkdir(value).getPath() + "\\" + userId + tjNumber + tjCustomer.getCusName() + "_浣撴鎶ュ憡.pdf"); + PDFBinaryUtil.base64StringToPDF(one.getReport(), FileUtil.mkdir(value).getPath() + File.separator + userId + tjNumber + tjCustomer.getCusName() + "_浣撴鎶ュ憡.pdf"); //String filePath = one.getPath(); - String filePath = value + "\\" + userId + tjNumber + tjCustomer.getCusName() + "_浣撴鎶ュ憡.pdf"; + String filePath = value + File.separator + userId + tjNumber + tjCustomer.getCusName() + "_浣撴鎶ュ憡.pdf"; File f = new File(filePath); if (filePath.isEmpty()) { System.out.println("鏂囦欢涓嶅瓨鍦紒"); @@ -2037,6 +2052,7 @@ } else { one.setStatus(TjConstants.TJ_CONFIRM); } + one.setReportTime(null); //灏嗙姸鎬佹敼涓烘湭瀹℃牳 // UpdateWrapper updateWrapper=new UpdateWrapper(); // updateWrapper.eq("tj_number",tjNumber); -- Gitblit v1.8.0