zss
2025-05-12 99cf848f87e2e06954d1ca101c9ff1879cf801c7
inspect-server/src/main/java/com/yuanchu/mom/utils/FuSheUtils.java
@@ -1,6 +1,7 @@
package com.yuanchu.mom.utils;
import cn.hutool.core.lang.UUID;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.deepoove.poi.data.*;
import com.deepoove.poi.data.style.*;
import com.yuanchu.mom.dto.Exceldata;
@@ -205,8 +206,8 @@
            }
            System.out.println(map);
            createWord(sonLaboratory, document, exceldata, map, biaozhun, insOrderFile);
        } catch (IOException e) {
            e.printStackTrace();
        } catch (Exception e) {
//            e.printStackTrace();
        } finally {
            // 关闭资源
            try {
@@ -385,6 +386,9 @@
                        for (Map<String, Object> number : hashMaps) {
                            number.put("端口", s1);
                            Double o = (Double) number.get("测试频率(MHZ)");
                            if (ObjectUtils.isNull(o)){
                                 o = (Double) number.get("测量频率(MHz)");
                            }
                            floatList.add(o.intValue());
                        }
                        Integer maxValue = Collections.max(floatList);
@@ -445,8 +449,8 @@
            orderFile.setSonLaboratory(sonLaboratory);
            insOrderFileMapper.insert(orderFile);
        } catch (IOException e) {
            e.printStackTrace();
        } catch (Exception e) {
//            e.printStackTrace();
        } finally {
            // 关闭资源
            try {
@@ -852,6 +856,7 @@
            List<String> collect = Arrays.stream(split).collect(Collectors.toList());
            collect.remove(collect.size() - 1);
            collect.sort((o1, o21) -> Integer.parseInt(o1.substring((o1.length() - 1))) - Integer.parseInt(o21.substring(o21.length() - 1)));
            List<Map<String, Object>> list = new ArrayList<>();
@@ -862,7 +867,7 @@
            Map<String, List<Map<String, Object>>> o1 = (Map<String, List<Map<String, Object>>>) dataRow.get(result);
            for (String s2 : collect) {
                if (s2.contains("端口") || s2.contains("P")) {
                if (s2.contains("端口") || s2.contains("P") || s2.contains("广播") || s2.contains("业务")) {
                    List<Map<String, Object>> mapList = o1.get(s2);
                    list.addAll(mapList);
                }
@@ -880,7 +885,7 @@
            // 初始化行数
            int rowNum = 2;
            for (String s2 : aggregatedMap.keySet()) {
                if (s2.equals("端口") || s2.equals("测试频率(MHZ)")) {
                if (s2.equals("端口") || s2.equals("测试频率(MHZ)") || s2.equals("测量频率(MHz)")) {
                    continue;
                }
                List<Map<String, Object>> mapList = aggregatedMap.get(s2);
@@ -950,30 +955,36 @@
                run4.setText("频率(MHz)");
                XWPFParagraph paragraph5 = table1.getRow(rowNum).getCell(5).getParagraphArray(0);
                paragraph5.setAlignment(ParagraphAlignment.CENTER);
                XWPFRun run5 = paragraph5.createRun();
                run5.setText("端口");
                XWPFParagraph paragraph6 = table1.getRow(rowNum).getCell(cell - 1).getParagraphArray(0);
                paragraph6.setAlignment(ParagraphAlignment.CENTER);
                XWPFRun run6 = paragraph6.createRun();
                run6.setText("判定");
                XWPFParagraph paragraph7 = table1.getRow(rowNum+1).getCell(cell - 1).getParagraphArray(0);
                paragraph7.setAlignment(ParagraphAlignment.CENTER);
                XWPFRun run7 = paragraph7.createRun();
                run7.setText("合格");
                XWPFParagraph paragraph8 = table1.getRow(rowNum+checkItemRowNum - 1).getCell(4).getParagraphArray(0);
                paragraph8.setAlignment(ParagraphAlignment.CENTER);
                XWPFRun run8 = paragraph8.createRun();
                run8.setText("平均值");
                XWPFParagraph paragraph9 = table1.getRow(rowNum + checkItemRowNum - 1).getCell(cell - 1).getParagraphArray(0);
                paragraph9.setAlignment(ParagraphAlignment.CENTER);
                XWPFRun run9 = paragraph9.createRun();
                run9.setText("");
                for (int i = 0; i < collect.size() - 1; i++) {
                for (int i = 0; i < collect.size(); i++) {
                    String s3 = collect.get(i);
                    if (s3.contains("端口") || s3.contains("P")) {
                    if (s3.contains("端口") || s3.contains("P") || s3.contains("广播") || s3.contains("业务")) {
                        XWPFParagraph paragraph10 = table1.getRow(rowNum+1).getCell(5 + i).getParagraphArray(0);
                        paragraph10.setAlignment(ParagraphAlignment.CENTER);
                        XWPFRun run10 = paragraph10.createRun();
                        run10.setText(s3);
                    }
@@ -981,7 +992,13 @@
                Map<BigDecimal, List<Map<String, Object>>> group = mapList.stream()
                        .collect(Collectors.groupingBy(item -> {
                            BigDecimal value = new BigDecimal(String.valueOf(item.get("测试频率(MHZ)")));
                            BigDecimal value=BigDecimal.ZERO;
                            if (item.containsKey("测试频率(MHZ)")) {
                                 value = new BigDecimal(String.valueOf(item.get("测试频率(MHZ)")));
                            }
                            else if (item.containsKey("测量频率(MHz)")){
                                 value = new BigDecimal(String.valueOf(item.get("测量频率(MHz)")));
                            }
                            if (value.scale() <= 0 || value.stripTrailingZeros().scale() <= 0) {
                                // 没有小数部分,返回整数字符串
                                return new BigDecimal(value.intValue());
@@ -1001,9 +1018,12 @@
                double firstParam = 0.0;
                double secondParam = 0.0 ;
                checkItemStandardStr = checkItemStandardStr.trim();
                if(checkItemStandardStr.contains("~") ){
                if(checkItemStandardStr.contains("~") || checkItemStandardStr.contains("~") ){
                    checkType = 1;
                    String[] params = checkItemStandardStr.split("~");
                    if (checkItemStandardStr.contains("~")) {
                        params = checkItemStandardStr.split("~");
                    }
                    if(null != params && params.length == 2){
                        firstParam = Double.valueOf(params[0]);
                        secondParam = Double.valueOf(params[1]);