393d6fbb340fd880740564b1624e1c3e60495284..99cf848f87e2e06954d1ca101c9ff1879cf801c7
2025-05-12 zss
远场上传的文件解析调整+检验任务样品编号筛选
99cf84 对比 | 目录
2025-05-12 zss
远场上传的文件解析做兼容
c0a846 对比 | 目录
已修改4个文件
47 ■■■■ 文件已修改
inspect-server/src/main/java/com/yuanchu/mom/mapper/InsSampleMapper.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/yuanchu/mom/utils/FuSheUtils.java 34 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/resources/mapper/InsSampleMapper.xml 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/yuanchu/mom/mapper/InsSampleMapper.java
@@ -25,7 +25,7 @@
*/
public interface InsSampleMapper extends BaseMapper<InsSample> {
    IPage<InsOrderPlanVO> findInsSampleAndOrder(Page page, @Param("ew") QueryWrapper<InsOrderPlanDTO> ew, @Param("userName") String userName, @Param("sonLaboratory") String sonLaboratory, @Param("laboratory") String laboratory);
    IPage<InsOrderPlanVO> findInsSampleAndOrder(@Param("page") Page page, @Param("ew") QueryWrapper<InsOrderPlanDTO> ew, @Param("userName") String userName, @Param("sonLaboratory") String sonLaboratory, @Param("laboratory") String laboratory, @Param("sampleCode") String sampleCode);
    IPage<InsOrderPlanTaskSwitchVo> inspectionOrderDetailsTaskSwitching(Page page, @Param("ew") QueryWrapper<InsOrderPlanDTO> ew, @Param("userId") Integer userId, @Param("sonLaboratory") String sonLaboratory, @Param("laboratory") String laboratory);
inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
@@ -146,7 +146,9 @@
        }
        String sonLaboratory = insOrderPlanDTO.getSonLaboratory();//试验室
        insOrderPlanDTO.setSonLaboratory(null);
        IPage<InsOrderPlanVO> insOrderPage = insSampleMapper.findInsSampleAndOrder(page, QueryWrappers.queryWrappers(insOrderPlanDTO), userName, sonLaboratory, laboratory);
        String sampleCode = insOrderPlanDTO.getSampleCode();
        insOrderPlanDTO.setSampleCode(null);
        IPage<InsOrderPlanVO> insOrderPage = insSampleMapper.findInsSampleAndOrder(page, QueryWrappers.queryWrappers(insOrderPlanDTO), userName, sonLaboratory, laboratory,sampleCode);
        map.put("body", insOrderPage);
        return map;
    }
@@ -350,7 +352,7 @@
            insOrderFile.setFileUrl(pathName);
            insOrderFileMapper.insert(insOrderFile);
            String[] split = filename.split("\\.");
            if (ObjectUtils.isNotEmpty(sonLaboratory) && sonLaboratory.equals("近场") && split[split.length - 1].equals("csv")) {
            if (ObjectUtils.isNotEmpty(sonLaboratory) && sonLaboratory.equals("近场") && (split[split.length - 1].equals("csv") || split[split.length - 1].equals("xlsx"))) {
                fuSheUtils.getFuSheWord1(sonLaboratory, insOrderFile);
            } else if (ObjectUtils.isNotEmpty(sonLaboratory) && sonLaboratory.equals("远场") && split[split.length - 1].equals("xlsx")) {
                fuSheUtils.getFuSheWord2(sonLaboratory, insOrderFile);
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);
@@ -975,9 +980,9 @@
                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();
@@ -987,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());
@@ -1007,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]);
inspect-server/src/main/resources/mapper/InsSampleMapper.xml
@@ -54,7 +54,7 @@
        io.send_time,
        isa.id sampleId,
        isa.sample sample,
        isa.sample_code sampleCode,
        isa.sample_code ,
        userName,
        userNameId,
        checkName,
@@ -81,6 +81,9 @@
        ORDER BY ins_sample_id
        )isu2 ON isu2.ins_sample_id = isa.id
        WHERE io.state = 1 and send_time is not null
        <if test="sampleCode !=null and sampleCode!=''">
            and (isa.sample_code like CONCAT ('%', #{sampleCode},'%') )
        </if>
        <if test="userName !=null and userName!=''">
            and ( (userName like CONCAT ('%', #{userName},'%') )
            or (checkName like CONCAT ('%', #{userName},'%') ) )