mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-06-12 19:29:52 +08:00
update 保险金额分账
This commit is contained in:
@@ -1947,8 +1947,13 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
|
|||||||
OrderBasicInfo orderBasicInfo = this.getOrderInfoByOrderCode(afterSettleOrderDTO.getOrderCode());
|
OrderBasicInfo orderBasicInfo = this.getOrderInfoByOrderCode(afterSettleOrderDTO.getOrderCode());
|
||||||
String payMode = orderBasicInfo.getPayMode();
|
String payMode = orderBasicInfo.getPayMode();
|
||||||
|
|
||||||
|
|
||||||
// 校验订单支付金额,消费金额,退款金额
|
// 校验订单支付金额,消费金额,退款金额
|
||||||
BigDecimal orderPayAmount = afterSettleOrderDTO.getOrderPayAmount(); // 支付金额
|
BigDecimal orderPayAmount = afterSettleOrderDTO.getOrderPayAmount(); // 支付金额
|
||||||
|
if (orderBasicInfo.getInsuranceAmount() != null) {
|
||||||
|
// 如果该笔订单保险金额不为空,则将支付金额 - 保险金额作为新的支付金额
|
||||||
|
orderPayAmount = orderPayAmount.subtract(orderBasicInfo.getInsuranceAmount());
|
||||||
|
}
|
||||||
BigDecimal orderConsumeAmount = afterSettleOrderDTO.getOrderConsumeAmount(); // 消费金额
|
BigDecimal orderConsumeAmount = afterSettleOrderDTO.getOrderConsumeAmount(); // 消费金额
|
||||||
BigDecimal orderSettleAmount = afterSettleOrderDTO.getOrderSettleAmount();
|
BigDecimal orderSettleAmount = afterSettleOrderDTO.getOrderSettleAmount();
|
||||||
BigDecimal orderRefundAmount = afterSettleOrderDTO.getOrderRefundAmount(); // 退款金额
|
BigDecimal orderRefundAmount = afterSettleOrderDTO.getOrderRefundAmount(); // 退款金额
|
||||||
@@ -2008,6 +2013,8 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
|
|||||||
*/
|
*/
|
||||||
private List<PaymentInfo> getOrderPaymentInfoList(AfterSettleOrderDTO afterSettleOrderDTO) {
|
private List<PaymentInfo> getOrderPaymentInfoList(AfterSettleOrderDTO afterSettleOrderDTO) {
|
||||||
String orderCode = afterSettleOrderDTO.getOrderCode();
|
String orderCode = afterSettleOrderDTO.getOrderCode();
|
||||||
|
OrderBasicInfo orderBasicInfo = afterSettleOrderDTO.getOrderBasicInfo();
|
||||||
|
|
||||||
// 查询订单支付记录
|
// 查询订单支付记录
|
||||||
List<OrderPayRecord> orderPayRecordList = orderPayRecordService.getOrderPayRecordList(orderCode);
|
List<OrderPayRecord> orderPayRecordList = orderPayRecordService.getOrderPayRecordList(orderCode);
|
||||||
// 选出需要分账的支付id
|
// 选出需要分账的支付id
|
||||||
@@ -2052,6 +2059,9 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
|
|||||||
// 订单编号
|
// 订单编号
|
||||||
String orderCode = afterSettleOrderDTO.getOrderCode();
|
String orderCode = afterSettleOrderDTO.getOrderCode();
|
||||||
|
|
||||||
|
// 订单信息
|
||||||
|
OrderBasicInfo orderBasicInfo = afterSettleOrderDTO.getOrderBasicInfo();
|
||||||
|
|
||||||
// 订单是否需要分账, 结算金额必须大于0
|
// 订单是否需要分账, 结算金额必须大于0
|
||||||
if (orderSettleAmount == null || orderSettleAmount.compareTo(BigDecimal.ZERO) <= 0) {
|
if (orderSettleAmount == null || orderSettleAmount.compareTo(BigDecimal.ZERO) <= 0) {
|
||||||
logger.info("realTimeOrderSplit-订单[{}]结算金额[{}]必须大于0", afterSettleOrderDTO.getOrderCode(), orderSettleAmount);
|
logger.info("realTimeOrderSplit-订单[{}]结算金额[{}]必须大于0", afterSettleOrderDTO.getOrderCode(), orderSettleAmount);
|
||||||
@@ -2175,6 +2185,7 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
|
|||||||
@Override
|
@Override
|
||||||
public List<SplitData> calculationSplitDataList(List<StationSplitConfig> stationSplitConfigList, AfterSettleOrderDTO afterSettleOrderDTO) {
|
public List<SplitData> calculationSplitDataList(List<StationSplitConfig> stationSplitConfigList, AfterSettleOrderDTO afterSettleOrderDTO) {
|
||||||
List<SplitData> resultList = Lists.newArrayList();
|
List<SplitData> resultList = Lists.newArrayList();
|
||||||
|
OrderBasicInfo orderBasicInfo = afterSettleOrderDTO.getOrderBasicInfo();
|
||||||
|
|
||||||
// totalElecSplitRatio和totalServiceSplitRatio 都等于100%, 才进行后续操作
|
// totalElecSplitRatio和totalServiceSplitRatio 都等于100%, 才进行后续操作
|
||||||
boolean verifySplitConfig = stationSplitConfigService.verifySplitConfig(stationSplitConfigList);
|
boolean verifySplitConfig = stationSplitConfigService.verifySplitConfig(stationSplitConfigList);
|
||||||
@@ -2237,6 +2248,16 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
|
|||||||
return resultList;
|
return resultList;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 如果保险金额不为空,新增一条分账信息
|
||||||
|
if (orderBasicInfo.getInsuranceAmount() != null) {
|
||||||
|
SplitData insuranceSplit = new SplitData();
|
||||||
|
insuranceSplit.setMemberId(Constants.ZERO);
|
||||||
|
insuranceSplit.setAmount(String.valueOf(orderBasicInfo.getInsuranceAmount()));
|
||||||
|
insuranceSplit.setFeeFlag(Constants.ZERO);
|
||||||
|
|
||||||
|
resultList.add(insuranceSplit);
|
||||||
|
}
|
||||||
|
|
||||||
return resultList;
|
return resultList;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user