From 2a9583fd376451ca77a0400af7f3a02d1b80e7f5 Mon Sep 17 00:00:00 2001 From: zhaowenxuan <chacca165@163.com> Date: 星期二, 24 六月 2025 18:04:34 +0800 Subject: [PATCH] 2025-06-24 --- ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java | 115 ++++++++++++++++++++++++++++++++++----------------------- 1 files changed, 68 insertions(+), 47 deletions(-) diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java index 3084389..95519f5 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/his/HisPDFUtil.java @@ -95,8 +95,8 @@ private LtkjHysqdService ltkjHysqdService; @Autowired private LtkjGetexamreportinfoService ltkjGetexamreportinfoService; - @Value("${path.filePath}") - private String value; +// @Value("${path.filePath}") +// private String value; @Value("${path.reportServer}") private String urlValue; @Autowired @@ -875,6 +875,7 @@ String s2 = sysConfigService.selectConfigByKey("tjreport_font_size_second_page_title"); String s3 = sysConfigService.selectConfigByKey("tjreport_font_size_result_title"); String s4 = sysConfigService.selectConfigByKey("tjreport_font_size_zongjian"); + String value = sysConfigService.selectConfigByKey("path_filePath"); // String hospName = sysDeptController.getdangqiandengluyuanqu().get("msg").toString(); if (StrUtil.isNotBlank(s1) && Integer.parseInt(s1) > 10) DEFAULT_FONT_SIZE = Integer.parseInt(s1); else DEFAULT_FONT_SIZE = 10; @@ -2075,6 +2076,7 @@ */ private void savePDFFile(String outputFileName1, TjOrder tjOrder, TjCustomer customer, ByteArrayOutputStream finalOutPut) throws IOException, DocumentException, InterruptedException { // 绗竴姝ワ細鐢熸垚鏂囦欢骞朵繚瀛� + String value = sysConfigService.selectConfigByKey("path_filePath"); String key = DataSourceContextHolder.getDataSourceKey(); key = key.replace("ltkjpeis10_",""); String outputPath1 = value + File.separator + key + File.separator; @@ -2193,7 +2195,7 @@ LambdaQueryWrapper<TjProject> wqqq = new LambdaQueryWrapper<>(); wqqq.eq(TjProject::getProId, entry.getKey().getProId()); TjProject one11 = projectService.getOne(wqqq); - if (entry.getValue() == null || entry.getValue().isEmpty()) continue; + if (entry.getValue() == null || entry.getValue().isEmpty() || entry.getValue().equals("null")) continue; //鍒ゆ柇璇ラ」鐩槸鍚﹂渶瑕佹墦鍗版姤鍛� if (null != one11 && "Y".equals(one11.getNeedReport())) { TjOrderRemark orderRemark = entry.getKey(); @@ -2268,7 +2270,7 @@ paragraph.setLeading(5f); document1.add(ppp); if (StrUtil.isNotBlank(entry.getKey().getRemark())) { - ppp = new Paragraph("缁撹锛�" + entry.getKey().getRemark(), remarkFonts); + ppp = new Paragraph("缁撹锛�" + entry.getKey().getRemark().replaceAll("null",""), remarkFonts); paragraph.setAlignment(Element.ALIGN_LEFT); paragraph.setLeading(5f); document1.add(ppp); @@ -2387,7 +2389,7 @@ paragraph.setLeading(5f); document1.add(ppp); if (StrUtil.isNotBlank(entry.getKey().getRemark())) { - ppp = new Paragraph("缁撹锛�" + entry.getKey().getRemark(), remarkFonts); + ppp = new Paragraph("缁撹锛�" + entry.getKey().getRemark().replaceAll("null",""), remarkFonts); paragraph.setAlignment(Element.ALIGN_LEFT); paragraph.setLeading(5f); document1.add(ppp); @@ -2510,7 +2512,7 @@ paragraph.setLeading(5f); document1.add(ppp); if (StrUtil.isNotBlank(entry.getKey().getRemark())) { - ppp = new Paragraph("缁撹锛�" + entry.getKey().getRemark(), remarkFonts); + ppp = new Paragraph("缁撹锛�" + entry.getKey().getRemark().replaceAll("null",""), remarkFonts); paragraph.setAlignment(Element.ALIGN_LEFT); paragraph.setLeading(5f); document1.add(ppp); @@ -2529,16 +2531,34 @@ if (isPacs) { Paragraph pp; Paragraph ppp; - if (StrUtil.isNotBlank(value.get(0).getSj()) && StrUtil.isNotBlank(value.get(0).getProResult())) { - pp = PdfUtils.setParagraph(remarkFonts, "妫�鏌ユ墍瑙侊細"); - document1.add(pp); - ppp = new Paragraph(value.get(0).getSj() != null ? value.get(0).getSj() : value.get(0).getProResult(), remarkFonts); - paragraph.setAlignment(Element.ALIGN_LEFT); - paragraph.setLeading(5f); - document1.add(ppp); + String key = sysConfigService.selectConfigByKey("makepdfuseorderdetailproresult"); + if (StrUtil.isNotBlank(key) && !key.equals("Y")){ + if (StrUtil.isNotBlank(value.get(0).getSj())) { + pp = PdfUtils.setParagraph(remarkFonts, "妫�鏌ユ墍瑙侊細"); + document1.add(pp); + ppp = new Paragraph(value.get(0).getSj(), remarkFonts); + paragraph.setAlignment(Element.ALIGN_LEFT); + paragraph.setLeading(5f); + document1.add(ppp); + } + }else{ + if (StrUtil.isNotBlank(value.get(0).getSj()) || StrUtil.isNotBlank(value.get(0).getProResult())) { + pp = PdfUtils.setParagraph(remarkFonts, "妫�鏌ユ墍瑙侊細"); + document1.add(pp); + ppp = new Paragraph(value.get(0).getSj() != null ? value.get(0).getSj() : value.get(0).getProResult(), remarkFonts); + paragraph.setAlignment(Element.ALIGN_LEFT); + paragraph.setLeading(5f); + document1.add(ppp); + } } - pp = PdfUtils.setParagraph(remarkFonts, "妫�鏌ユ彁绀猴細"+ (value.get(0).getTs() != null ? value.get(0).getTs() : value.get(0).getProResult())); +// pp = PdfUtils.setParagraph(remarkFonts, "妫�鏌ユ彁绀猴細"+ (value.get(0).getTs() != null ? value.get(0).getTs() : value.get(0).getProResult())); +// document1.add(pp); + pp = PdfUtils.setParagraph(remarkFonts, "妫�鏌ユ彁绀猴細"); document1.add(pp); + ppp = new Paragraph((value.get(0).getTs() != null ? value.get(0).getTs() : value.get(0).getProResult()), remarkFonts); + paragraph.setAlignment(Element.ALIGN_LEFT); + paragraph.setLeading(5f); + document1.add(ppp); // ppp = new Paragraph(value.get(0).getTs() != null ? value.get(0).getTs() : value.get(0).getProResult(), remarkFonts); // paragraph.setAlignment(Element.ALIGN_LEFT); // paragraph.setLeading(5f); @@ -2576,7 +2596,7 @@ paragraph.setLeading(5f); document1.add(ppp); if (StrUtil.isNotBlank(entry.getKey().getRemark())) { - ppp = new Paragraph("缁撹锛�" + entry.getKey().getRemark(), remarkFonts); + ppp = new Paragraph("缁撹锛�" + entry.getKey().getRemark().replaceAll("null",""), remarkFonts); paragraph.setAlignment(Element.ALIGN_LEFT); paragraph.setLeading(5f); document1.add(ppp); @@ -2995,12 +3015,7 @@ * @param customer */ private void notHuaYanData(String tjNumber, Map<TjOrderRemark, List<TjPdfVO>> printReport, TjOrder one, TjCustomer customer) { -// LambdaQueryWrapper<TjOrderRemark> wqq = new LambdaQueryWrapper<>(); -// wqq.eq(TjOrderRemark::getTjNumber, tjNumber); -// wqq.ne(TjOrderRemark::getDeptId, "241"); -// wqq.in(TjOrderRemark::getDeptId, "269", "270", "253", "254", "255", "257"); -// wqq.notIn(TjOrderRemark::getProId, projectService.getNneedReprotProId()); -// List<TjOrderRemark> tjOrderRemarks = tjOrderRemarkService.list(wqq); + List<TjOrderRemark> tjOrderRemarks = tjOrderRemarkService.notHuaYanData(tjNumber); for (TjOrderRemark tjOrderRemark : tjOrderRemarks) { printReport.put(tjOrderRemark, null); @@ -3019,7 +3034,14 @@ if (tjOrderDetail.getProject().getProParentId().equals(entry.getKey().getProId()) && entry.getKey().getType() == 1) { TjPdfVO tjPdfVO = new TjPdfVO(); tjPdfVO.setProName(tjOrderDetail.getProject().getProName()); - tjPdfVO.setProResult(tjOrderDetail.getProResult()); + if(tjProject.getProDelivery()==1){ + if(StringUtil.isNotBlank(tjOrderDetail.getConclusion())){ + tjPdfVO.setProResult(tjOrderDetail.getProResult()+" "+tjOrderDetail.getConclusion()); + } + }else { + tjPdfVO.setProResult(tjOrderDetail.getProResult()); + } + tjPdfVO.setExc(tjOrderDetail.getExceptionDesc()); if (null != tjProject.getProMetering()) { tjPdfVO.setCompany(tjProject.getProMetering()); @@ -3028,6 +3050,7 @@ } tjPdfVO.setProId(String.valueOf(tjOrderDetail.getProject().getProId())); tjPdfVO.setPid(String.valueOf(tjProject.getProParentId())); + tjPdfVO.setXh(tjProject.getXh()); // LambdaQueryWrapper<LtkjExamJcbgd> wrapper = new LambdaQueryWrapper<>(); // wrapper.eq(LtkjExamJcbgd::getTjh, tjNumber); // wrapper.eq(LtkjExamJcbgd::getXmdm, String.valueOf(tjOrderDetail.getProject().getProParentId())); @@ -3036,24 +3059,20 @@ } } if(!tjPdfVOS.isEmpty()){ - tjPdfVOS=tjPdfVOS.stream().sorted(Comparator.comparing(TjPdfVO::getProName, Collator.getInstance(Locale.CHINA))).collect(Collectors.toList()); - tjPdfVOS = tjPdfVOS.stream() - .sorted(Comparator.comparingInt( - tjPdfVO -> tjPdfVO.getProName().length() // 鏍规嵁鍚嶅瓧鐨勯暱搴︽帓搴� - )) - .collect(Collectors.toList()); +// tjPdfVOS=tjPdfVOS.stream().sorted(Comparator.comparing(TjPdfVO::getProName, Collator.getInstance(Locale.CHINA))).collect(Collectors.toList()); +// tjPdfVOS = tjPdfVOS.stream() +// .sorted(Comparator.comparingInt( +// tjPdfVO -> tjPdfVO.getProName().length() // 鏍规嵁鍚嶅瓧鐨勯暱搴︽帓搴� +// )) +// .collect(Collectors.toList()); + tjPdfVOS=tjPdfVOS.stream().sorted(Comparator.comparing(TjPdfVO::getXh)).collect(Collectors.toList()); } printReport.put(entry.getKey(), tjPdfVOS); } } private void pacsJianChaData(String tjNumber, Map<TjOrderRemark, List<TjPdfVO>> printReport, TjOrder one, TjCustomer customer) { -// LambdaQueryWrapper<TjOrderRemark> wqq = new LambdaQueryWrapper<>(); -// wqq.eq(TjOrderRemark::getTjNumber, tjNumber); -// wqq.ne(TjOrderRemark::getDeptId, "241"); -// wqq.in(TjOrderRemark::getDeptId, "269", "270", "253", "254", "255", "257"); -// wqq.notIn(TjOrderRemark::getProId, projectService.getNneedReprotProId()); -// List<TjOrderRemark> tjOrderRemarks = tjOrderRemarkService.list(wqq); + List<TjOrderRemark> tjOrderRemarks = tjOrderRemarkService.pacsJianChaData(tjNumber); for (TjOrderRemark tjOrderRemark : tjOrderRemarks) { printReport.put(tjOrderRemark, null); @@ -3071,6 +3090,7 @@ if (tjOrderDetail.getProject().getProParentId().equals(entry.getKey().getProId()) && entry.getKey().getType() == 1 && !ids.contains(String.valueOf(tjOrderDetail.getProject().getProParentId()))) { + TjProject tjProjectq = projectService.getById(tjOrderDetail.getProject().getProParentId()); TjPdfVO tjPdfVO = new TjPdfVO(); tjPdfVO.setProName(tjOrderDetail.getProject().getProName()); tjPdfVO.setProResult(tjOrderDetail.getProResult()); @@ -3082,15 +3102,24 @@ } tjPdfVO.setProId(String.valueOf(tjOrderDetail.getProject().getProId())); LambdaQueryWrapper<LtkjExamJcbgd> wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(LtkjExamJcbgd::getTjh, tjNumber); - wrapper.like(LtkjExamJcbgd::getXmdm, String.valueOf(tjOrderDetail.getProject().getProParentId())); - wrapper.orderByDesc(LtkjExamJcbgd::getZdsj); + wrapper.eq(LtkjExamJcbgd::getTjh, one.getCardId()) + .and(w -> w.like(LtkjExamJcbgd::getXmdm, String.valueOf(tjOrderDetail.getProject().getProParentId())) + .or() + .eq(LtkjExamJcbgd::getXmdm, String.valueOf(tjProjectq.getHisXmbm()))).orderByDesc(LtkjExamJcbgd::getZdsj); List<LtkjExamJcbgd> list = jcbgdService.list(wrapper); if (null != list && !list.isEmpty()) { LtkjExamJcbgd jcbgd = list.get(0); if (jcbgd != null) { - tjPdfVO.setTs(jcbgd.getYxbx()); - tjPdfVO.setSj(jcbgd.getBgNr()); + String yxbx = jcbgd.getYxbx(); + String bgNr = jcbgd.getBgNr(); + // 姝e垯琛ㄨ揪寮忥細鍖归厤鏁板瓧鍚庤窡 '.' 鎴� '銆�' + String regex = "\\d+[\\.,銆乚"; + // 浣跨敤姝e垯鏇挎崲锛屽尮閰嶇殑鏁板瓧鍚庢坊鍔犳崲琛岀 + if(StringUtil.isNotBlank(yxbx)) yxbx = yxbx.replaceAll(regex, "\n$0"); + if(StringUtil.isBlank(bgNr)) bgNr = ""; + if(StringUtil.isBlank(yxbx)) yxbx = ""; + tjPdfVO.setTs(yxbx); + tjPdfVO.setSj(bgNr); tjPdfVO.setShys(jcbgd.getShysxm()); tjPdfVO.setProName(jcbgd.getXmmc()); ids += "|" + jcbgd.getXmdm(); @@ -3100,14 +3129,6 @@ } } } -// if(!tjPdfVOS.isEmpty()){ -// tjPdfVOS=tjPdfVOS.stream().sorted(Comparator.comparing(TjPdfVO::getProName, Collator.getInstance(Locale.CHINA))).collect(Collectors.toList()); -// tjPdfVOS = tjPdfVOS.stream() -// .sorted(Comparator.comparingInt( -// tjPdfVO -> tjPdfVO.getProName().length() // 鏍规嵁鍚嶅瓧鐨勯暱搴︽帓搴� -// )) -// .collect(Collectors.toList()); -// } printReport.put(entry.getKey(), tjPdfVOS); } } -- Gitblit v1.8.0