mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-04-20 02:55:04 +08:00
update 财务中心 计算金额
This commit is contained in:
@@ -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<String, List<OrderSplitRecord>> otherSplitDetailMap = Maps.newHashMap(); // 当天其他人分账的记录
|
||||
for (Map.Entry<String, List<OrderSplitRecord>> listEntry : adapayMemberIdRecordMap.entrySet()) {
|
||||
List<OrderSplitRecord> 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);
|
||||
}
|
||||
|
||||
@@ -456,23 +456,32 @@ public class SettleOrderReportServiceImpl implements SettleOrderReportService {
|
||||
.endTime(dto.getEndTime())
|
||||
.build();
|
||||
PageHelper.clearPage();
|
||||
List<MerchantClearingBillVO> 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<MerchantClearingBillVO> merchantClearingBillList = clearingBillInfoService.getMerchantClearingBillList(clearingBillDTO);
|
||||
// for (MerchantClearingBillVO merchantClearingBillVO : merchantClearingBillList) {
|
||||
// tradeAmount = tradeAmount.add(new BigDecimal(merchantClearingBillVO.getWithdrawAbleAmount()));
|
||||
// tradeFee = tradeFee.add(new BigDecimal(merchantClearingBillVO.getFeeAmount()));
|
||||
// }
|
||||
|
||||
// 获取他人分账金额
|
||||
List<OrderSplitDailySummaryData> 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;
|
||||
}
|
||||
|
||||
|
||||
@@ -38,9 +38,15 @@ public class OrderSplitDailySummaryData {
|
||||
|
||||
/**
|
||||
* 本运营商分账金额
|
||||
* 此金额包含手续费金额
|
||||
*/
|
||||
private BigDecimal merchantSplitAmount;
|
||||
|
||||
/**
|
||||
* 本运营商手续费金额
|
||||
*/
|
||||
private BigDecimal merchantFeeAmount;
|
||||
|
||||
/**
|
||||
* 他人分账金额(被分走的金额)
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user