zjh
2024-01-04 8720970864b887e34adc94e5bf5b19e709a1c042
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReportController.java
@@ -229,7 +229,6 @@
    public AjaxResult toPdf(@PathVariable("TjNumber") @ApiParam(value = "体检号") String tjNumber) {
        //从文件地址读入PDF文件  仅存储一次
        // TODO: 2023/3/21 将模板保存到数据库 一次使用后注释
//        String base64String = PDFBinaryUtil.getPDFBinary("D:\\Tjreport\\体检模板4.pdf");
//        TjReportTemplate tem = new TjReportTemplate();
//        tem.setName("体检报告模板4");
@@ -238,7 +237,6 @@
//        tem.setFlag("1");
//        tem.setOpen("0");
//        reportTemplateService.save(tem);
//        // TODO: 2023/3/21 将心电图保存到数据库 一次使用后注释  暂时用于测试
//        String base64String2 = PDFBinaryUtil.getPDFBinary("D:\\Tjreport\\心电图1.pdf");
//        TjReport tem2 = new TjReport();
//        tem2.setTjNumber(tjNumber);
@@ -430,11 +428,11 @@
                    //设置文档的页边距就是距离页面边上的距离,分别为:左边距,右边距,上边距,下边距
                    document.setMargins(70, 70, 40, 40);
                    //生成pdf的位置以及名称
                    String fileName = value + "\\" + userId + "体检报告项目详情页.pdf";
                    String fileName = value + "\\" + userId +tjNumber+ "体检报告项目详情页.pdf";
                    OutputStream outputStream = Files.newOutputStream(Paths.get(fileName));
                    PdfWriter pdfWriter = PdfWriter.getInstance(document, outputStream);
                    pdfWriter.setPageEvent(new MyHeaderFooter());// 页眉页脚
                    //pdfWriter.setPageEvent(new MyHeaderFooter());// 页眉页脚
                    document.open();
@@ -583,15 +581,14 @@
                    pdfWriter.close();
                    outputStream.close();
                    // TODO: 2023/3/29  查询附件pdf 如心电图、附件
                    LambdaQueryWrapper<TjReport> rtwq1 = new LambdaQueryWrapper<>();
                    rtwq1.eq(TjReport::getType, "医学名词");
//                    rtwq1.eq(TjReport::getTjNumber, tjNumber);
                    TjReport one11111 = tjReportService.getOne(rtwq1);
                    if(null !=one11111){
                        String report1 = one11111.getReport();
                        PDFBinaryUtil.base64StringToPDF(report1, FileUtil.mkdir(value).getPath() + "\\" + userId + "医学名词.pdf");
                    }
//                    LambdaQueryWrapper<TjReport> rtwq1 = new LambdaQueryWrapper<>();
//                    rtwq1.eq(TjReport::getType, "医学名词");
////                    rtwq1.eq(TjReport::getTjNumber, tjNumber);
//                    TjReport one11111 = tjReportService.getOne(rtwq1);
//                    if(null !=one11111){
//                        String report1 = one11111.getReport();
//                        PDFBinaryUtil.base64StringToPDF(report1, FileUtil.mkdir(value).getPath() + "\\" + userId + "医学名词.pdf");
//                    }
                    LambdaQueryWrapper<TjReport> rtwq = new LambdaQueryWrapper<>();
                    rtwq.eq(TjReport::getType, "心电图");
@@ -611,7 +608,7 @@
                        PDFBinaryUtil.base64StringToPDF(report12, FileUtil.mkdir(value).getPath() + "\\" + userId + "附件.pdf");
                    }
                    //合并
                    String[] files1 = {value + "\\" + userId + "体检报告封面页.pdf", value + "\\" + userId + "体检报告项目详情页.pdf", value + "\\" + userId + "医学名词.pdf", value + "\\" + userId + "附件.pdf", value + "\\" + userId + "心电图.pdf"};
                    String[] files1 = {value + "\\" + userId + "体检报告封面页.pdf", value + "\\" + userId + tjNumber+"体检报告项目详情页.pdf", value + "\\" + userId + "附件.pdf", value + "\\" + userId + "心电图.pdf"};
                    String outputPath1 = value + "\\";
                    String outputFileName1 = userId + tjNumber + tjCustomer.getCusName() + "_体检报告.pdf";
@@ -630,10 +627,9 @@
                    tjReport.setType("体检报告");
                    tjReportService.save(tjReport);
                    //TODO 2023/2/3 16:21 生成体检报告pdf后删除本地文件
                    //FileUtil.del(value + "\\" + tjNumber + "体检报告.pdf");
                    //FileUtil.del(value + "\\" + userId + "体检报告封面模板.pdf");
                    //FileUtil.del(value + "\\" + userId + "体检报告项目详情页.pdf");
                    //FileUtil.del(value + "\\" + userId +tjNumber+ "体检报告项目详情页.pdf");
                    //FileUtil.del(value + "\\" + userId + "体检报告封面页.pdf");
                    //FileUtil.del(value + "\\" + userId + "心电图.pdf");
@@ -1391,25 +1387,20 @@
        LambdaQueryWrapper<TjOrder> wqq = new LambdaQueryWrapper<>();
        wqq.like(TjOrder::getUserId, cusId);
        List<TjOrder> orderList = tjOrderService.list(wqq);
        if (orderList!=null){
        if (orderList!=null && orderList.size()>0){
            for (TjOrder tjOrder : orderList) {
                if (tjOrder!=null){
                    LambdaQueryWrapper<TjReport> wq = new LambdaQueryWrapper<>();
                    wq.eq(TjReport::getTjNumber, tjOrder.getTjNumber());
                    wq.eq(TjReport::getType,"体检报告");
                    res.add(tjReportService.getOne(wq));
                    TjReport one = tjReportService.getOne(wq);
                    if(null !=one){
                        res.add(one);
                    }
                }
            }
            return AjaxResult.success(res);
        }
        return AjaxResult.error("暂无历史报告");
    }
}