cnas-server/src/main/java/com/yuanchu/mom/controller/DeviceController.java
@@ -229,7 +229,7 @@ @PostMapping("/formulaCalculation") @ValueAuth public Result<?> formulaCalculation(@RequestBody Map<String, Object> map) { return Result.success(deviceService.formulaCalculation(map)); return Result.success(deviceService.formulaCalculation(map, false)); } } cnas-server/src/main/java/com/yuanchu/mom/service/DeviceService.java
@@ -44,5 +44,5 @@ Result<?> determineWhetherToCollectData(String managementNumber, HttpServletRequest request); Object formulaCalculation(Map<String, Object> map); Object formulaCalculation(Map<String, Object> map, Boolean isAdopt); } cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java
@@ -180,7 +180,13 @@ Map<String, Object> map = DataAcquisition.dataAcquisitionEntrance(list1, device.get(0), entrustCode, sampleCode, ip); // 4、造循环次数 if (ObjectUtils.isNotEmpty(map)) { if (ObjectUtils.isEmpty(device.get(0).getEntrustCode()) && ObjectUtils.isEmpty(device.get(0).getSampleCode())) { Map<String, Object> frequency = DataAcquisition.createFrequency(entrustCode, sampleCode, map); Object o = formulaCalculation(frequency, true); return Result.success(o); } else { return Result.success(DataAcquisition.createFrequency(entrustCode, sampleCode, map)); } } else { return Result.success(null); } @@ -990,7 +996,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()) { @@ -1011,11 +1017,17 @@ resultList.add(result); } ArrayList<Object> list = new ArrayList<>(); 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); } cnas-server/src/main/java/com/yuanchu/mom/utils/DataAcquisition.java
@@ -175,10 +175,18 @@ Object o = jsonObject1.get(refery); if (ObjectUtils.isNotEmpty(o)) { numberOfDataEntries.addAndGet(1); // 小数点进三位 double v1 = 0; try { v1 = Double.parseDouble(o.toString()); double v2 = v1 / 1000; list.add(v2); } catch (NumberFormatException e) { list.add(o); } } } } // 拼接数采配置 List<Object> result = new ArrayList<>(); for (int i = 0; i < numberOfDataEntries.get(); i++) {