From 5a697e6fafbe3855336ca5fd7e1785de12840d16 Mon Sep 17 00:00:00 2001
From: lxp <1928192722@qq.com>
Date: 星期六, 15 三月 2025 10:49:27 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev

---
 inspect-server/src/main/java/com/ruoyi/inspect/handler/TemperatureCyclingReportHandler1.java |  139 +++++++++++++++++++++++++++++++++------------
 1 files changed, 101 insertions(+), 38 deletions(-)

diff --git a/cnas-require/src/main/java/com/ruoyi/require/handler/TemperatureCyclingReportHandler1.java b/inspect-server/src/main/java/com/ruoyi/inspect/handler/TemperatureCyclingReportHandler1.java
similarity index 80%
rename from cnas-require/src/main/java/com/ruoyi/require/handler/TemperatureCyclingReportHandler1.java
rename to inspect-server/src/main/java/com/ruoyi/inspect/handler/TemperatureCyclingReportHandler1.java
index 7cae102..c3a19d4 100644
--- a/cnas-require/src/main/java/com/ruoyi/require/handler/TemperatureCyclingReportHandler1.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/handler/TemperatureCyclingReportHandler1.java
@@ -1,4 +1,4 @@
-package com.ruoyi.require.handler;
+package com.ruoyi.inspect.handler;
 
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.deepoove.poi.data.*;
@@ -80,6 +80,7 @@
                 ));
                 List<String> wendu = new ArrayList<>(wendus.keySet());
                 for (int m = 0; m < wendu.size(); m += 3) {
+                    int wenduSize = (wendu.size()-m)/3>0?3:(wendu.size()-m);
                     //涓変釜娓╁害涓�寮犺〃,褰撻亶鍘嗗埌绗洓涓俯搴︾殑鏃跺�欓渶瑕侀噸鏂板缓琛�
                     List<RowRenderData> rows = new ArrayList<>();
                     //琛ㄦ牸鐨勮鏁�(鍏夌氦鑹叉爣鐨勬暟閲�+8)
@@ -90,7 +91,7 @@
                         rowRenderData.setRowStyle(rowStyle);
                         List<CellRenderData> cells = new ArrayList<>();
                         //琛ㄦ牸鐨勫垪鏁�(2*鍏夌氦椤圭洰*3+1)
-                        for (int k = 0; k < 6 * nm.size() + 1; k++) {
+                        for (int k = 0; k < 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) + 1; k++) {
                             CellRenderData cellRenderData = new CellRenderData();
                             CellStyle cellStyle = new CellStyle();
                             cellStyle.setVertAlign(XWPFTableCell.XWPFVertAlign.CENTER);
@@ -109,19 +110,67 @@
                             textRenderData.setStyle(style);
                             if (j == 0) {
                                 //绗竴琛�
-                                if (k <= (6L * nm.size() + 1) / 4) {
-                                    //绗竴鍒�
-                                    textRenderData.setText("鏍峰搧缂栧彿@Sample number鈭�1000");
-                                } else if (k > (6L * nm.size() + 1) / 4 && k <= (6L * nm.size() + 1) / 2) {
-                                    //绗簩鍒�
-                                    textRenderData.setText(sample.getSampleCode() + "鈭�998");
-                                } else if (k > (6L * nm.size() + 1) / 2 && k < 6L * nm.size()) {
-                                    //绗笁鍒�
-                                    textRenderData.setText("瑙勬牸鍨嬪彿@Type 鈭�999");
-                                } else {
-                                    //绗洓鍒�
-                                    textRenderData.setText(sample.getModel());
+                                int size = (2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)));
+                                switch (size){
+                                    case 12:
+                                        if (k <= 2) {
+                                            //绗竴鍒�
+                                            textRenderData.setText("鏍峰搧缂栧彿@Sample number鈭�1000");
+                                        } else if (k > 2 && k <= 5) {
+                                            //绗簩鍒�
+                                            textRenderData.setText(sample.getSampleCode() + "鈭�998");
+                                        } else if (k > 5 && k < 9) {
+                                            //绗笁鍒�
+                                            textRenderData.setText("瑙勬牸鍨嬪彿@Type 鈭�999");
+                                        } else {
+                                            //绗洓鍒�
+                                            textRenderData.setText(sample.getModel()+"鈭�999888");
+                                        }
+                                        break;
+                                    case 8:
+                                        if (k <= 1) {
+                                            //绗竴鍒�
+                                            textRenderData.setText("鏍峰搧缂栧彿@Sample number鈭�1000");
+                                        } else if (k > 1 && k <= 3) {
+                                            //绗簩鍒�
+                                            textRenderData.setText(sample.getSampleCode() + "鈭�998");
+                                        } else if (k > 3 && k < 6) {
+                                            //绗笁鍒�
+                                            textRenderData.setText("瑙勬牸鍨嬪彿@Type 鈭�999");
+                                        } else {
+                                            //绗洓鍒�
+                                            textRenderData.setText(sample.getModel()+"鈭�999888");
+                                        }
+                                        break;
+                                    case 4:
+                                        if (k <= 0) {
+                                            //绗竴鍒�
+                                            textRenderData.setText("鏍峰搧缂栧彿@Sample number鈭�1000");
+                                        } else if (k == 1) {
+                                            //绗簩鍒�
+                                            textRenderData.setText(sample.getSampleCode() + "鈭�998");
+                                        } else if (k == 2) {
+                                            //绗笁鍒�
+                                            textRenderData.setText("瑙勬牸鍨嬪彿@Type 鈭�999");
+                                        } else {
+                                            //绗洓鍒�
+                                            textRenderData.setText(sample.getModel()+"鈭�999888");
+                                        }
+                                        break;
                                 }
+//                                if (k <= (2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) + 1) / 4) {
+//                                    //绗竴鍒�
+//                                    textRenderData.setText("鏍峰搧缂栧彿@Sample number鈭�1000");
+//                                } else if (k > (2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) + 1) / 4 && k <= (2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) + 1) / 2) {
+//                                    //绗簩鍒�
+//                                    textRenderData.setText(sample.getSampleCode() + "鈭�998");
+//                                } else if (k > (2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) + 1) / 2 && k < 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m))) {
+//                                    //绗笁鍒�
+//                                    textRenderData.setText("瑙勬牸鍨嬪彿@Type 鈭�999");
+//                                } else {
+//                                    //绗洓鍒�
+//                                    textRenderData.setText(sample.getModel());
+//                                }
                                 renderData.add(textRenderData);
                                 paragraphRenderData.setContents(renderData);
                                 paragraphRenderDataList.add(paragraphRenderData);
@@ -152,14 +201,14 @@
                                     paragraphRenderDataList.add(paragraphRenderData);
                                     cellRenderData.setParagraphs(paragraphRenderDataList);
                                     cells.add(cellRenderData);
-                                } else if (k <= 6L * nm.size() / 3) {
+                                } else if (k <= 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / wenduSize) {
                                     textRenderData.setText(wendu.get(m) + "鈭�52"+j + m);
                                     renderData.add(textRenderData);
                                     paragraphRenderData.setContents(renderData);
                                     paragraphRenderDataList.add(paragraphRenderData);
                                     cellRenderData.setParagraphs(paragraphRenderDataList);
                                     cells.add(cellRenderData);
-                                } else if (k > 6L * nm.size() / 3 && k <= 6L * nm.size() / 3 * 2) {
+                                } else if (k > 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / wenduSize && k <= 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / wenduSize * 2) {
                                     int i1 = m + 1;
                                     String s = "";
                                     try {
@@ -223,10 +272,10 @@
                                     cellRenderData.setParagraphs(paragraphRenderDataList);
                                     cells.add(cellRenderData);
                                 } else if (k % 2 == 1) {
-                                    if (k <= 6L * nm.size() / 3 && wendu.get(m).equals("20鈩�(甯告俯)")) {
+                                    if (k <= 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / 3 && wendu.get(m).equals("20鈩�(甯告俯)")) {
                                         textRenderData.setText("琛板噺" + "鈭�42" +j+ k);
                                     } else {
-                                        textRenderData.setText(" 琛板噺 ");
+                                        textRenderData.setText("琛板噺");
                                     }
                                     renderData.add(textRenderData);
                                     paragraphRenderData.setContents(renderData);
@@ -234,10 +283,10 @@
                                     cellRenderData.setParagraphs(paragraphRenderDataList);
                                     cells.add(cellRenderData);
                                 } else {
-                                    if (k <= 6L * nm.size() / 3 && wendu.get(m).equals("20鈩�(甯告俯)")) {
+                                    if (k <= 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / 3 && wendu.get(m).equals("20鈩�(甯告俯)")) {
                                         textRenderData.setText("琛板噺" + "鈭�42"+j + (k - 1));
                                     } else {
-                                        textRenderData.setText("|鈭� 伪|");
+                                        textRenderData.setText("|鈭單眧");
                                     }
                                     renderData.add(textRenderData);
                                     paragraphRenderData.setContents(renderData);
@@ -259,9 +308,9 @@
                                 }
                                 else if (k % 2 == 0) {
                                     String s = "";
-                                    if (k <= 6L * nm.size() / 3) {
+                                    if (k <= 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / wenduSize) {
                                         s = wendu.get(m);
-                                    } else if (k > 6L * nm.size() / 3 && k <= 6L * nm.size() / 3 * 2) {
+                                    } else if (k > 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / wenduSize && k <= 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / wenduSize * 2) {
                                         try {
                                             s = wendu.get(m + 1);
                                         } catch (Exception e) {
@@ -277,8 +326,9 @@
                                         textRenderData.setText("");
                                     } else {
                                         try {
-                                            if (k <= 6L * nm.size() / 3 && wendu.get(m).equals("20鈩�(甯告俯)")){
+                                            if (k <= 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / wenduSize && wendu.get(m).equals("20鈩�(甯告俯)")){
                                                 List<Integer> ips = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
+                                                                .eq(InsProduct::getState,1)
                                                                 .eq(InsProduct::getInsSampleId, sample.getId())
                                                                 .isNotNull(InsProduct::getInsFiberId)
                                                                 .eq(InsProduct::getInspectionItem, i + 1)
@@ -295,6 +345,7 @@
                                                 textRenderData.setText(max.get() + "鈭�"+j+ (k-1));
                                             }else {
                                                 Optional<String> max = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
+                                                                .eq(InsProduct::getState,1)
                                                                 .eq(InsProduct::getInsSampleId, sample.getId())
                                                                 .isNotNull(InsProduct::getInsFiberId)
                                                                 .eq(InsProduct::getInspectionItem, i + 1)
@@ -321,9 +372,9 @@
                                 }
                                 else {
                                     String s = "";
-                                    if (k <= 6L * nm.size() / 3) {
+                                    if (k <= 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / wenduSize) {
                                         s = wendu.get(m);
-                                    } else if (k > 6L * nm.size() / 3 && k <= 6L * nm.size() / 3 * 2) {
+                                    } else if (k > 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / wenduSize && k <= 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / wenduSize * 2) {
                                         try {
                                             s = wendu.get(m + 1);
                                         } catch (Exception e) {
@@ -339,6 +390,7 @@
                                         textRenderData.setText("");
                                     } else {
                                         List<Integer> ips = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
+                                                .eq(InsProduct::getState,1)
                                                 .eq(InsProduct::getInsSampleId, sample.getId())
                                                 .isNotNull(InsProduct::getInsFiberId)
                                                 .eq(InsProduct::getInspectionItem, i + 1)
@@ -351,7 +403,7 @@
                                                 return splitStr[splitStr.length - 1].split("\"")[1];
                                             }
                                         }).filter(value -> !value.isEmpty()).max(String::compareTo);
-                                        if (k <= 6L * nm.size() / 3 && wendu.get(m).equals("20鈩�(甯告俯)")){
+                                        if (k <= 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / wenduSize&& wendu.get(m).equals("20鈩�(甯告俯)")){
                                             textRenderData.setText(max.get() + "鈭�"+j+ k);
                                         }else {
                                             if (max.isPresent()) {
@@ -372,7 +424,7 @@
                                 //鍊掓暟绗簩琛�
                                 if (k == 0) {
                                     //绗竴鍒�
-                                    textRenderData.setText("|鈭� 伪 max|");
+                                    textRenderData.setText("|鈭單� max|");
                                     renderData.add(textRenderData);
                                     paragraphRenderData.setContents(renderData);
                                     paragraphRenderDataList.add(paragraphRenderData);
@@ -380,9 +432,9 @@
                                     cells.add(cellRenderData);
                                 } else if (k % 2 == 0) {
                                     String s = "";
-                                    if (k <= 6L * nm.size() / 3) {
+                                    if (k <= 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / wenduSize) {
                                         s = wendu.get(m);
-                                    } else if (k > 6L * nm.size() / 3 && k <= 6L * nm.size() / 3 * 2) {
+                                    } else if (k > 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / wenduSize && k <= 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / wenduSize * 2) {
                                         try {
                                             s = wendu.get(m + 1);
                                         } catch (Exception e) {
@@ -397,10 +449,11 @@
                                     if (s.equals("")) {
                                         textRenderData.setText("");
                                     } else {
-                                        if (k <= 6L * nm.size() / 3 && wendu.get(m).equals("20鈩�(甯告俯)")) {
+                                        if (k <= 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / wenduSize && wendu.get(m).equals("20鈩�(甯告俯)")) {
                                             textRenderData.setText("-" + "鈭�" + j + (k-1));
                                         } else {
                                             List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
+                                                    .eq(InsProduct::getState,1)
                                                     .eq(InsProduct::getInsSampleId, sample.getId())
                                                     .isNotNull(InsProduct::getInsFiberId)
                                                     .eq(InsProduct::getInspectionItem, i + 1)
@@ -426,7 +479,7 @@
                                     cellRenderData.setParagraphs(paragraphRenderDataList);
                                     cells.add(cellRenderData);
                                 } else {
-                                    if (k <= 6L * nm.size() / 3 && wendu.get(m).equals("20鈩�(甯告俯)")) {
+                                    if (k <= 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / wenduSize && wendu.get(m).equals("20鈩�(甯告俯)")) {
                                         textRenderData.setText("-" + "鈭�" + j + k);
                                     } else {
                                         textRenderData.setText("-");
@@ -461,9 +514,9 @@
                                 } else if (k % 2 == 0) {
                                     //濉啓琛板噺宸氨鏄痩ast_value
                                     String s = "";
-                                    if (k <= 6L * nm.size() / 3) {
+                                    if (k <= 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / wenduSize) {
                                         s = wendu.get(m);
-                                    } else if (k > 6L * nm.size() / 3 && k <= 6L * nm.size() / 3 * 2) {
+                                    } else if (k > 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / wenduSize && k <= 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / wenduSize * 2) {
                                         try {
                                             s = wendu.get(m + 1);
                                         } catch (Exception e) {
@@ -478,13 +531,14 @@
                                         textRenderData.setText("");
                                     } else {
                                         List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
+                                                .eq(InsProduct::getState,1)
                                                 .eq(InsProduct::getInsSampleId, sample.getId())
                                                 .isNotNull(InsProduct::getInsFiberId)
                                                 .eq(InsProduct::getInsFiberId, insFibers.get(j - 5).getId())
                                                 .eq(InsProduct::getInspectionItem, i + 1)
                                                 .eq(InsProduct::getInspectionItemSubclass, s)
                                                 .eq(InsProduct::getInspectionItemClass, nm.get((k - 2) / 2 % nm.size())));
-                                        if (k <= 6L * nm.size() / 3 && s.equals("20鈩�(甯告俯)")) {
+                                        if (k <= 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / 3 && s.equals("20鈩�(甯告俯)")) {
                                             String comValue = insProductResultMapper.selectOne(Wrappers.<InsProductResult>lambdaQuery()
                                                             .eq(InsProductResult::getInsProductId, insProducts.get(0).getId()))
                                                     .getComValue();
@@ -502,9 +556,9 @@
                                 } else {
                                     //濉啓鍏朵綑姝e父娓╁害鐨勮“鍑�(result琛ㄩ噷闈㈢殑com_value)
                                     String s = "";
-                                    if (k <= 6L * nm.size() / 3) {
+                                    if (k <= 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / wenduSize) {
                                         s = wendu.get(m);
-                                    } else if (k > 6L * nm.size() / 3 && k <= 6L * nm.size() / 3 * 2) {
+                                    } else if (k > 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / wenduSize&& k <= 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / wenduSize * 2) {
                                         try {
                                             s = wendu.get(m + 1);
                                         } catch (Exception e) {
@@ -519,6 +573,7 @@
                                         textRenderData.setText("");
                                     } else {
                                         List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery()
+                                                .eq(InsProduct::getState,1)
                                                 .eq(InsProduct::getInsSampleId, sample.getId())
                                                 .isNotNull(InsProduct::getInsFiberId)
                                                 .eq(InsProduct::getInsFiberId, insFibers.get(j - 5).getId())
@@ -529,7 +584,7 @@
                                                         .eq(InsProductResult::getInsProductId, insProducts.get(0).getId()))
                                                 .getComValue();
                                         String[] splitStr = comValue.split(":");
-                                        if (k <= 6L * nm.size() / 3 && s.equals("20鈩�(甯告俯)")) {
+                                        if (k <= 2 * nm.size()*((wendu.size()-m)/3>0?3:(wendu.size()-m)) / 3 && s.equals("20鈩�(甯告俯)")) {
                                             textRenderData.setText(splitStr[splitStr.length - 1].split("\"")[1] + "鈭�" + j + k);
                                         } else {
                                             textRenderData.setText(splitStr[splitStr.length - 1].split("\"")[1]);
@@ -557,8 +612,16 @@
                         }
                     }
                     TableStyle tableStyle = new TableStyle();
-                    tableStyle.setWidth(XWPFTable.DEFAULT_PERCENTAGE_WIDTH);
                     tableStyle.setAlign(TableRowAlign.CENTER);
+                    if(m==0 && countSize==13){
+                        tableStyle.setWidth("10000");
+                        tableStyle.setColWidths(new int[]{1580,850,0,850,0,840,840,840,840,840,840,840,840});
+                    }else if(countSize==13){
+                        tableStyle.setWidth("10000");
+                        tableStyle.setColWidths(new int[]{1220,735,745,735,745,735,745,735,745,735,745,735,745});
+                    }else{
+                        tableStyle.setWidth(XWPFTable.DEFAULT_PERCENTAGE_WIDTH);
+                    }
                     BorderStyle borderStyle = new BorderStyle();
                     borderStyle.setColor("000000");
                     borderStyle.setType(XWPFTable.XWPFBorderType.THICK);

--
Gitblit v1.9.3