From 8dc47db0a9e8930d9b7687d2b33f2b030facea67 Mon Sep 17 00:00:00 2001 From: Guoqs <123@jsowell.com> Date: Tue, 14 Jan 2025 16:52:04 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AB=99=E7=82=B9=E6=97=A5=E6=8A=A5=E7=BB=9F?= =?UTF-8?q?=E8=AE=A1=E6=89=80=E6=9C=89=E8=80=97=E7=94=B5=E9=87=8F=E5=A4=A7?= =?UTF-8?q?=E4=BA=8E0=E7=9A=84=E8=AE=A2=E5=8D=95;=20=E5=88=86=E8=B4=A6?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E9=87=8C=E5=BE=85=E5=88=86=E8=B4=A6=E7=9A=84?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E8=BF=87=E6=BB=A4=E6=8E=89=E7=BB=93=E7=AE=97?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E4=B8=BA0=E7=9A=84=E8=AE=A2=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/OrderBasicInfoServiceImpl.java | 5 +++ .../impl/SettleOrderReportServiceImpl.java | 44 ++++++++++--------- 2 files changed, 28 insertions(+), 21 deletions(-) diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java index f42f88bc5..7be7f8bae 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java @@ -1232,6 +1232,11 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService { continue; } + // 2025年1月14日16点50分, 过滤掉结算金额为0的订单 + orderBasicInfos = orderBasicInfos.stream() + .filter(x -> x.getSettleAmount().compareTo(BigDecimal.ZERO) > 0) + .collect(Collectors.toList()); + // 执行分账 for (OrderBasicInfo orderBasicInfo : orderBasicInfos) { try { diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/SettleOrderReportServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/SettleOrderReportServiceImpl.java index 2722fe400..1b698a00b 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/SettleOrderReportServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/SettleOrderReportServiceImpl.java @@ -621,7 +621,7 @@ public class SettleOrderReportServiceImpl implements SettleOrderReportService { /** * 计算站点订单报表 - * + * 2025年1月14日13点53分修改逻辑, 统计充电次数,耗电量和消费金额, 统计范围为全部订单(在线支付, 余额支付, 白名单支付等) * @param stationInfo 站点信息 * @param tradeDate 交易日期 */ @@ -651,17 +651,16 @@ public class SettleOrderReportServiceImpl implements SettleOrderReportService { List collect = orderListVOS.stream().map(OrderListVO::getOrderCode).collect(Collectors.toList()); log.info("站点:{}, 在{}-{}查询到订单数据{}条,订单编号:{}", stationInfo.getStationName(), startTime, endTime, orderListVOS.size(), collect); // 统计出日报信息 - BigDecimal useElectricity = BigDecimal.ZERO; - int chargeNum = 0; - long chargeTime = 0L; - BigDecimal totalElectricityAmount = BigDecimal.ZERO; - BigDecimal totalServiceAmount = BigDecimal.ZERO; - BigDecimal totalOrderAmount = BigDecimal.ZERO; - BigDecimal totalVirtualAmount = BigDecimal.ZERO; - BigDecimal totalSettleAmount = BigDecimal.ZERO; - // 总手续费 - BigDecimal totalFeeAmount = BigDecimal.ZERO; - BigDecimal totalTradeAmount = BigDecimal.ZERO; + BigDecimal useElectricity = BigDecimal.ZERO; // 总电量使用量 + int chargeNum = 0; // 总充电次数 + long chargeTime = 0L; // 总充电时长 + BigDecimal totalElectricityAmount = BigDecimal.ZERO; // 总电费金额 + BigDecimal totalServiceAmount = BigDecimal.ZERO; // 总服务费金额 + BigDecimal totalOrderAmount = BigDecimal.ZERO; // 总订单消费金额 + BigDecimal totalVirtualAmount = BigDecimal.ZERO; // 总虚拟金额 + BigDecimal totalSettleAmount = BigDecimal.ZERO; // 总结算金额 + BigDecimal totalFeeAmount = BigDecimal.ZERO; // 总手续费 + BigDecimal totalTradeAmount = BigDecimal.ZERO; // 总交易金额 List orderCodeList = Lists.newArrayList(); for (OrderListVO vo : orderListVOS) { @@ -669,21 +668,24 @@ public class SettleOrderReportServiceImpl implements SettleOrderReportService { BigDecimal settleAmount = StringUtils.isBlank(vo.getSettleAmount()) ? BigDecimal.ZERO : new BigDecimal(vo.getSettleAmount()); - if (settleAmount.compareTo(BigDecimal.ZERO) <= 0) { - // 只统计用电量大于0的 - continue; - } - - // 订单消费金额 - String orderAmount = vo.getOrderAmount(); + // if (settleAmount.compareTo(BigDecimal.ZERO) <= 0) { + // // 只统计用电量大于0的 + // continue; + // } // 用电度数 BigDecimal chargingDegree = StringUtils.isBlank(vo.getChargingDegree()) ? BigDecimal.ZERO : new BigDecimal(vo.getChargingDegree()); - // 充电度数累计 - useElectricity = useElectricity.add(chargingDegree); + // 统计用电度数大于0的订单, 2025年1月14日16点00分修改 + if (chargingDegree.compareTo(BigDecimal.ZERO) <= 0) { + // 只统计用电量大于0的 + continue; + } + + String orderAmount = vo.getOrderAmount(); // 订单消费金额 + useElectricity = useElectricity.add(chargingDegree); // 充电度数累计 // 充电次数 chargeNum += 1;