From d6520e90ce34127c0a994e22e3fb54767aebecc0 Mon Sep 17 00:00:00 2001 From: Crunchy <3114200645@qq.com> Date: 星期六, 03 八月 2024 15:06:38 +0800 Subject: [PATCH] 数采bug修复 --- cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java | 28 +++++++++++++++++++--------- 1 files changed, 19 insertions(+), 9 deletions(-) diff --git a/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java b/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java index c78ea55..8be96b1 100644 --- a/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java +++ b/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java @@ -180,7 +180,14 @@ Map<String, Object> map = DataAcquisition.dataAcquisitionEntrance(list1, device.get(0), entrustCode, sampleCode, ip); // 4銆侀�犲惊鐜鏁� if (ObjectUtils.isNotEmpty(map)) { - return Result.success(DataAcquisition.createFrequency(entrustCode, sampleCode, map)); + Object result; + Map<String, Object> frequency = DataAcquisition.createFrequency(entrustCode, sampleCode, map); + if (ObjectUtils.isEmpty(device.get(0).getEntrustCode()) && ObjectUtils.isEmpty(device.get(0).getSampleCode())) { + result = formulaCalculation(frequency, true); + } else { + result = formulaCalculation(frequency, false); + } + return Result.success(result); } else { return Result.success(null); } @@ -990,7 +997,7 @@ } @Override - public Object formulaCalculation(Map<String, Object> map) { + public Object formulaCalculation(Map<String, Object> map, Boolean isAdopt) { map.forEach((key, value) -> { Map<String, Object> jsonObject = JSONObject.parseObject(JSON.toJSONString(map.get(key)), Map.class); for (Map.Entry<String, Object> entry : jsonObject.entrySet()) { @@ -1001,8 +1008,6 @@ if (formulaData.containsKey("result") && formulaData.containsKey("isCalculation") && formulaData.containsKey("formula")) { String formula = formulaData.get("formula").toString(); - Boolean isCalculation = Boolean.valueOf(formulaData.get("isCalculation").toString()); - if (isCalculation) { List<Object> resultList = new ArrayList<>(); try { resultList = JSONObject.parseArray(JSON.toJSONString(formulaData.get("result")), Object.class); @@ -1011,14 +1016,19 @@ resultList.add(result); } ArrayList<Object> list = new ArrayList<>(); - resultList.forEach(i -> { - List<Object> strings = Arrays.asList(i.toString().split(",")); - String result = calculationFormula(strings, formula); + if (isAdopt) { + String result = calculationFormula(resultList, formula); list.add(result); - }); + } else { + resultList.forEach(i -> { + List<Object> strings = Arrays.asList(i.toString().split(",")); + String result = calculationFormula(strings, formula); + list.add(result); + }); + } + formulaData.put("isCalculation", false); formulaData.put("result", list); - } } jsonObject.put(sonKey, formulaData); } -- Gitblit v1.9.3