From 5489c2cc4d35970ca8fe4d30cf8ac374eef17ca4 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期六, 31 八月 2024 18:02:39 +0800 Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/mx_charging_pile --- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java | 110 +++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 86 insertions(+), 24 deletions(-) diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java index 0fd7b60..b992b12 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java @@ -50,6 +50,7 @@ import com.ruoyi.order.service.TOrderEvaluateService; import com.ruoyi.other.api.domain.TCoupon; import com.ruoyi.other.api.domain.TGoods; +import com.ruoyi.order.vo.ChargingOrderListInfoVO; import com.ruoyi.payment.api.feignClient.AliPaymentClient; import com.ruoyi.payment.api.feignClient.WxPaymentClient; import com.ruoyi.payment.api.model.RefundReq; @@ -113,7 +114,7 @@ private AliPaymentClient aliPaymentClient; - + @Resource private AppUserVipDetailClient appUserVipDetailClient; @@ -133,21 +134,21 @@ @Resource private TOrderEvaluateService orderEvaluateService; - + @Resource private AccountingStrategyDetailClient accountingStrategyDetailClient; - + @Resource private PlatformStartChargingReplyClient platformStartChargingReplyClient; - + @Resource private TChargingOrderRefundService chargingOrderRefundService; - + //计数器 private Map<String, Integer> counter_map = new HashMap<>(); - - - + + + /** * 获取小程序充电记录列表数据 @@ -457,7 +458,7 @@ chargingOrder.setRechargeSerialNumber(transaction_id); chargingOrder.setStatus(2); this.updateById(chargingOrder); - + //添加安全检测数据到缓存中,每步安全检测完成后需要更新缓存数据 PreChargeCheck preChargeCheck = new PreChargeCheck(); preChargeCheck.setElectronicLockLock(false); @@ -479,7 +480,7 @@ //计算电费金额和服务费 BigDecimal serviceCharge = strategyDetail.getServiceCharge().multiply(degrees); BigDecimal electrovalence = strategyDetail.getElectrovalence().multiply(degrees); - + //再处理会员折扣 BigDecimal discount = BigDecimal.ZERO; TAppUser appUser = appUserClient.getUserById(chargingOrder.getAppUserId()).getData(); @@ -495,8 +496,8 @@ } } electrovalence = electrovalence.add(discount); - - + + TChargingPile chargingPile = chargingPileClient.getChargingPileById(chargingGun.getChargingPileId()).getData(); //调用远程启动充电消息 PlatformStartCharging platformStartCharging = new PlatformStartCharging(); @@ -613,11 +614,11 @@ } } } - + } } - - + + /** * 启动失败后微信退款的回调处理 * @param out_refund_no @@ -636,10 +637,10 @@ } return AjaxResult.success(); } - - - - + + + + /** * 获取充电中的详情 * @param id @@ -768,8 +769,8 @@ BigDecimal electronicMoney1 = new BigDecimal("0"); // 单个订单累计服务费 BigDecimal serviceMoney1 = new BigDecimal("0"); - // todo 调用第三方获取充电时长 秒 - + UploadRealTimeMonitoringData data5 = uploadRealTimeMonitoringDataClient.chargingOrderInfo(chargingOrderVO.getCode()).getData(); + chargingOrderVO.setChargingSecond(data5.getTime_remaining()*60L); // 总收入 if (chargingOrderVO.getRefundStatus() !=null && chargingOrderVO.getRefundStatus() == 2){ income = income.add(chargingOrderVO.getPaymentAmount().subtract(chargingOrderVO.getRefundAmount())); @@ -881,6 +882,7 @@ return this.baseMapper.getYearData(chargingOrderIds); } + @Override public ChargingOrderTimeVO chargingList(ChargingListQuery dto) { String startTime1 = null; @@ -904,6 +906,7 @@ PageInfo<ChargingOrderListVO> pageInfo = new PageInfo<>(dto.getPageCurr(),dto.getPageSize()); List<ChargingOrderListVO> list = this.baseMapper.chargingList(pageInfo,dto,startTime1,startTime2,endTime1,endTime2); for (ChargingOrderListVO chargingOrderListVO : list) { + chargingOrderListVO.setUid(chargingOrderListVO.getId()+""); List<Integer> integers = new ArrayList<>(); integers.add(chargingOrderListVO.getSiteId()); List<Site> data = siteClient.getSiteByIds(integers).getData(); @@ -915,7 +918,21 @@ if (data2 != null && data1 != null) { chargingOrderListVO.setTerminalName(data2.getName() + "-" + data1.getName()); } - // todo 充电时长 调用第三方获取 + // 获取充电时间 + UploadRealTimeMonitoringData data5 = uploadRealTimeMonitoringDataClient.chargingOrderInfo(chargingOrderListVO.getCode()).getData(); + if (data5!=null){ + if (data5.getTime_remaining()!=null){ + chargingOrderListVO.setChargingSecond(data5.getTime_remaining()*60L); + + } + } + // 获取开始SOC 结束soc + List<UploadRealTimeMonitoringData> data6 = uploadRealTimeMonitoringDataClient.getDataByOrderCode(chargingOrderListVO.getCode()).getData(); + if (!data6.isEmpty()){ + // 第一条数据soc为开始 最后一条数据soc为结束soc + chargingOrderListVO.setStartSoc(data6.get(0).getSoc().toString()); + chargingOrderListVO.setEndSoc(data6.get(data6.size()-1).getSoc().toString()); + } TAppUser data3 = appUserClient.getUserById(chargingOrderListVO.getAppUserId()).getData(); List<Long> carId = new ArrayList<>(); if (chargingOrderListVO.getAppUserCarId() != null) { @@ -1042,8 +1059,53 @@ chargingOrderTimeVO.setList(pageInfo); return chargingOrderTimeVO; } - - + + @Override + public ChargingOrderListInfoVO chargingInfo(String uid) { + TChargingOrder chargingOrder= this.getById(uid); + + ChargingOrderListInfoVO chargingOrderListInfoVO = new ChargingOrderListInfoVO(); + chargingOrderListInfoVO.setCode(chargingOrder.getCode()); + List<Site> data = siteClient.getSiteByIds(Arrays.asList(chargingOrder.getSiteId())).getData(); + if (!data.isEmpty()){ + chargingOrderListInfoVO.setSiteName(data.get(0).getName()); + chargingOrderListInfoVO.setSiteAddress(data.get(0).getAddress()); + } + TChargingGun data1 = chargingGunClient.getChargingGunById(chargingOrder.getChargingGunId()).getData(); + TChargingPile data2 = chargingPileClient.getChargingPileById(data1.getChargingPileId()).getData(); + + if (data1!=null){ + chargingOrderListInfoVO.setGunCode(data1.getCode()); + chargingOrderListInfoVO.setTerminalName(data2.getName()+data1.getName()); + } + chargingOrderListInfoVO.setEndMode(chargingOrder.getEndMode()); + // todo 周一完善 +// chargingOrderListInfoVO.setStartSoc(); +// chargingOrderListInfoVO.setEndSoc(); +// chargingOrderListInfoVO.setChargingCapacity(); +// chargingOrderListInfoVO.setSiteId(); +// chargingOrderListInfoVO.setChargingPileId(); +// chargingOrderListInfoVO.setAppUserId(); +// chargingOrderListInfoVO.setAppUserCarId(); +// chargingOrderListInfoVO.setChargingGunId(); +// chargingOrderListInfoVO.setOrderType(); +// chargingOrderListInfoVO.setChargingSecond(); +// chargingOrderListInfoVO.setLicensePlate(); +// chargingOrderListInfoVO.setPhone(); +// chargingOrderListInfoVO.setPaymentAmount(); +// chargingOrderListInfoVO.setElectrovalence(); +// chargingOrderListInfoVO.setServiceCharge(); +// chargingOrderListInfoVO.setStartTime(); +// chargingOrderListInfoVO.setEndTime(); +// chargingOrderListInfoVO.setId(); +// chargingOrderListInfoVO.setUid(); +// chargingOrderListInfoVO.setList(); + + + return null; + } + + /** * 处理充电订单实时监控数据相关的业务逻辑 * @param query -- Gitblit v1.7.1