diff --git a/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/api/XhpcPileOrderController.java b/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/api/XhpcPileOrderController.java index 74dbf094..55236403 100644 --- a/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/api/XhpcPileOrderController.java +++ b/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/api/XhpcPileOrderController.java @@ -306,11 +306,19 @@ public class XhpcPileOrderController extends BaseController { judge =true; } if (judge) { - xhpcChargeOrder.setStatus(2); - xhpcChargeOrder.setUpdateTime(new Date()); - xhpcChargeOrderService.updateXhpcChargeOrder(xhpcChargeOrder); - //xhpcRealTimeOrderService.addZeroHistoryOrder(xhpcChargeOrder); - logger.info("订单无实时数据>>>>>orderNo:" + orderNo); + CacheOrderData cacheOrderData = (CacheOrderData)cacheMap.get("orderData"); + if(cacheOrderData==null || cacheOrderData.getTotalPowerQuantity()==0){ + xhpcChargeOrder.setStatus(3); + xhpcChargeOrder.setUpdateTime(new Date()); + xhpcChargeOrderService.updateXhpcChargeOrder(xhpcChargeOrder); + xhpcRealTimeOrderService.addZeroHistoryOrder(xhpcChargeOrder); + }else{ + xhpcChargeOrder.setStatus(2); + xhpcChargeOrder.setUpdateTime(new Date()); + xhpcChargeOrderService.updateXhpcChargeOrder(xhpcChargeOrder); + } + logger.info("*********************订单号>>>>>orderNo:" + orderNo); + logger.info("*********************订单号>>>>>orderNo:" + orderNo); return R.ok(); } @@ -320,10 +328,17 @@ public class XhpcPileOrderController extends BaseController { logger.info("无效订单号>>>>>orderNo:" + orderNo); return R.fail(500,"无效订单号:"+orderNo); } - if(cacheOrderData==null || cacheOrderData.getT1PowerQuantity()==null ){ - logger.info("无效订单号>>>>>orderNo:" + orderNo); - return R.fail(500,"无效订单号:"+orderNo); + + if(cacheOrderData.getTotalPowerQuantity()==0){ + xhpcChargeOrder.setStatus(3); + xhpcChargeOrder.setUpdateTime(new Date()); + xhpcChargeOrderService.updateXhpcChargeOrder(xhpcChargeOrder); + xhpcRealTimeOrderService.addZeroHistoryOrder(xhpcChargeOrder); + logger.info("*********************电量为0订单号>>>>>orderNo:" + orderNo); + logger.info("*********************电量为0订单号>>>>>orderNo:" + orderNo); + return R.ok(); } + if(xhpcChargeOrder.getStatus()==1 || xhpcChargeOrder.getStatus()==3){ logger.info("订单已结束不能重复结算>>>>>orderNo:"+orderNo+">>>chargeOrderId:"+xhpcChargeOrder.getChargeOrderId()); return R.ok(); diff --git a/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/service/impl/XhpcRealTimeOrderServiceImpl.java b/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/service/impl/XhpcRealTimeOrderServiceImpl.java index 5b8789f1..bc464bed 100644 --- a/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/service/impl/XhpcRealTimeOrderServiceImpl.java +++ b/xhpc-modules/xhpc-order/src/main/java/com/xhpc/order/service/impl/XhpcRealTimeOrderServiceImpl.java @@ -325,10 +325,6 @@ public class XhpcRealTimeOrderServiceImpl extends BaseService implements IXhpcRe @Transactional public AjaxResult getExamine(Long chargingOrderId, BigDecimal powerPrice, BigDecimal servicePrice) { - //电费不能为0 - if(new BigDecimal(0).compareTo(powerPrice)==1){ - return AjaxResult.error("电费为0"); - } //总金额 BigDecimal money = powerPrice.add(servicePrice); //总服务费 servicePrice @@ -345,6 +341,7 @@ public class XhpcRealTimeOrderServiceImpl extends BaseService implements IXhpcRe xhpcChargeOrder.setStatus(3); xhpcChargeOrder.setAmountCharged(money); xhpcChargeOrder.setStopReasonEvcs(45); + Long userId = xhpcChargeOrder.getUserId(); Integer source = xhpcChargeOrder.getSource(); String tenantId = xhpcChargeOrder.getTenantId(); @@ -374,8 +371,12 @@ public class XhpcRealTimeOrderServiceImpl extends BaseService implements IXhpcRe xhpcHistoryOrder.setEndTime(xhpcChargeOrder.getEndTime()); xhpcHistoryOrder.setStartSoc(xhpcChargeOrder.getStartSoc()); xhpcHistoryOrder.setEndSoc(xhpcChargeOrder.getEndSoc()); + if(xhpcChargeOrder.getChargingDegree() !=null){ xhpcHistoryOrder.setTotalPower(xhpcChargeOrder.getChargingDegree().doubleValue()); + }else{ + xhpcChargeOrder.setChargingDegree(new BigDecimal(0)); + xhpcHistoryOrder.setTotalPower(0.00); } xhpcHistoryOrder.setType(2); addSettlement(powerPrice, servicePrice, money, surplusPowerPrice, surplusServicePrice, xhpcChargeOrder, userId, userMessage,0,null,xhpcHistoryOrder); @@ -462,6 +463,8 @@ public class XhpcRealTimeOrderServiceImpl extends BaseService implements IXhpcRe } } } + logger.info("<<<<<<<<<<<<<<<<111111>>>>>>>>>>>>>>>>>"); + logger.info("<<<<<<<<<<<<<<<<111111>>>>>>>>>>>>>>>>>"); // if ( !UserTypeUtil.INTERNET_TYPE.equals(source)) { if(UserTypeUtil.COMMUNIT_TYPE.equals(source) || UserTypeUtil.CUSTOMERS_TYPE.equals(source)){ @@ -589,6 +592,9 @@ public class XhpcRealTimeOrderServiceImpl extends BaseService implements IXhpcRe return R.fail(); } } + logger.info("<<<<<<<<<<<<<<<<22222>>>>>>>>>>>>>>>>>"); + logger.info("<<<<<<<<<<<<<<<<22222>>>>>>>>>>>>>>>>>"); + Long chargeOrderId = xhpcChargeOrder.getChargeOrderId(); xhpcHistoryOrder.setChargeOrderId(chargeOrderId); xhpcHistoryOrder.setChargingStationId(xhpcChargeOrder.getChargingStationId()); @@ -630,6 +636,9 @@ public class XhpcRealTimeOrderServiceImpl extends BaseService implements IXhpcRe if(xhpcChargeOrder.getPower()!=null){ xhpcHistoryOrder.setConnectorPowerEvcs(Double.parseDouble(xhpcChargeOrder.getPower())); } + + logger.info("<<<<<<<<<<<<<<<<33333>>>>>>>>>>>>>>>>>"); + logger.info("<<<<<<<<<<<<<<<<33333>>>>>>>>>>>>>>>>>"); Map map =new HashMap<>(); map.put("source",xhpcChargeOrder.getSource()); map.put("tenantId",xhpcChargeOrder.getTenantId()); @@ -731,7 +740,9 @@ public class XhpcRealTimeOrderServiceImpl extends BaseService implements IXhpcRe }); }catch (Exception e){ logger.info("<<<<<<<<<<<<<<<<运行异常,结算失败,数据回滚>>>>>>>>>>>>>>>>>"+xhpcChargeOrder.getSerialNumber()); - logger.info("<<<<<<<<<<<<<<<<运行异常,结算失败,数据回滚>>>>>>>>>>>>>>>>>"+e.getMessage()); + logger.info("<<<<<<<<<<<<<<<<运行异常,结算失败,数据回滚>>>>>>>>>>>>>>>>>"); + e.printStackTrace(); + logger.info("<<<<<<<<<<<<<<<<运行异常,结算失败,数据回滚>>>>>>>>>>>>>>>>>"); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); return R.fail(); }