From 53d149f491dba554ee035599059a1bf65ea92df2 Mon Sep 17 00:00:00 2001 From: zhaowenxuan <chacca165@163.com> Date: 星期三, 12 二月 2025 17:36:13 +0800 Subject: [PATCH] 增加手动同步lis接口 --- ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReportController.java | 424 ++++++++++++++++++++++++++++++++++------------------ 1 files changed, 276 insertions(+), 148 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..fbf5621 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 @@ -39,6 +39,8 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; +import jodd.util.StringUtil; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Propagation; @@ -56,9 +58,10 @@ * @author ltkj * @date 2022-12-06 */ +@Slf4j @RestController @RequestMapping("/system/report") -@Api(tags = "浣撴鎶ュ憡") +@Api(tags = "AAAA_浣撴鎶ュ憡") @Transactional public class TjReportController extends BaseController { @Resource @@ -100,22 +103,33 @@ private ITjBigPositiveService tjBigPositiveService; @Autowired private HisPDFUtil hisPDFUtil; + @Autowired + private IDictHospService dictHospService; + @Autowired + private ITjReportPrintService printService; + @Autowired + private TjOrderYcxmService ycxmService; @GetMapping("/savePdf") @ApiOperation(value = "浠庢湰鍦板瓨鍌ㄦā鏉垮埌鏁版嵁搴�") public AjaxResult savePdf() { //浠庢枃浠跺湴鍧�璇诲叆PDF鏂囦欢 浠呭瓨鍌ㄤ竴娆� - String base64String = PDFBinaryUtil.getPDFBinary("D:\\Tjreport\\浣撴妯℃澘5.pdf"); - TjReportTemplate tem = new TjReportTemplate(); - tem.setName("浣撴鎶ュ憡妯℃澘5"); - tem.setRemark("浣撴鎶ュ憡妯℃澘5"); - tem.setTemplate(base64String); - tem.setFlag("1"); - tem.setOpen("0"); - final boolean save = reportTemplateService.save(tem); - if (save) { - return AjaxResult.success("淇濆瓨鎴愬姛"); + String base64String = PDFBinaryUtil.getPDFBinary(configService.selectConfigByKey("default_pdf5Template")); + if(StringUtil.isNotBlank(base64String)){ + 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("淇濆瓨鎴愬姛"); + } } + return AjaxResult.success("淇濆瓨澶辫触"); // String base64String2 = PDFBinaryUtil.getPDFBinary("D:\\Tjreport\\蹇冪數鍥�1.pdf"); // TjReport tem2 = new TjReport(); @@ -271,7 +285,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 +311,35 @@ // return error; // } // return AjaxResult.success("璇ョ敤鎴蜂綋妫�鏈畬鎴愶紝涓嶈兘鎵撳嵃鎶ュ憡锛侊紒锛�"); - 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); + + TjOrder tjOrder = tjOrderService.getOrderByTjNum(tjNumber); if (null != tjOrder) { + String config = configService.selectConfigByKey("sfjcwjhyqxm"); + if(null != config && config.equalsIgnoreCase("Y")){ + int num = tjOrderRemarkService.getTjYqOrderRemarkByTjNum(tjNumber); + if (num > 0) { + tjOrder.setReportTime(null); + tjOrder.setCheckTime(null); + tjOrder.setCheckStatus(0); + tjOrder.setPrintLastTime(null); + tjOrderService.updateById(tjOrder); + return AjaxResult.error("瀛樺湪鏈鎴栧欢鏈熼」鐩殏涓嶈兘鐢熸垚鎶ュ憡!!!"); + } + } + //鍒ゆ柇琛ㄤ腑鏈夋病鏈夎浣撴鎶ュ憡 涓嶈兘閲嶅鐢熸垚 + 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 ) { +// tjOrder.setReportTime(null); +// tjOrder.setCheckTime(null); +// tjOrder.setCheckStatus(0); +// tjOrder.setPrintLastTime(null); +// tjOrderService.updateById(tjOrder); + return AjaxResult.error("璇ュ鎴锋姤鍛婂凡鐢熸垚锛佷笉鑳介噸澶嶇敓鎴愶紒鍙洿鎺ラ瑙堟垨鎵撳嵃锛�"); + } + LambdaQueryWrapper<TjReportTemplate> tjReportTemplateLambdaQueryWrapper = new LambdaQueryWrapper<>(); tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getFlag, 1); tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getOpen, 0); @@ -358,59 +383,43 @@ 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::getPrintLastTime, new Date()); +// updateWrapper.set(TjOrder::getDownloadLastTime, new Date()); updateWrapper.set(TjOrder::getStatus, TjConstants.TJ_END); tjOrderService.update(updateWrapper); return AjaxResult.success("宸茬敓鎴愭姤鍛婏紒鍙洿鎺ョ偣鍑婚瑙堬紒"); } - String hisRegistrationId = tjOrder.getCardId(); - Date createTime = tjOrder.getCreateTime(); - Date finishTime = tjOrder.getFinishTime(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - String ksrq = dateFormat.format(createTime); - String jsrq = dateFormat.format(new Date()); - HashMap<String, Object> params = new HashMap<>(); - params.put("his_registration_id", hisRegistrationId); - params.put("ksbm", ""); - params.put("pationid", ""); - params.put("ksrq", ksrq); - params.put("jsrq", jsrq); - params.put("pagecount", 100); - params.put("page", 1); +// String hisRegistrationId = tjOrder.getCardId(); +// Date createTime = tjOrder.getCreateTime(); +// SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); +// String ksrq = dateFormat.format(createTime); +// String jsrq = dateFormat.format(new Date()); +// HashMap<String, Object> params = new HashMap<>(); +// params.put("his_registration_id", hisRegistrationId); +// params.put("ksbm", ""); +// params.put("pationid", ""); +// params.put("ksrq", ksrq); +// params.put("jsrq", jsrq); +// params.put("pagecount", 100); +// params.put("page", 1); LambdaQueryWrapper<TjCustomer> wq1 = new LambdaQueryWrapper<>(); wq1.eq(TjCustomer::getCusId, tjOrder.getUserId()); TjCustomer tjCustomer = tjCustomerService.getOne(wq1); + LambdaQueryWrapper<TjReportTemplate> wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(TjReportTemplate::getFlag,"4"); + wrapper.eq(TjReportTemplate::getOpen,"1"); + TjReportTemplate zongJianYiShiQianMing = reportTemplateService.getOne(wrapper); 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,zongJianYiShiQianMing); } catch (Exception e) { TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); - e.printStackTrace(); - // 璋冪敤鎾ら攢 -// tjReportController.backOnlyCheckType(tjNumber); + log.error(String.valueOf(e)); + tjOrder.setReportTime(null); + tjOrder.setCheckTime(null); + tjOrder.setCheckStatus(0); + tjOrder.setPrintLastTime(null); + tjOrderService.updateById(tjOrder); + logger.error("鐢熸垚鎶ュ憡寮傚父"); return AjaxResult.error("鐢熸垚鎶ュ憡澶辫触"); } @@ -421,6 +430,46 @@ return AjaxResult.error(); } + public AjaxResult shengchengbgmoban(String tjNumber, TjOrder tjOrder, TjCustomer tjCustomer, TjReportTemplate reportTemplate,TjReportTemplate zongJianYiShiQianMing) { + AjaxResult ajaxResult = null; + try { +// ajaxResult = hisPDFUtil.hisPDF(tjOrder, tjCustomer, reportTemplate); +// ajaxResult = hisPDFUtil.hisPDFNew(tjOrder, tjCustomer, reportTemplate); + + ajaxResult = hisPDFUtil.hisPDFNew2(tjOrder, tjCustomer, reportTemplate,zongJianYiShiQianMing); + } catch (Exception e) { + e.printStackTrace(); + log.error(String.valueOf(e)); + } + 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 +733,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)); @@ -883,7 +932,8 @@ // 璁剧疆姝f枃瀛椾綋鏍峰紡锛�12鍙� Font textFont = PdfUtils.setFont(9); //鍒涘缓琛ㄦ牸 灏嗚〃澶村瓧浣撳拰姝f枃瀛椾綋鏀捐繘鍘� - PdfPTable table = PdfUtils.setTable(headFont, textFont, titles, value); + DictHosp dictHosp = dictHospService.list().get(0); + PdfPTable table = PdfUtils.setTable(headFont, textFont, titles, value,dictHosp.equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")); document.add(paragraph); document.add(table); //鍒ゆ柇澶囨敞鏄惁涓虹┖ 绌轰笉鑳芥樉绀簄ull @@ -937,6 +987,7 @@ } private AjaxResult oldFun(String tjNumber) { + DictHosp dictHosp = dictHospService.list().get(0); long startTime = System.currentTimeMillis(); int num = tjOrderRemarkService.getTjYqOrderRemarkByTjNum(tjNumber); if (num > 0) return AjaxResult.error("鏈夊欢鏈熼」鐩殏涓嶈兘鐢熸垚鎶ュ憡!!!"); @@ -1010,7 +1061,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 +1084,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 +1208,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); @@ -1263,7 +1314,7 @@ // 璁剧疆姝f枃瀛椾綋鏍峰紡锛�12鍙� Font textFont = PdfUtils.setFont(9); //鍒涘缓琛ㄦ牸 灏嗚〃澶村瓧浣撳拰姝f枃瀛椾綋鏀捐繘鍘� - PdfPTable table = PdfUtils.setTable(headFont, textFont, titles, value); + PdfPTable table = PdfUtils.setTable(headFont, textFont, titles, value,dictHosp.equals("婢勫悎鐭垮姟灞�涓績鍖婚櫌")); document.add(paragraph); document.add(table); @@ -1324,7 +1375,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 +1384,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 +1393,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 +1432,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琛ㄤ腑鐨勬墦鍗版姤鍛婃椂闂翠负褰撳墠鏃堕棿 @@ -1664,7 +1715,7 @@ we.eq(TjReport::getType, "浣撴鎶ュ憡"); TjReport one = tjReportService.getOne(we); if (one == null) { - return AjaxResult.error("鏆傛棤浣撴鎶ュ憡"); + return AjaxResult.error("鏆傛棤浣撴鎶ュ憡,璇锋挙鍥炲埌鎬绘鏈鏍搁〉闈�,闇�鎬绘鍖荤敓閲嶆柊瀹℃牳骞剁敓鎴愭姤鍛�!"); } if ("pdf".equals(one.getPrint())) { res.put("flag", "0"); @@ -1674,7 +1725,7 @@ res.put("url", one.getPath()); return AjaxResult.success(res); } else { - return AjaxResult.error("鏆傛棤浣撴鎶ュ憡"); + return AjaxResult.error("鏆傛棤浣撴鎶ュ憡,璇锋挙鍥炲埌鎬绘鏈鏍搁〉闈�,闇�鎬绘鍖荤敓閲嶆柊瀹℃牳骞剁敓鎴愭姤鍛�!"); } } @@ -1683,25 +1734,8 @@ @GetMapping("/preview/{flag}/{TjNumber}") @ApiOperation(value = "涓嬭浇浣撴鎶ュ憡") public void preview(HttpServletResponse response, @PathVariable("flag") boolean flag, @PathVariable("TjNumber") String tjNumber) { - //淇敼order琛ㄤ腑鐨勪笅杞芥姤鍛婃椂闂翠负褰撳墠鏃堕棿 - 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); - - - LambdaQueryWrapper<TjOrder> wq1 = new LambdaQueryWrapper<>(); - wq1.eq(TjOrder::getTjNumber, tjNumber); - TjOrder tjOrder = tjOrderService.getOne(wq1); - - - LambdaQueryWrapper<TjCustomer> wq2 = new LambdaQueryWrapper<>(); - wq2.eq(TjCustomer::getCusId, tjOrder.getUserId()); - TjCustomer tjCustomer = tjCustomerService.getOne(wq2); - - + TjOrder tjOrder = tjOrderService.getOrderByTjNum(tjNumber); + TjCustomer tjCustomer = tjCustomerService.getById( tjOrder.getUserId()); LambdaQueryWrapper<TjReport> we = new LambdaQueryWrapper<>(); we.eq(TjReport::getTjNumber, tjNumber); we.eq(TjReport::getType, "浣撴鎶ュ憡"); @@ -1709,11 +1743,9 @@ if (one == null) { return; } - String userId = SecurityUtils.getLoginUser().getUsername(); - PDFBinaryUtil.base64StringToPDF(one.getReport(), FileUtil.mkdir(value).getPath() + "\\" + userId + tjNumber + tjCustomer.getCusName() + "_浣撴鎶ュ憡.pdf"); - //String filePath = one.getPath(); - String filePath = value + "\\" + userId + tjNumber + tjCustomer.getCusName() + "_浣撴鎶ュ憡.pdf"; + PDFBinaryUtil.base64StringToPDF(one.getReport(), FileUtil.mkdir(value).getPath() + File.separator + 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("鏂囦欢涓嶅瓨鍦紒"); @@ -1746,6 +1778,103 @@ out = response.getOutputStream(); while ((len = br.read(bs)) > 0) { out.write(bs, 0, len); + } +// if(null !=tjOrder.getHeshouTime() && tjOrder.getHeshouStatus()==1){ +// TjReportPrint print=new TjReportPrint(); +// print.setTjNumber(tjNumber); +// print.setPrintBy(SecurityUtils.getLoginUser().getUser().getNickName()); +// print.setPrintTime(date); +// print.setPrintStatus("宸叉墦鍗�"); +// if (printService.save(print)) { +// tjOrder.setPrintLastTime(date); +// tjOrderService.updateById(tjOrder); +// } +// } + out.flush(); + out.close(); + br.close(); + fileInputStream.close(); + } catch (IOException e) { + e.printStackTrace(); + //System.out.println("pdf澶勭悊鏂囦欢寮傚父" + e); + } finally { + if (out != null) { + try { + out.close(); + br.close(); + fileInputStream.close(); + + } catch (IOException e) { + e.printStackTrace(); + } + } + } + } + + @GetMapping("/previewprint/{flag}/{TjNumber}/{sfdy}") + @ApiOperation(value = "涓嬭浇浣撴鎶ュ憡") + public void previewprint(HttpServletResponse response, @PathVariable("flag") boolean flag, @PathVariable("TjNumber") String tjNumber,@PathVariable("sfdy") String sfdy) { + + Date date = new Date(); + TjOrder tjOrder = tjOrderService.getOrderByTjNum(tjNumber); + + TjCustomer tjCustomer = tjCustomerService.getById( tjOrder.getUserId()); + + LambdaQueryWrapper<TjReport> we = new LambdaQueryWrapper<>(); + we.eq(TjReport::getTjNumber, tjNumber); + we.eq(TjReport::getType, "浣撴鎶ュ憡"); + TjReport one = tjReportService.getOne(we); + if (one == null) { + return; + } + + String userId = SecurityUtils.getLoginUser().getUsername(); + PDFBinaryUtil.base64StringToPDF(one.getReport(), FileUtil.mkdir(value).getPath() + File.separator + 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("鏂囦欢涓嶅瓨鍦紒"); + return; + } + BufferedInputStream br = null; + OutputStream out = null; + FileInputStream fileInputStream = null; + try { + fileInputStream = new FileInputStream(f); + br = new BufferedInputStream(fileInputStream); + byte[] bs = new byte[1024]; + int len = 0; + response.reset(); // 闈炲父閲嶈 + if (flag) { + // 鍦ㄧ嚎鎵撳紑鏂瑰紡 + URL u = new URL("file:///" + filePath); + //System.out.println(u); + String contentType = u.openConnection().getContentType(); + response.setContentType(contentType); + response.setHeader("Content-Disposition", "inline;filename=" + + userId + tjNumber + ".pdf"); + } else { + // 绾笅杞芥柟寮� + response.setContentType("application/x-msdownload"); + response.setContentType("application/pdf;charset=utf-8"); + response.setHeader("Content-Disposition", "attachment;filename=" + + userId + tjNumber + ".pdf"); + } + out = response.getOutputStream(); + while ((len = br.read(bs)) > 0) { + out.write(bs, 0, len); + } + if(null !=sfdy && sfdy.equals("1")){ + TjReportPrint print=new TjReportPrint(); + print.setTjNumber(tjNumber); + print.setPrintBy(SecurityUtils.getLoginUser().getUser().getNickName()); + print.setPrintTime(date); + print.setPrintStatus("宸叉墦鍗�"); + if (printService.save(print)) { + tjOrder.setPrintLastTime(date); + tjOrder.setStatus(TjConstants.TJ_END); + tjOrderService.updateById(tjOrder); + } } out.flush(); out.close(); @@ -2018,35 +2147,36 @@ wq1.eq("type", "浣撴鎶ュ憡"); TjReport tjReport = tjReportService.getOne(wq1); if (null != tjReport) { -// if (!tjReportService.remove(wq1)) { -// return AjaxResult.error("鎾ゅ洖澶辫触锛�"); -// } // 涓嶅湪浣跨敤閫昏緫鍒犻櫎 閫昏緫鍒犻櫎瀵艰嚧鎵撳嵃鎶ュ憡鐢熸垚 鏌ヨsql缂撴參 int i = tjReportService.deleteTjReportByReId(tjReport.getReId()); if (i == 0) { - return AjaxResult.error("鎾ゅ洖澶辫触锛�"); + return AjaxResult.error("鏆傛棤浣撴鎶ュ憡,璇锋挙鍥炲埌鎬绘鏈鏍搁〉闈�,闇�鎬绘鍖荤敓閲嶆柊瀹℃牳骞剁敓鎴愭姤鍛�!"); } } - QueryWrapper<TjOrder> wq2 = new QueryWrapper<>(); - wq2.eq("tj_number", tjNumber); - TjOrder one = tjOrderService.getOne(wq2); - one.setCheckStatus(0); - String config = configService.selectConfigByKey("tj_confirm"); - if ("Y".equals(config)) { - one.setStatus(TjConstants.TJ_CHECK); - } else { - one.setStatus(TjConstants.TJ_CONFIRM); - } - //灏嗙姸鎬佹敼涓烘湭瀹℃牳 -// UpdateWrapper updateWrapper=new UpdateWrapper(); -// updateWrapper.eq("tj_number",tjNumber); -// updateWrapper.set("check_status",0); - boolean update = tjOrderService.updateById(one); - if (update) { - return AjaxResult.success("鎾ゅ洖鎴愬姛锛�"); + TjOrder one = tjOrderService.getOrderByTjNum(tjNumber); + if(null !=one){ + if(null !=one.getHeshouTime() && one.getHeshouStatus()==1)return AjaxResult.error("鎶ュ憡宸叉牳鏀朵笉鍙挙鍥�!!!"); + one.setCheckStatus(0); + String config = configService.selectConfigByKey("tj_confirm"); + if ("Y".equals(config)) { + one.setStatus(TjConstants.TJ_CHECK); + } else { + one.setStatus(TjConstants.TJ_CONFIRM); + } + one.setReportTime(null); + one.setCheckTime(null); + one.setCheckDoctor(null); + one.setHeshouStatus(0); + one.setHeshouTime(null); + one.setHeshouDoctor(null); + one.setPrintLastTime(null); + one.setDownloadLastTime(null); + if (tjOrderService.updateById(one)) { + return AjaxResult.success("鎾ゅ洖鎴愬姛锛�"); + } } - return AjaxResult.error("鎾ゅ洖澶辫触锛�"); + return AjaxResult.error("璇ヤ汉鍛樹綋妫�璁板綍涓嶅瓨鍦�,璇锋牳瀹炰汉鍛樹俊鎭�!"); } @@ -2096,8 +2226,8 @@ LambdaQueryWrapper<TjOrder> wq2 = new LambdaQueryWrapper<>(); wq2.eq(TjOrder::getFirmId, firmId); wq2.eq(TjOrder::getFirmDeptId, firmDeptId); - wq2.eq(TjOrder::getTjType, "1"); - wq2.in(TjOrder::getStatus, 401, 402); + wq2.ne(TjOrder::getTjType, "2"); +// wq2.in(TjOrder::getStatus, 401, 402); final List<TjOrder> list = tjOrderService.list(wq2); for (TjOrder tjOrder : list) { @@ -2456,16 +2586,14 @@ @GetMapping("/tuanDuiYiChangBySex") @ApiOperation(value = "鐢熸垚鍥㈤槦浣撴鎶ュ憡鈥斺�旂敺濂冲紓甯哥粨鏋滅粺璁�") - public Map<String, List<Map<String, Object>>> tuanDuiYiChangBySex(@ApiParam(value = "鍗曚綅") @RequestParam String firmId, - @ApiParam(value = "閮ㄩ棬") @RequestParam String firmDeptId) { + public Map<String, List<Map<String, Object>>> tuanDuiYiChangBySex(@ApiParam(value = "鍗曚綅") @RequestParam String dwname) { Map<String, List<Map<String, Object>>> all = new HashMap<>(); LambdaQueryWrapper<TjOrder> wq2 = new LambdaQueryWrapper<>(); - wq2.eq(TjOrder::getFirmId, firmId); - wq2.eq(TjOrder::getFirmDeptId, firmDeptId); - wq2.eq(TjOrder::getTjType, "1"); - wq2.in(TjOrder::getStatus, 401, 402); + wq2.eq(TjOrder::getFirmName,dwname); + wq2.ne(TjOrder::getTjType, "2"); +// wq2.in(TjOrder::getStatus, 401, 402); final List<TjOrder> list = tjOrderService.list(wq2); List<String> tjNumberList = list.stream().map(TjOrder::getTjNumber).collect(Collectors.toList()); -- Gitblit v1.8.0