diff --git a/jsowell-admin/src/main/java/com/jsowell/service/TempService.java b/jsowell-admin/src/main/java/com/jsowell/service/TempService.java index 3c563185e..568f9a629 100644 --- a/jsowell-admin/src/main/java/com/jsowell/service/TempService.java +++ b/jsowell-admin/src/main/java/com/jsowell/service/TempService.java @@ -587,29 +587,34 @@ public class TempService { */ public Map> checkCombinedChargingOrder(List orderCodeList) throws BaseAdaPayException { Map> resultMap = Maps.newHashMap(); - Set combinedChargingOrderList = Sets.newHashSet(); - Set notCombinedChargingOrderList = Sets.newHashSet(); + List combinedChargingOrderList = Lists.newArrayList(); + List notCombinedChargingOrderList = Lists.newArrayList(); + List noDataOrderList = Lists.newArrayList(); for (String orderCode : orderCodeList) { // 查询orderMonitorData OrderMonitorData orderMonitorData = orderMonitorDataService.selectByOrderCode(orderCode); if (orderMonitorData == null) { logger.info("订单:{}不存在", orderCode); + noDataOrderList.add(orderCode); continue; } JSONArray jsonArray = JSONArray.parseArray(orderMonitorData.getMonitorData()); + List orderOutputCurrentList = Lists.newArrayList(); for (int i = 0; i < jsonArray.size(); i++) { JSONObject jsonObject = jsonArray.getJSONObject(i); String outputCurrent = jsonObject.getString("outputCurrent"); - if (new BigDecimal(outputCurrent).compareTo(new BigDecimal(250)) > 0) { - logger.info("订单:{},第{}条数据,输出电流:{},大于250,为并充订单", orderCode, i, outputCurrent); - combinedChargingOrderList.add(orderCode); - break; - } + orderOutputCurrentList.add(new BigDecimal(outputCurrent)); + } + // 如果orderOutputCurrentList中任意一值大于250,判定为并充订单 + if (orderOutputCurrentList.stream().anyMatch(current -> current.compareTo(new BigDecimal("250")) > 0)) { + combinedChargingOrderList.add(orderCode); + } else { notCombinedChargingOrderList.add(orderCode); } } - resultMap.put("combinedChargingOrderList", Lists.newArrayList(combinedChargingOrderList)); - resultMap.put("notCombinedChargingOrderList", Lists.newArrayList(notCombinedChargingOrderList)); + resultMap.put("combinedChargingOrderList", combinedChargingOrderList); + resultMap.put("notCombinedChargingOrderList", notCombinedChargingOrderList); + resultMap.put("noDataOrderList", noDataOrderList); return resultMap; } }