| | |
| | | |
| | | //从文件地址读入PDF文件 仅存储一次 |
| | | // TODO: 2023/3/21 将模板保存到数据库 一次使用后注释 |
| | | // String base64String = PDFBinaryUtil.getPDFBinary("E:\\体检报告模板.pdf"); |
| | | // System.out.println(base64String); |
| | | // String base64String = PDFBinaryUtil.getPDFBinary("D:\\Tjreport\\体检模板4.pdf"); |
| | | // TjReportTemplate tem = new TjReportTemplate(); |
| | | // tem.setName("体检报告模板4"); |
| | | // tem.setRemark("体检报告模板4"); |
| | | // tem.setTemplate(base64String); |
| | | // tem.setFlag("1"); |
| | | // tem.setOpen("0"); |
| | | // reportTemplateService.save(tem); |
| | | // TODO: 2023/3/21 将心电图保存到数据库 一次使用后注释 暂时用于测试 |
| | | // String base64String = PDFBinaryUtil.getPDFBinary("E:\\心电图.pdf"); |
| | | // System.out.println(base64String); |
| | | // TjReport tem = new TjReport(); |
| | | // tem.setTjNumber(tjNumber); |
| | | // tem.setReport(base64String); |
| | | // tem.setType("心电图"); |
| | | // tjReportService.save(tem); |
| | | // // TODO: 2023/3/21 将心电图保存到数据库 一次使用后注释 暂时用于测试 |
| | | // String base64String2 = PDFBinaryUtil.getPDFBinary("D:\\Tjreport\\心电图1.pdf"); |
| | | // TjReport tem2 = new TjReport(); |
| | | // tem2.setTjNumber(tjNumber); |
| | | // tem2.setReport(base64String2); |
| | | // tem2.setType("心电图"); |
| | | // tjReportService.save(tem2); |
| | | // |
| | | // String base64String1 = PDFBinaryUtil.getPDFBinary("D:\\Tjreport\\附件2.pdf"); |
| | | // TjReport tem1 = new TjReport(); |
| | | // tem1.setTjNumber(tjNumber); |
| | | // tem1.setReport(base64String1); |
| | | // tem1.setType("附件"); |
| | | // tjReportService.save(tem1); |
| | | // |
| | | // String base64String3 = PDFBinaryUtil.getPDFBinary("D:\\Tjreport\\医学名词.pdf"); |
| | | // TjReport tem3 = new TjReport(); |
| | | // tem3.setTjNumber(tjNumber); |
| | | // tem3.setReport(base64String3); |
| | | // tem3.setType("医学名词"); |
| | | // tjReportService.save(tem3); |
| | | |
| | | |
| | | int num = tjOrderRemarkService.getTjYqOrderRemarkByTjNum(tjNumber); |
| | | if(num >0) return AjaxResult.error("有延期项目暂不能生成报告!!!"); |
| | | |
| | | LambdaQueryWrapper<TjReportTemplate> tjReportTemplateLambdaQueryWrapper = new LambdaQueryWrapper<>(); |
| | | tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getFlag, 2); |
| | | tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getFlag, 1); |
| | | tjReportTemplateLambdaQueryWrapper.eq(TjReportTemplate::getOpen, 0); |
| | | TjReportTemplate one1 = reportTemplateService.getOne(tjReportTemplateLambdaQueryWrapper); |
| | | String template = one1.getTemplate(); |
| | |
| | | |
| | | // 填充数据给表格 |
| | | Map<String, Object> data = new HashMap<>(); |
| | | data.put("name", tjCustomer.getCusName()); |
| | | |
| | | //填充性别:判断男女 |
| | | Long cusSex = tjCustomer.getCusSex(); |
| | | String sex; |
| | | String name1; |
| | | String tjtype; |
| | | if (cusSex == 0) { |
| | | sex = "男"; |
| | | name1=tjCustomer.getCusName()+"先生"; |
| | | } else { |
| | | sex = "女"; |
| | | name1=tjCustomer.getCusName()+"女士"; |
| | | } |
| | | data.put("name",tjCustomer.getCusName()); |
| | | data.put("cusId",tjCustomer.getCusId()); |
| | | data.put("name1",name1); |
| | | if ("1".equals(tjOrder.getTjType())) { |
| | | tjtype = "团队"; |
| | | data.put("tjtype",tjtype); |
| | | } else { |
| | | tjtype = "个人"; |
| | | data.put("tjtype",tjtype); |
| | | } |
| | | data.put("dstype","统一"); |
| | | data.put("sex", sex); |
| | | data.put("age", DateUtil.ageOfNow(tjCustomer.getCusBrithday())); |
| | | data.put("tjnumber", tjNumber); |
| | | data.put("tjdate", DateUtils.parseDateToStr("yyyy/MM/dd", tjOrder.getCreateTime())); |
| | | data.put("phone", tjCustomer.getCusPhone()); |
| | | data.put("idcard", MatchUtils.hideIdCardNum(tjCustomer.getCusIdcard())); |
| | | data.put("num1",list.size()); |
| | | data.put("num2",0); |
| | | data.put("num3",4); |
| | | if (dictComp == null) { |
| | | data.put("work", "无"); |
| | | } else { |
| | |
| | | if (tjOrder.getCheckAdvice() == null) { |
| | | data.put("remark", "无"); |
| | | } else { |
| | | data.put("remark", "总检建议:"+tjOrder.getCheckAdvice()); |
| | | 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】轻⾄中度脂肪肝"); |
| | | |
| | | // 遍历data 给pdf表单表格赋值 |
| | | for (String key : data.keySet()) { |
| | |
| | | os.close(); |
| | | reader.close(); |
| | | |
| | | //====================================以上封面页,以下详情页 |
| | | //文档对象 实现A4纸页面 |
| | | Document document = new Document(PageSize.A4); |
| | | //document.setMarginMirroring(true); |
| | |
| | | pdfWriter.setPageEvent(new MyHeaderFooter());// 页眉页脚 |
| | | |
| | | document.open(); |
| | | |
| | | document.add(new Header("健康体检结果","健康体检结果")); |
| | | |
| | | |
| | | Map<TjOrderRemark, List<TjPdfVO>> tjOrderRemarkObjectMap = addTable(tjNumber); |
| | | for (Map.Entry<TjOrderRemark, List<TjPdfVO>> entry : tjOrderRemarkObjectMap.entrySet()) { |
| | |
| | | pdfWriter.close(); |
| | | outputStream.close(); |
| | | |
| | | // TODO: 2023/3/29 查询附件pdf 比如心电图 |
| | | /*LambdaQueryWrapper<TjReport> rtwq = new LambdaQueryWrapper<>(); |
| | | // TODO: 2023/3/29 查询附件pdf 如心电图、附件 |
| | | LambdaQueryWrapper<TjReport> rtwq1 = new LambdaQueryWrapper<>(); |
| | | rtwq1.eq(TjReport::getType, "医学名词"); |
| | | // rtwq1.eq(TjReport::getTjNumber, tjNumber); |
| | | TjReport one11111 = tjReportService.getOne(rtwq1); |
| | | String report1 = one11111.getReport(); |
| | | PDFBinaryUtil.base64StringToPDF(report1, FileUtil.mkdir(value).getPath() + "\\" + userId + "医学名词.pdf"); |
| | | |
| | | LambdaQueryWrapper<TjReport> rtwq = new LambdaQueryWrapper<>(); |
| | | rtwq.eq(TjReport::getType, "心电图"); |
| | | // rtwq.eq(TjReport::getTjNumber, tjNumber); |
| | | TjReport one1111 = tjReportService.getOne(rtwq); |
| | | String report = one1111.getReport(); |
| | | PDFBinaryUtil.base64StringToPDF(report, FileUtil.mkdir(value).getPath() + "\\" + userId + "心电图.pdf");*/ |
| | | PDFBinaryUtil.base64StringToPDF(report, FileUtil.mkdir(value).getPath() + "\\" + userId + "心电图.pdf"); |
| | | |
| | | LambdaQueryWrapper<TjReport> rtwq12 = new LambdaQueryWrapper<>(); |
| | | rtwq12.eq(TjReport::getType, "附件"); |
| | | // rtwq12.eq(TjReport::getTjNumber, tjNumber); |
| | | TjReport one111112 = tjReportService.getOne(rtwq12); |
| | | String report12 = one111112.getReport(); |
| | | PDFBinaryUtil.base64StringToPDF(report12, FileUtil.mkdir(value).getPath() + "\\" + userId + "附件.pdf"); |
| | | |
| | | |
| | | //合并 |
| | | //String[] files1 = {value + "\\" + userId + "体检报告封面页.pdf", value + "\\" + userId + "体检报告项目详情页.pdf",value + "\\" + userId + "心电图.pdf"}; |
| | | String[] files1 = {value + "\\" + userId + "体检报告封面页.pdf", value + "\\" + userId + "体检报告项目详情页.pdf"}; |
| | | String[] files1 = {value + "\\" + userId + "体检报告封面页.pdf", value + "\\" + userId + "体检报告项目详情页.pdf",value + "\\" + userId + "医学名词.pdf",value + "\\" + userId + "附件.pdf",value + "\\" + userId + "心电图.pdf"}; |
| | | String outputPath1 = value + "\\"; |
| | | String outputFileName1 = tjNumber +tjCustomer.getCusName()+ "的体检报告.pdf"; |
| | | String outputFileName1 = userId+tjNumber +tjCustomer.getCusName()+ "_体检报告.pdf"; |
| | | |
| | | File file1 = new File(outputPath1 + outputFileName1); |
| | | List<File> f = new ArrayList<>(); |
| | |
| | | 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); |
| | | |
| | | |
| | | LambdaQueryWrapper<TjReport> we = new LambdaQueryWrapper<>(); |
| | | we.eq(TjReport::getTjNumber, tjNumber); |
| | | we.eq(TjReport::getType,"体检报告"); |
| | |
| | | return; |
| | | } |
| | | String userId = SecurityUtils.getLoginUser().getUsername(); |
| | | PDFBinaryUtil.base64StringToPDF(one.getReport(), FileUtil.mkdir(value).getPath() + "\\" + userId+tjNumber + "_体检报告.pdf"); |
| | | PDFBinaryUtil.base64StringToPDF(one.getReport(), FileUtil.mkdir(value).getPath() + "\\" + userId+tjNumber +tjCustomer.getCusName()+ "_体检报告.pdf"); |
| | | //String filePath = one.getPath(); |
| | | String filePath = value+ "\\" + userId+tjNumber + "_体检报告.pdf"; |
| | | String filePath = value+ "\\" + userId+tjNumber +tjCustomer.getCusName()+ "_体检报告.pdf"; |
| | | File f = new File(filePath); |
| | | if (filePath.isEmpty()){ |
| | | System.out.println("文件不存在!"); |