diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderSplitRecordServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderSplitRecordServiceImpl.java index 10ebd25ec..ad1486a02 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderSplitRecordServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderSplitRecordServiceImpl.java @@ -204,10 +204,12 @@ public class OrderSplitRecordServiceImpl implements OrderSplitRecordService { BigDecimal totalSettleAmount = BigDecimal.ZERO; // 当天结算金额汇总 BigDecimal totalMerchantSplitAmount = BigDecimal.ZERO; // 当天运营商分账金额汇总 BigDecimal totalOtherSplitAmount = BigDecimal.ZERO; // 当天其他人分账金额汇总 + BigDecimal totalFeeAmount = BigDecimal.ZERO; // 当天手续费金额 Map> otherSplitDetailMap = Maps.newHashMap(); // 当天其他人分账的记录 for (Map.Entry> listEntry : adapayMemberIdRecordMap.entrySet()) { List recordList = listEntry.getValue(); for (OrderSplitRecord record : recordList) { + totalFeeAmount = totalFeeAmount.add(record.getFeeAmount()); // 由于存在订单被多家分账, recordList里的订单号是存在重复的, 判断orderCode是否存在orderCodeSet中, 存在则累计totalSettleAmount, 并从orderCodeSet中删除 if (orderCodeSet.contains(record.getOrderCode())) { totalSettleAmount = totalSettleAmount.add(record.getSettleAmount()); @@ -253,6 +255,7 @@ public class OrderSplitRecordServiceImpl implements OrderSplitRecordService { summaryData.setOtherSplitDetailList(otherSplitDetailList); summaryData.setTotalSettleAmount(totalSettleAmount); summaryData.setMerchantSplitAmount(totalMerchantSplitAmount); + summaryData.setMerchantFeeAmount(totalFeeAmount); summaryData.setOtherSplitAmount(totalOtherSplitAmount); resultList.add(summaryData); } 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 000a85067..3fa1868bb 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 @@ -456,23 +456,32 @@ public class SettleOrderReportServiceImpl implements SettleOrderReportService { .endTime(dto.getEndTime()) .build(); PageHelper.clearPage(); - List merchantClearingBillList = clearingBillInfoService.getMerchantClearingBillList(clearingBillDTO); + BigDecimal tradeAmount = BigDecimal.ZERO; BigDecimal tradeFee = BigDecimal.ZERO; - for (MerchantClearingBillVO merchantClearingBillVO : merchantClearingBillList) { - tradeAmount = tradeAmount.add(new BigDecimal(merchantClearingBillVO.getWithdrawAbleAmount())); - tradeFee = tradeFee.add(new BigDecimal(merchantClearingBillVO.getFeeAmount())); - } - // 交易金额 - report.setTradeAmount(tradeAmount); - // 交易手续费 - report.setTradeFee(tradeFee); + + // List merchantClearingBillList = clearingBillInfoService.getMerchantClearingBillList(clearingBillDTO); + // for (MerchantClearingBillVO merchantClearingBillVO : merchantClearingBillList) { + // tradeAmount = tradeAmount.add(new BigDecimal(merchantClearingBillVO.getWithdrawAbleAmount())); + // tradeFee = tradeFee.add(new BigDecimal(merchantClearingBillVO.getFeeAmount())); + // } // 获取他人分账金额 List orderSplitDailySummaryData = orderSplitRecordService.queryOrderSplitData(dto.getMerchantId(), null, dto.getStartTime(), dto.getEndTime()); if (!CollectionUtils.isEmpty(orderSplitDailySummaryData)) { report.setOtherSplitAmount(orderSplitDailySummaryData.stream().map(OrderSplitDailySummaryData::getOtherSplitAmount).reduce(BigDecimal.ZERO, BigDecimal::add)); + + // 2025年7月14日15点22分 从order_split_record表中计算订单分账金额 + tradeAmount = orderSplitDailySummaryData.stream().map(OrderSplitDailySummaryData::getMerchantSplitAmount) + .reduce(BigDecimal.ZERO, BigDecimal::add); + tradeFee = orderSplitDailySummaryData.stream().map(OrderSplitDailySummaryData::getMerchantFeeAmount) + .reduce(BigDecimal.ZERO, BigDecimal::add); } + + // 交易金额 + report.setTradeAmount(tradeAmount.subtract(tradeFee)); + // 交易手续费 + report.setTradeFee(tradeFee); return report; } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/vo/web/OrderSplitDailySummaryData.java b/jsowell-pile/src/main/java/com/jsowell/pile/vo/web/OrderSplitDailySummaryData.java index 2ae931a72..31128ba30 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/vo/web/OrderSplitDailySummaryData.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/vo/web/OrderSplitDailySummaryData.java @@ -38,9 +38,15 @@ public class OrderSplitDailySummaryData { /** * 本运营商分账金额 + * 此金额包含手续费金额 */ private BigDecimal merchantSplitAmount; + /** + * 本运营商手续费金额 + */ + private BigDecimal merchantFeeAmount; + /** * 他人分账金额(被分走的金额) */