mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-06-13 03:39:55 +08:00
新的结算方法
This commit is contained in:
@@ -204,6 +204,8 @@ public interface OrderBasicInfoService{
|
|||||||
|
|
||||||
OrderSplitResult realTimeOrderSplit(AfterSettleOrderDTO afterSettleOrderDTO) throws BaseAdaPayException;
|
OrderSplitResult realTimeOrderSplit(AfterSettleOrderDTO afterSettleOrderDTO) throws BaseAdaPayException;
|
||||||
|
|
||||||
|
List<DivMember> calculationOfSplitAmount(List<StationSplitConfig> stationSplitConfigList, AfterSettleOrderDTO afterSettleOrderDTO);
|
||||||
|
|
||||||
List<DivMember> calculationOfSplitAmount(List<StationSplitConfig> stationSplitConfigList, AfterSettleOrderDTO afterSettleOrderDTO, List<PaymentInfo> paymentInfos);
|
List<DivMember> calculationOfSplitAmount(List<StationSplitConfig> stationSplitConfigList, AfterSettleOrderDTO afterSettleOrderDTO, List<PaymentInfo> paymentInfos);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -1700,18 +1700,30 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
|
|||||||
* @param afterSettleOrderDTO
|
* @param afterSettleOrderDTO
|
||||||
*/
|
*/
|
||||||
private void splittingMethod(AfterSettleOrderDTO afterSettleOrderDTO) {
|
private void splittingMethod(AfterSettleOrderDTO afterSettleOrderDTO) {
|
||||||
BigDecimal orderSettleAmount = afterSettleOrderDTO.getOrderSettleAmount(); // 结算金额
|
// 结算金额
|
||||||
// 订单是否需要分账
|
BigDecimal orderSettleAmount = afterSettleOrderDTO.getOrderSettleAmount() == null ? BigDecimal.ZERO : afterSettleOrderDTO.getOrderSettleAmount();
|
||||||
if (orderSettleAmount.compareTo(BigDecimal.ZERO) > 0) {
|
// 订单是否需要分账, 结算金额必须大于0
|
||||||
|
if (orderSettleAmount.compareTo(BigDecimal.ZERO) <= 0) {
|
||||||
|
logger.info("订单结算金额必须大于0");
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 校验分账
|
||||||
|
verifyOrderAllAmount(afterSettleOrderDTO);
|
||||||
|
|
||||||
// 根据站点id查询分账配置
|
// 根据站点id查询分账配置
|
||||||
List<StationSplitConfig> stationSplitConfigList = stationSplitConfigService.queryByStationId(afterSettleOrderDTO.getStationId());
|
List<StationSplitConfig> stationSplitConfigList = stationSplitConfigService.queryByStationId(afterSettleOrderDTO.getStationId());
|
||||||
|
|
||||||
// 订单分账
|
// 订单分账
|
||||||
|
calculationOfSplitAmount(stationSplitConfigList, afterSettleOrderDTO);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<DivMember> calculationOfSplitAmount(List<StationSplitConfig> stationSplitConfigList, AfterSettleOrderDTO afterSettleOrderDTO) {
|
||||||
|
return calculationOfSplitAmount(stationSplitConfigList, afterSettleOrderDTO, null);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 计算每个账户需要分账的金额
|
* 计算每个账户需要分账的金额
|
||||||
* @param stationSplitConfigList 参与分账的账户信息
|
* @param stationSplitConfigList 参与分账的账户信息
|
||||||
|
|||||||
Reference in New Issue
Block a user