From 22c17adc3ec2a25e6656cd69961f49a888d433b3 Mon Sep 17 00:00:00 2001
From: zjh <zjh@888>
Date: 星期三, 28 二月 2024 17:06:19 +0800
Subject: [PATCH] zjh 本地 2024/02/28 -1

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjReportController.java |  127 +++++++++++++++++++++++++++++++++++++-----
 1 files changed, 112 insertions(+), 15 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 2ea25c9..2bfda41 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
@@ -91,14 +91,17 @@
     @Resource
     private ITbTransitionService transitionService;
 
+    @Autowired
+    private ITjBigPositiveService tjBigPositiveService;
+
     @GetMapping("/savePdf")
     @ApiOperation(value = "浠庢湰鍦板瓨鍌ㄦā鏉垮埌鏁版嵁搴�")
     public AjaxResult savePdf() {
         //浠庢枃浠跺湴鍧�璇诲叆PDF鏂囦欢  浠呭瓨鍌ㄤ竴娆�
-        String base64String = PDFBinaryUtil.getPDFBinary("D:\\Tjreport\\浣撴妯℃澘4.pdf");
+        String base64String = PDFBinaryUtil.getPDFBinary("D:\\Tjreport\\浣撴妯℃澘5.pdf");
         TjReportTemplate tem = new TjReportTemplate();
-        tem.setName("浣撴鎶ュ憡妯℃澘4");
-        tem.setRemark("浣撴鎶ュ憡妯℃澘4");
+        tem.setName("浣撴鎶ュ憡妯℃澘5");
+        tem.setRemark("浣撴鎶ュ憡妯℃澘5");
         tem.setTemplate(base64String);
         tem.setFlag("1");
         tem.setOpen("0");
@@ -409,8 +412,33 @@
 //                            "銆�5銆懳�-饩曟皑閰拌浆绉婚叾澧炩炯锛涘ぉ饣斿啲姘ㄩ吀姘ㄥ熀杞Щ閰跺饩硷紱涓欐皑閰告皑鍩鸿浆绉婚叾澧炩炯\n" +
 //                            "銆�6銆戣交饩勪腑搴﹁剛鑲倽");
 
+                    //鎷兼帴閲嶅ぇ闃虫�х粨鏋�
+                    StringBuffer str=new StringBuffer();
+                    str.append("銆愰噸澶ч槼鎬ч」鐩�慭n");
+                    LambdaQueryWrapper<TjBigPositive> bigPositiveLambdaQueryWrapper=new LambdaQueryWrapper<>();
+                    bigPositiveLambdaQueryWrapper.eq(TjBigPositive::getTjNumber,tjNumber);
+                    final List<TjBigPositive> list1 = tjBigPositiveService.list(bigPositiveLambdaQueryWrapper);
+                    if(list1!=null&&list1.size()>0){
+                        for (int i = 0; i < list1.size(); i++) {
+                            str.append((i+1)+"銆�"+list1.get(i).getProName()+";\n");
+                        }
+                    }else {
+                        str.append("    鏃狅紱\n");
+                    }
+                    //鎷兼帴寮傚父椤圭洰
+                    str.append("銆愬紓甯告儏鍐甸」鐩�慭n");
+                    if(list.size()>0){
+                        for (int i = 0; i < list.size(); i++) {
+                            if (list.get(i).getExceptionDesc()==1){
+                                str.append((i+1)+"銆�"+projectService.getById(list.get(i).getProId()).getProName()+";\n");
+                            }
+                        }
+                    }else {
+                        str.append("    鏃狅紱\n");
+                    }
+
                     //寮傚父椤圭洰
-                    data.put("yichang", "");
+                    data.put("yichang", str.toString());
 
                     // 閬嶅巻data 缁檖df琛ㄥ崟琛ㄦ牸璧嬪��
                     for (String key : data.keySet()) {
@@ -441,17 +469,20 @@
 
 
                     Map<TjOrderRemark, List<TjPdfVO>> tjOrderRemarkObjectMap = addTable(tjNumber);
+                    Map<TjOrderRemark, List<TjPdfVO>> tjOrderRemarkListMap = addHuaYanTable(tjNumber);
+                    tjOrderRemarkObjectMap.putAll(tjOrderRemarkListMap);
                     for (Map.Entry<TjOrderRemark, List<TjPdfVO>> entry : tjOrderRemarkObjectMap.entrySet()) {
                         List<TjPdfVO> value = entry.getValue();
                         LambdaQueryWrapper<TjProject> wqqq = new LambdaQueryWrapper<>();
                         wqqq.eq(TjProject::getProId, entry.getKey().getProId());
                         TjProject one11 = projectService.getOne(wqqq);
                         //鍒ゆ柇璇ラ」鐩槸鍚﹂渶瑕佹墦鍗版姤鍛�
-                        if ("N".equals(one11.getNeedReport())){
+                        if (null !=one11 && "N".equals(one11.getNeedReport())){
                             continue;
                         }
-                        if ("1".equals(one11.getResultType())) {
-                            String titleName = one11.getProName();
+                        String titleName =null;
+                        if (null !=one11 && "1".equals(one11.getResultType())) {
+                             titleName =one11.getProName();
                             // 璁剧疆鏍囬瀛椾綋鏍峰紡
                             Font titleFonts = PdfUtils.setFont(9);
                             Paragraph paragraph = PdfUtils.setParagraph(titleFonts, titleName);
@@ -515,7 +546,12 @@
                             LineSeparator objectName = new LineSeparator();
                             document.add(objectName);
                         } else {
-                            String titleName = one11.getProName();
+                            if(null !=one11){
+                                titleName = one11.getProName();
+                            }else {
+                                titleName = entry.getKey().getProName();
+                            }
+
                             // 璁剧疆鏍囬瀛椾綋鏍峰紡
                             Font titleFonts = PdfUtils.setFont(9);
                             Paragraph paragraph = PdfUtils.setParagraph(titleFonts, titleName);
@@ -593,7 +629,7 @@
 
                     LambdaQueryWrapper<TjReport> rtwq = new LambdaQueryWrapper<>();
                     rtwq.eq(TjReport::getType, "蹇冪數鍥�");
-//                    rtwq.eq(TjReport::getTjNumber, tjNumber);
+                    rtwq.eq(TjReport::getTjNumber, tjNumber);
                     TjReport one1111 = tjReportService.getOne(rtwq);
                     if(null !=one1111){
                         String report = one1111.getReport();
@@ -602,7 +638,7 @@
 
                     LambdaQueryWrapper<TjReport> rtwq12 = new LambdaQueryWrapper<>();
                     rtwq12.eq(TjReport::getType, "闄勪欢");
-//                    rtwq12.eq(TjReport::getTjNumber, tjNumber);
+                    rtwq12.eq(TjReport::getTjNumber, tjNumber);
                     TjReport one111112 = tjReportService.getOne(rtwq12);
                     if(null !=one111112){
                         String report12 = one111112.getReport();
@@ -672,7 +708,7 @@
         }
         return AjaxResult.success("璇ョ敤鎴蜂綋妫�鏈畬鎴愶紝涓嶈兘鎵撳嵃鎶ュ憡锛侊紒锛�");
     }
-
+    //闈炲寲楠岄」鐩姤鍛�
     public Map<TjOrderRemark, List<TjPdfVO>> addTable(String tjNumber) {
         //鍒涘缓map 閿负鐖堕」鐩�  鍊间负瀛愰」鐩泦鍚�
         Map<TjOrderRemark, List<TjPdfVO>> printReport = new HashMap<>();
@@ -687,6 +723,7 @@
         wq.eq(TjOrderDetail::getOrderId, one.getOrderId());
         //20230323鍒ゆ柇椤圭洰宸叉
         wq.ne(TjOrderDetail::getTjStatus, 0);
+        wq.ne(TjOrderDetail::getProId,projectService.getHuaYanProId());
         List<TjOrderDetail> tjOrderDetails = tjOrderDetailService.list(wq);
 
         //閬嶅巻浣撴璁板綍 灏嗛」鐩殑鍏蜂綋淇℃伅
@@ -703,21 +740,82 @@
         TjCustomer customer = tjCustomerService.getOne(wq22);
         LambdaQueryWrapper<TjOrderRemark> wqq = new LambdaQueryWrapper<>();
         wqq.eq(TjOrderRemark::getTjNumber, tjNumber);
+        wqq.ne(TjOrderRemark::getDeptId,"241");
         List<TjOrderRemark> tjOrderRemarks = tjOrderRemarkService.list(wqq);
 
         for (TjOrderRemark tjOrderRemark : tjOrderRemarks) {
-            printReport.put(tjOrderRemark, null);
+
+            printReport.put(tjOrderRemark,null);
         }
 
+        extracted(printReport, tjOrderDetails, customer);
+        return printReport;
+    }
+
+
+    //鍖栭獙椤圭洰鎶ュ憡
+    public Map<TjOrderRemark, List<TjPdfVO>> addHuaYanTable(String tjNumber) {
+        //鍒涘缓map 閿负鐖堕」鐩�  鍊间负瀛愰」鐩泦鍚�
+        Map<TjOrderRemark, List<TjPdfVO>> printReport = new HashMap<>();
+        //鏌ュ埌璇ュ鎴风殑浣撴璁板綍
+//        LambdaQueryWrapper<TjOrder> wq1 = new LambdaQueryWrapper<>();
+//        wq1.eq(TjOrder::getTjNumber, tjNumber);
+//        TjOrder one = tjOrderService.getOne(wq1);
+
+        //鎷垮埌浣撴璁板綍鐨刼rderid锛屾煡鍑洪」鐩缁嗕俊鎭�
+//        LambdaQueryWrapper<TjOrderDetail> wq = new LambdaQueryWrapper<>();
+//        wq.eq(TjOrderDetail::getOrderId, one.getOrderId());
+//        //20230323鍒ゆ柇椤圭洰宸叉
+//        wq.ne(TjOrderDetail::getTjStatus, 0);
+//        wq.eq(TjOrderDetail::getProId,projectService.getHuaYanProId());
+//        List<TjOrderDetail> tjOrderDetails = tjOrderDetailService.list(wq);
+        List<TjOrderDetail> tjOrderDetails = tjOrderDetailService.addHuaYanTable(tjNumber);
+        //閬嶅巻浣撴璁板綍 灏嗛」鐩殑鍏蜂綋淇℃伅
+        //閬嶅巻瀹㈡埛鎵�閫夌殑椤圭洰(鍖呭惈瀛愰」鐖堕」)
+//        for (TjOrderDetail tjOrderDetail : tjOrderDetails) {
+//            TjProject tjProject = projectService.getById(tjOrderDetail.getProId());
+//            if (null != tjProject) {
+//                tjOrderDetail.setProject(tjProject);
+//            }
+//        }
+
+//        LambdaQueryWrapper<TjCustomer> wq22 = new LambdaQueryWrapper<>();
+//        wq22.eq(TjCustomer::getCusId, one.getUserId());
+//        TjCustomer customer = tjCustomerService.getOne(wq22);
+//        LambdaQueryWrapper<TjOrderRemark> wqq = new LambdaQueryWrapper<>();
+//        wqq.eq(TjOrderRemark::getTjNumber, tjNumber);
+//        wqq.eq(TjOrderRemark::getDeptId,"241");
+//        List<TjOrderRemark> tjOrderRemarks = tjOrderRemarkService.list(wqq);
+        List<TjOrderRemark> tjOrderRemarks = tjOrderRemarkService.addHuaYanTable(tjNumber);
+
+        for (TjOrderRemark tjOrderRemark : tjOrderRemarks) {
+            printReport.put(tjOrderRemark,null);
+        }
+        for (Map.Entry<TjOrderRemark, List<TjPdfVO>> entry : printReport.entrySet()) {
+            List<TjPdfVO> tjPdfVOS = new ArrayList<>();
+            for (TjOrderDetail tjOrderDetail : tjOrderDetails) {
+                    if(entry.getKey().getProId().equals(tjOrderDetail.getProId())){
+                        TjPdfVO tjPdfVO = new TjPdfVO();
+                        tjPdfVO.setProName(tjOrderDetail.getProName());
+                        tjPdfVO.setProResult(tjOrderDetail.getProResult());
+                        tjPdfVO.setExc(tjOrderDetail.getExceptionDesc());
+                        tjPdfVO.setStandardValue(tjOrderDetail.getStanId());
+                        tjPdfVOS.add(tjPdfVO);
+                    }
+            }
+            printReport.put(entry.getKey(), tjPdfVOS);
+        }
+        return printReport;
+    }
+
+    private void extracted(Map<TjOrderRemark, List<TjPdfVO>> printReport, List<TjOrderDetail> tjOrderDetails, TjCustomer customer) {
         for (Map.Entry<TjOrderRemark, List<TjPdfVO>> entry : printReport.entrySet()) {
             List<TjPdfVO> tjPdfVOS = new ArrayList<>();
             for (TjOrderDetail tjOrderDetail : tjOrderDetails) {
                 if (null == tjOrderDetail.getProject()) {
                     System.out.println("'''''''''''''''''''''''''''''''''''" + tjOrderDetail.getOrderDetailId());
                 }
-
                 if (tjOrderDetail.getProject().getProParentId().equals(entry.getKey().getProId())) {
-
                     LambdaQueryWrapper<TjStandard> wq6 = new LambdaQueryWrapper<>();
                     wq6.eq(TjStandard::getProId, tjOrderDetail.getProId());
                     List<TjStandard> list2 = tjStandardService.list(wq6);
@@ -772,7 +870,6 @@
             }
             printReport.put(entry.getKey(), tjPdfVOS);
         }
-        return printReport;
     }
 
 

--
Gitblit v1.8.0