bugfix 修复分账时金额错误的bug

This commit is contained in:
Lemon
2026-02-05 13:28:06 +08:00
parent e4f6a11246
commit 0d04bb884f
2 changed files with 25 additions and 4 deletions

View File

@@ -996,6 +996,7 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
.startTime(DateUtils.formatDateTime(start))
.endTime(DateUtils.formatDateTime(end))
.payMode(OrderPayModeEnum.PAYMENT_OF_WECHATPAY.getValue())
.stationId("1003") // 目前只有 大坡中学举视超充站 这一个站点使用
.orderStatus(OrderStatusEnum.ORDER_COMPLETE.getValue())
.build();
return orderBasicInfoMapper.selectOrderBasicInfoList(dto);
@@ -2380,10 +2381,10 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
String orderCode = afterSettleOrderDTO.getOrderCode();
// 订单信息
OrderBasicInfo orderBasicInfo = afterSettleOrderDTO.getOrderBasicInfo();
// OrderBasicInfo orderBasicInfo = afterSettleOrderDTO.getOrderBasicInfo();
// 保险金额(有默认值 0.00
BigDecimal insuranceAmount = orderBasicInfo.getInsuranceAmount();
// BigDecimal insuranceAmount = orderBasicInfo.getInsuranceAmount();
// 订单是否需要分账, 结算金额必须大于0
if (orderSettleAmount == null || orderSettleAmount.compareTo(BigDecimal.ZERO) <= 0) {
@@ -2418,6 +2419,10 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
logger.info("realTimeOrderSplit-订单[{}]分账信息为空", orderCode);
return null;
}
BigDecimal confirmAmt = BigDecimal.ZERO;
for (DivMember divMember : divMemberList) {
confirmAmt = confirmAmt.add(new BigDecimal(divMember.getAmount()));
}
String paymentId = paymentInfos.get(0).getPaymentId(); // 支付id
String merchantId = afterSettleOrderDTO.getMerchantId(); // 运营商id
@@ -2426,7 +2431,8 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
PaymentConfirmParam param = PaymentConfirmParam.builder()
.paymentId(paymentId)
.divMemberList(divMemberList)
.confirmAmt(orderSettleAmount.add(insuranceAmount)) // 订单结算金额 + 保险金额
// .confirmAmt(orderSettleAmount.add(insuranceAmount)) // 订单结算金额 + 保险金额
.confirmAmt(confirmAmt)
.orderCode(orderCode)
.wechatAppId(appId)
.build();
@@ -6249,6 +6255,11 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
}
}
/**
* 批量修改订单审核状态
* @param dto
* @return
*/
@Override
public int updateOrderReviewFlagTemp(List<String> codes) {
List<String> l = MerchantUtils.getRandomNinetyPercent(codes);
@@ -6505,13 +6516,18 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
.build();
}
/**
* 批量修改订单审核状态
* @param dto
* @return
*/
@Override
public int batchUpdateOrderReview(UpdateOrderReviewDTO dto) {
if (CollectionUtils.isEmpty(dto.getOrderCodeList())) {
return 0;
}
if (StringUtils.isBlank(dto.getStationId())) {
dto.setStationId("1003");
dto.setStationId("1003"); // 大坡中学举视超充站
}
if (StringUtils.isBlank(dto.getReviewFlag())) {
dto.setReviewFlag("0");