超过两小时的订单结算数据丢弃
This commit is contained in:
parent
4155b52a7f
commit
d265735c52
@ -52,10 +52,14 @@ public class OrderDataLogic implements ServiceLogic {
|
|||||||
Map<String, Object> cacheGun = REDIS.getCacheMap(gunkey);
|
Map<String, Object> cacheGun = REDIS.getCacheMap(gunkey);
|
||||||
cacheGun.put("orderstoptime", cacheOrderData.getEndTime());
|
cacheGun.put("orderstoptime", cacheOrderData.getEndTime());
|
||||||
cacheGun.put("orderkey", null);
|
cacheGun.put("orderkey", null);
|
||||||
|
REDIS.setCacheObject(gunkey, cacheGun);
|
||||||
|
Long rdtime = (Long) cacheOrder.get("rdtime");
|
||||||
String resultStr =
|
String resultStr =
|
||||||
"6815".concat(req.get("seqhex").toString()).concat("0040").concat(orderNo).concat(ServiceResult.HEX_00);
|
"6815".concat(req.get("seqhex").toString()).concat("0040").concat(orderNo).concat(ServiceResult.HEX_00);
|
||||||
resultStr = resultStr.concat(CRCCalculator.calcCrc(resultStr));
|
resultStr = resultStr.concat(CRCCalculator.calcCrc(resultStr));
|
||||||
pileOrderService.pileEndOrder(orderNo);
|
if (rdtime != null && (DateUtil.calendar().getTimeInMillis() - rdtime) < 3600000) {
|
||||||
|
pileOrderService.pileEndOrder(orderNo);
|
||||||
|
}
|
||||||
return new ServiceResult(HexUtils.toBytes(resultStr), ServiceResult.OK);
|
return new ServiceResult(HexUtils.toBytes(resultStr), ServiceResult.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -104,7 +104,7 @@ public class RealtimeDataLogic implements ServiceLogic {
|
|||||||
REDIS.setCacheMap(stationTermStatusKey, cacheTerminalStatusMap);
|
REDIS.setCacheMap(stationTermStatusKey, cacheTerminalStatusMap);
|
||||||
Map<String, Object> cacheOrder = REDIS.getCacheMap(orderkey);
|
Map<String, Object> cacheOrder = REDIS.getCacheMap(orderkey);
|
||||||
List<CacheRealtimeData> realtimeDataList = (List<CacheRealtimeData>) cacheOrder.get("realtimeDataList");
|
List<CacheRealtimeData> realtimeDataList = (List<CacheRealtimeData>) cacheOrder.get("realtimeDataList");
|
||||||
if (!orderNo.equals("00000000000000000000000000000000") && statusInt != 2) {
|
if (!orderNo.equals("00000000000000000000000000000000") && statusInt == 3) {
|
||||||
if (realtimeDataList == null) {
|
if (realtimeDataList == null) {
|
||||||
realtimeDataList = new ArrayList<>();
|
realtimeDataList = new ArrayList<>();
|
||||||
}
|
}
|
||||||
@ -129,6 +129,7 @@ public class RealtimeDataLogic implements ServiceLogic {
|
|||||||
// cacheOrder.put("em", realtimeData.()); //todo 实时时段明细数据是否由桩直接上传?
|
// cacheOrder.put("em", realtimeData.()); //todo 实时时段明细数据是否由桩直接上传?
|
||||||
cacheOrder.put("rbalance", balance);
|
cacheOrder.put("rbalance", balance);
|
||||||
cacheOrder.put("remainingTime", tr);
|
cacheOrder.put("remainingTime", tr);
|
||||||
|
cacheOrder.put("rdtime", DateUtil.calendar().getTime().getTime());
|
||||||
cacheOrder.put("status", statusplain);
|
cacheOrder.put("status", statusplain);
|
||||||
cacheOrder.put("totalPower", cacheRealtimeData.getChargingDegree() / 10000.0);
|
cacheOrder.put("totalPower", cacheRealtimeData.getChargingDegree() / 10000.0);
|
||||||
cacheOrder.put("totalMoney", cacheRealtimeData.getAmountCharged() / 10000.0);
|
cacheOrder.put("totalMoney", cacheRealtimeData.getAmountCharged() / 10000.0);
|
||||||
@ -165,6 +166,8 @@ public class RealtimeDataLogic implements ServiceLogic {
|
|||||||
REDIS.setCacheMap(orderkey, cacheOrder);
|
REDIS.setCacheMap(orderkey, cacheOrder);
|
||||||
}
|
}
|
||||||
REDIS.setCacheMap(orderkey, cacheOrder);
|
REDIS.setCacheMap(orderkey, cacheOrder);
|
||||||
|
} else {
|
||||||
|
//todo invoke 异常订单
|
||||||
}
|
}
|
||||||
return new ServiceResult(false);
|
return new ServiceResult(false);
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user