zss
2024-12-23 e59b660b580fd96447b213679d55202529370028
inspect-server/src/main/java/com/yuanchu/mom/utils/DianLuUtils.java
@@ -106,14 +106,18 @@
                for (String s : list) {
                    String[] mHzs = s.split("MHz")[0].split("-");
                    //再判断这个频点是否在频段的范围内
                    if (Integer.parseInt(stringListEntry.getKey()) <= Integer.parseInt(mHzs[1]) && Integer.parseInt(stringListEntry.getKey()) >= Integer.parseInt(mHzs[0])) {
                    if (stringListEntry.getKey().equals("700")){
                        insProductResult2.setFrequency("703-803MHz");
                        break;
                    }
                    else if (Integer.parseInt(stringListEntry.getKey()) <= Integer.parseInt(mHzs[1]) && Integer.parseInt(stringListEntry.getKey()) >= Integer.parseInt(mHzs[0])) {
                        insProductResult2.setFrequency(s);
                        break;
                    }
                }
                if (ObjectUtils.isEmpty(insProductResult2.getFrequency())) {
                    throw new ErrorException("没有找到" + stringListEntry.getKey() + "对应的频段");
                }
            }
            if (ObjectUtils.isEmpty(insProductResult2.getFrequency())) {
                throw new ErrorException("没有找到" + stringListEntry.getKey() + "对应的频段信息,请先选择频段信息进行保存");
            }
            insProductResult2s.add(insProductResult2);
        }
@@ -136,6 +140,10 @@
        List<InsProduct> products1 = products.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("电压驻波比")).collect(Collectors.toList());
        //查询该样品的同极化隔离度项目id
        List<InsProduct> products2 = products.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("同极化隔离度")).collect(Collectors.toList());
        //查询该样品的隔离度项目id
        List<InsProduct> products6 = products.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("同列隔离度")).collect(Collectors.toList());
        //查询该样品的端口间隔离度项目id
        List<InsProduct> products7 = products.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("端口间隔离度")).collect(Collectors.toList());
        //查询该样品的异极化隔离度项目id
        List<InsProduct> products3 = products.stream().filter(insProduct -> insProduct.getInspectionItemSubclass().equals("异极化隔离度")).collect(Collectors.toList());
        //查询该样品的幅度偏差项目id
@@ -164,7 +172,38 @@
                    String value = entry.getValue().stream().map(tianXianData1 -> "\"" + tianXianData1.getValue() + "\"").collect(Collectors.joining(","));
                    insProductResult2.setValue("[[" + value + "]]");//值
                    insProductResult2s.add(insProductResult2);
                } else if (entry.getKey().contains("同极化隔离") || entry.getKey().contains("同列隔离")) {
                } else if (entry.getKey().contains("同列隔离")) {
                    if (products6.size() <= 0) {
                        throw new ErrorException("隔离度项目未找到");
                    }
                    insProductResult2.setInsProductId(products6.get(0).getId());//同极化隔离
                    insProductResult2.setFrequency(listEntry.getKey());//频段
                    insProductResult2.setAngle("0°");//角度
                    insProductResult2.setNum(orderStates.get(0).getNum());//次数
                    //获取端口
                    String port = entry.getValue().stream().map(TianXianData::getPort).collect(Collectors.joining(","));
                    insProductResult2.setPort(port);//端口
                    //获取检验值
                    String value = entry.getValue().stream().map(tianXianData1 -> "\"" + tianXianData1.getValue() + "\"").collect(Collectors.joining(","));
                    insProductResult2.setValue("[[" + value + "]]");//值
                    insProductResult2s.add(insProductResult2);
                } else if (entry.getKey().contains("端口间隔离")) {
                    if (products7.size() <= 0) {
                        throw new ErrorException("端口间隔离项目未找到");
                    }
                    insProductResult2.setInsProductId(products7.get(0).getId());//同极化隔离
                    insProductResult2.setFrequency(listEntry.getKey());//频段
                    insProductResult2.setAngle("0°");//角度
                    insProductResult2.setNum(orderStates.get(0).getNum());//次数
                    //获取端口
                    String port = entry.getValue().stream().map(TianXianData::getPort).collect(Collectors.joining(","));
                    insProductResult2.setPort(port);//端口
                    //获取检验值
                    String value = entry.getValue().stream().map(tianXianData1 -> "\"" + tianXianData1.getValue() + "\"").collect(Collectors.joining(","));
                    insProductResult2.setValue("[[" + value + "]]");//值
                    insProductResult2s.add(insProductResult2);
                }
                else if (entry.getKey().contains("同极化隔离")) {
                    if (products2.size() <= 0) {
                        throw new ErrorException("同极化隔离项目未找到");
                    }
@@ -179,7 +218,7 @@
                    String value = entry.getValue().stream().map(tianXianData1 -> "\"" + tianXianData1.getValue() + "\"").collect(Collectors.joining(","));
                    insProductResult2.setValue("[[" + value + "]]");//值
                    insProductResult2s.add(insProductResult2);
                } else if (entry.getKey().contains("异极化隔离") || entry.getKey().contains("端口间隔离")) {
                } else if (entry.getKey().contains("异极化隔离")) {
                    if (products3.size() <= 0) {
                        throw new ErrorException("异极化隔离项目未找到");
                    }
@@ -303,8 +342,7 @@
                filteredList.add(result2);
            }
        }
        System.out.println(filteredList);
        //insProductResult2Service.saveBatch(filteredList);
        insProductResult2Service.saveBatch(filteredList);
    }