| | |
| | | } else { |
| | | listResult.addAll(list); |
| | | } |
| | | // 替换 "n.a." 为空字符串 |
| | | for (int i = 0; i < listResult.size(); i++) { |
| | | if ("n.a.".equals(listResult.get(i))) { |
| | | listResult.set(i, ""); |
| | | } |
| | | } |
| | | // 为了给前端做数据区分 |
| | | if (listResult.size() > 1) { |
| | | hashMap.put("result", listResult); |
| | |
| | | public static Map<String, Object> analysisList(String data, Map<String, List<DataConfig>> dataConfig, |
| | | Device device, String entrustCode, String sampleCode) { |
| | | Map<String, Object> map = new HashMap<>(); |
| | | List<String> rohsIndicators = Arrays.asList("成束释放,SPR", "成束释放,HRR", "成束释放,THR", "成束释放,TSP", "成束释放,FIGRA"); |
| | | dataConfig.forEach((k, v) -> { |
| | | List<Object> list = new ArrayList<>(); |
| | | // // 委托编号与样品编号不存在,定:1、Y定范围,X定横坐标;2、只存在Y;3、只存在X |
| | |
| | | // } else if (ObjectUtils.isNotEmpty(device.getEntrustCode()) && ObjectUtils.isNotEmpty(device.getSampleCode())) { |
| | | // list = analyzeDataEntrustCodAndSampleCode(data, v, k, splitIdentifier, device, entrustCode, sampleCode); |
| | | // } |
| | | list = analyzeXlsx1Data(data, v, k, splitIdentifier); |
| | | boolean containsRoHS = false; |
| | | for (DataConfig item : v) { |
| | | if (rohsIndicators.contains(item.getInsProductItem())) { |
| | | containsRoHS = true; |
| | | break; |
| | | } |
| | | } |
| | | if (containsRoHS) { |
| | | list = analyzeXlsxData(data, v, k, splitIdentifier); |
| | | } else { |
| | | list = analyzeXlsx1Data(data, v, k, splitIdentifier); |
| | | } |
| | | // 进行公式计算 |
| | | Object resultValue = calculationFormula(list, v.get(0), k, device); |
| | | map.put(k, resultValue); |