校验是否为并充订单

This commit is contained in:
Guoqs
2024-11-13 17:06:46 +08:00
parent 5c6e9a5269
commit 3e320cbc89
5 changed files with 69 additions and 1 deletions

View File

@@ -1,6 +1,7 @@
package com.jsowell.service;
import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
@@ -81,6 +82,12 @@ public class TempService {
@Autowired
private PileMsgRecordMapper pileMsgRecordMapper;
@Autowired
private PileMsgRecordService pileMsgRecordService;
@Autowired
private OrderMonitorDataService orderMonitorDataService;
/**
* 计算订单耗电量
* 内蒙古站点
@@ -574,4 +581,36 @@ public class TempService {
}
logger.info("{} - {} 期间,共有{}笔支付单存在剩余金额, 共计:{}list:{}", dto.getStartTime(), dto.getEndTime(), paymentIdList.size(), total, JSON.toJSONString(paymentIdList));
}
/**
* 校验是否为并充订单
*/
public Map<String, List<String>> checkCombinedChargingOrder(List<String> orderCodeList) throws BaseAdaPayException {
Map<String, List<String>> resultMap = Maps.newHashMap();
Set<String> combinedChargingOrderList = Sets.newHashSet();
Set<String> notCombinedChargingOrderList = Sets.newHashSet();
for (String orderCode : orderCodeList) {
// 查询orderMonitorData
OrderMonitorData orderMonitorData = orderMonitorDataService.selectByOrderCode(orderCode);
if (orderMonitorData == null) {
logger.info("订单:{}不存在", orderCode);
continue;
}
JSONArray jsonArray = JSONArray.parseArray(orderMonitorData.getMonitorData());
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;
}
notCombinedChargingOrderList.add(orderCode);
}
}
resultMap.put("combinedChargingOrderList", Lists.newArrayList(combinedChargingOrderList));
resultMap.put("notCombinedChargingOrderList", Lists.newArrayList(notCombinedChargingOrderList));
return resultMap;
}
}