From 31e408fb7efa3b8352d420d3cb4dbf4ca7f1d47a Mon Sep 17 00:00:00 2001 From: luodangjia <luodangjia> Date: 星期六, 31 八月 2024 16:46:44 +0800 Subject: [PATCH] 8.31 --- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java | 98 ++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 88 insertions(+), 10 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 94f73de..c4a7a3c 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 @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.account.api.feignClient.AppUserCarClient; import com.ruoyi.account.api.feignClient.AppUserClient; @@ -16,6 +17,9 @@ import com.ruoyi.chargingPile.api.model.Site; import com.ruoyi.chargingPile.api.model.TChargingGun; import com.ruoyi.chargingPile.api.model.TChargingPile; +import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.core.dto.ChargingOrderGroup; +import com.ruoyi.common.core.dto.ChargingPercentProvinceDto; import com.ruoyi.common.core.web.domain.AjaxResult; import com.ruoyi.common.core.web.page.BasePage; import com.ruoyi.common.core.web.page.PageInfo; @@ -25,6 +29,7 @@ import com.ruoyi.integration.api.model.UploadRealTimeMonitoringData; import com.ruoyi.order.api.model.TChargingOrder; import com.ruoyi.order.api.model.TChargingOrderAccountingStrategy; +import com.ruoyi.order.api.model.TChargingOrderRefund; import com.ruoyi.order.api.query.ChargingOrderQuery; import com.ruoyi.order.api.vo.ChargingOrderVO; import com.ruoyi.order.api.vo.TCharingOrderVO; @@ -44,6 +49,7 @@ import javax.annotation.Resource; import java.math.BigDecimal; import java.text.SimpleDateFormat; +import java.time.LocalDate; import java.time.LocalDateTime; import java.time.ZoneOffset; import java.time.format.DateTimeFormatter; @@ -500,7 +506,9 @@ BigDecimal electronicMoney = new BigDecimal("0"); BigDecimal serviceMoney = new BigDecimal("0"); for (ChargingOrderVO chargingOrderVO : list) { - total = total.add(chargingOrderVO.getChargingCapacity()); + if (chargingOrderVO.getChargingCapacity()!=null){ + total = total.add(chargingOrderVO.getChargingCapacity()); + } // 充电订单 明细记录 List<TChargingOrderAccountingStrategy> chargingOrderId = chargingOrderAccountingStrategyService.list(new QueryWrapper<TChargingOrderAccountingStrategy>() .eq("charging_order_id", chargingOrderVO.getId())); @@ -511,14 +519,18 @@ LocalDateTime startTime = chargingOrderVO.getStartTime(); LocalDateTime endTime = chargingOrderVO.getEndTime(); // 计算时间差 秒 充电时长 - long between = ChronoUnit.SECONDS.between(startTime, endTime); - chargingOrderVO.setChargingSecond(between); - time += between; + if (startTime!=null && endTime!=null){ + long between = ChronoUnit.SECONDS.between(startTime, endTime); + chargingOrderVO.setChargingSecond(between); + time += between; + } // 总收入 - if (chargingOrderVO.getRefundStatus() == 2){ + if (chargingOrderVO.getRefundStatus() !=null && chargingOrderVO.getRefundStatus() == 2){ income = income.add(chargingOrderVO.getPaymentAmount().subtract(chargingOrderVO.getRefundAmount())); }else{ - income = income.add(chargingOrderVO.getPaymentAmount()); + if (chargingOrderVO.getPaymentAmount()!=null){ + income = income.add(chargingOrderVO.getPaymentAmount()); + } } for (TChargingOrderAccountingStrategy tChargingOrderAccountingStrategy : chargingOrderId) { // 累计电费 @@ -540,11 +552,14 @@ // 车牌号 chargingOrderVO.setPhone(data.getPhone()); List<Long> longs = new ArrayList<>(); - longs.add(chargingOrderVO.getAppUserCarId()); - List<TAppUserCar> data1 = appUserCarClient.getCarByIds(longs).getData(); - if (!data1.isEmpty()){ - chargingOrderVO.setLicensePlate(data1.get(0).getLicensePlate()); + if (chargingOrderVO.getAppUserCarId()!=null){ + longs.add(chargingOrderVO.getAppUserCarId()); + List<TAppUserCar> data1 = appUserCarClient.getCarByIds(longs).getData(); + if (!data1.isEmpty()){ + chargingOrderVO.setLicensePlate(data1.get(0).getLicensePlate()); + } } + } } tCharingOrderVO.setTotal(total); @@ -556,4 +571,67 @@ tCharingOrderVO.setList(pageInfo); return tCharingOrderVO; } + + @Override + public R<PageInfo<PayOrderDto>> payOrderQuery(PayOrderQueryDto payOrderQueryDto) { + PageInfo<PayOrderDto> pageInfo = new PageInfo<>(payOrderQueryDto.getPageCurr(),payOrderQueryDto.getPageSize()); + List<PayOrderDto> list = this.baseMapper.payOrderQuery(pageInfo,payOrderQueryDto); + pageInfo.setRecords(list); + return R.ok(pageInfo); + } + + @Override + public R<PageInfo<TChargingOrderRefund>> getRefundList(ChargingRefundDto chargingRefundDto) { + PageInfo<TChargingOrderRefund> pageInfo = new PageInfo<>(chargingRefundDto.getPageCurr(),chargingRefundDto.getPageSize()); + List<TChargingOrderRefund> list = this.baseMapper.getRefundList(pageInfo,chargingRefundDto); + pageInfo.setRecords(list); + + return R.ok(pageInfo); + } + + @Override + public List<ChargingOrderGroup> chargingOrderGroup(ChargingPercentProvinceDto chargingPercentProvinceDto) { + + return this.baseMapper.chargingOrderGroup(chargingPercentProvinceDto); + } + + @Override + public List<SixChargingDto> charge(LocalDate sixBefore, List<Integer> siteIds) { + return this.baseMapper.charge(sixBefore,siteIds); + } + + @Override + public List<SixCircleDto> circle(List<Integer> siteIds,LocalDate sixBefore) { + return this.baseMapper.circle(siteIds,sixBefore); + } + + @Override + public Map<String, BigDecimal> countAll(LocalDate sixBefore) { + return this.baseMapper.countAll(sixBefore); + } + + @Override + public List<Map<String, BigDecimal>> getSumByType(List<Long> chargingOrderIds) { + return this.baseMapper.getSumByType(chargingOrderIds); + } + + @Override + public List<Map<String, BigDecimal>> getDateData(List<Long> chargingOrderIds) { + return this.baseMapper.getDateData(chargingOrderIds); + } + + @Override + public List<Map<String, BigDecimal>> getWeekData(List<Long> chargingOrderIds) { + return this.baseMapper.getWeekData(chargingOrderIds); + } + + @Override + public List<Map<String, BigDecimal>> getMonthData(List<Long> chargingOrderIds) { + return this.baseMapper.getMonthData(chargingOrderIds); + } + + @Override + public List<Map<String, BigDecimal>> getYearData(List<Long> chargingOrderIds) { + return this.baseMapper.getYearData(chargingOrderIds); + } } -- Gitblit v1.7.1