站点日报统计所有耗电量大于0的订单; 分账任务里待分账的订单过滤掉结算订单为0的订单

This commit is contained in:
Guoqs
2025-01-14 16:52:04 +08:00
parent 687a7250c5
commit 8dc47db0a9
2 changed files with 28 additions and 21 deletions

View File

@@ -1232,6 +1232,11 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
continue; 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) { for (OrderBasicInfo orderBasicInfo : orderBasicInfos) {
try { try {

View File

@@ -621,7 +621,7 @@ public class SettleOrderReportServiceImpl implements SettleOrderReportService {
/** /**
* 计算站点订单报表 * 计算站点订单报表
* * 2025年1月14日13点53分修改逻辑, 统计充电次数,耗电量和消费金额, 统计范围为全部订单(在线支付, 余额支付, 白名单支付等)
* @param stationInfo 站点信息 * @param stationInfo 站点信息
* @param tradeDate 交易日期 * @param tradeDate 交易日期
*/ */
@@ -651,17 +651,16 @@ public class SettleOrderReportServiceImpl implements SettleOrderReportService {
List<String> collect = orderListVOS.stream().map(OrderListVO::getOrderCode).collect(Collectors.toList()); List<String> collect = orderListVOS.stream().map(OrderListVO::getOrderCode).collect(Collectors.toList());
log.info("站点:{}, 在{}-{}查询到订单数据{}条,订单编号:{}", stationInfo.getStationName(), startTime, endTime, orderListVOS.size(), collect); log.info("站点:{}, 在{}-{}查询到订单数据{}条,订单编号:{}", stationInfo.getStationName(), startTime, endTime, orderListVOS.size(), collect);
// 统计出日报信息 // 统计出日报信息
BigDecimal useElectricity = BigDecimal.ZERO; BigDecimal useElectricity = BigDecimal.ZERO; // 总电量使用量
int chargeNum = 0; int chargeNum = 0; // 总充电次数
long chargeTime = 0L; long chargeTime = 0L; // 总充电时长
BigDecimal totalElectricityAmount = BigDecimal.ZERO; BigDecimal totalElectricityAmount = BigDecimal.ZERO; // 总电费金额
BigDecimal totalServiceAmount = BigDecimal.ZERO; BigDecimal totalServiceAmount = BigDecimal.ZERO; // 总服务费金额
BigDecimal totalOrderAmount = BigDecimal.ZERO; BigDecimal totalOrderAmount = BigDecimal.ZERO; // 总订单消费金额
BigDecimal totalVirtualAmount = BigDecimal.ZERO; BigDecimal totalVirtualAmount = BigDecimal.ZERO; // 总虚拟金额
BigDecimal totalSettleAmount = BigDecimal.ZERO; BigDecimal totalSettleAmount = BigDecimal.ZERO; // 总结算金额
// 总手续费 BigDecimal totalFeeAmount = BigDecimal.ZERO; // 总手续费
BigDecimal totalFeeAmount = BigDecimal.ZERO; BigDecimal totalTradeAmount = BigDecimal.ZERO; // 总交易金额
BigDecimal totalTradeAmount = BigDecimal.ZERO;
List<String> orderCodeList = Lists.newArrayList(); List<String> orderCodeList = Lists.newArrayList();
for (OrderListVO vo : orderListVOS) { for (OrderListVO vo : orderListVOS) {
@@ -669,21 +668,24 @@ public class SettleOrderReportServiceImpl implements SettleOrderReportService {
BigDecimal settleAmount = StringUtils.isBlank(vo.getSettleAmount()) BigDecimal settleAmount = StringUtils.isBlank(vo.getSettleAmount())
? BigDecimal.ZERO ? BigDecimal.ZERO
: new BigDecimal(vo.getSettleAmount()); : new BigDecimal(vo.getSettleAmount());
if (settleAmount.compareTo(BigDecimal.ZERO) <= 0) { // if (settleAmount.compareTo(BigDecimal.ZERO) <= 0) {
// 只统计用电量大于0的 // // 只统计用电量大于0的
continue; // continue;
} // }
// 订单消费金额
String orderAmount = vo.getOrderAmount();
// 用电度数 // 用电度数
BigDecimal chargingDegree = StringUtils.isBlank(vo.getChargingDegree()) BigDecimal chargingDegree = StringUtils.isBlank(vo.getChargingDegree())
? BigDecimal.ZERO ? BigDecimal.ZERO
: new BigDecimal(vo.getChargingDegree()); : new BigDecimal(vo.getChargingDegree());
// 充电度数累计 // 统计用电度数大于0的订单, 2025年1月14日16点00分修改
useElectricity = useElectricity.add(chargingDegree); if (chargingDegree.compareTo(BigDecimal.ZERO) <= 0) {
// 只统计用电量大于0的
continue;
}
String orderAmount = vo.getOrderAmount(); // 订单消费金额
useElectricity = useElectricity.add(chargingDegree); // 充电度数累计
// 充电次数 // 充电次数
chargeNum += 1; chargeNum += 1;