mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-04-22 03:55:17 +08:00
Merge branch 'dev-g' into dev
This commit is contained in:
@@ -2042,6 +2042,37 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
|
||||
// 根据站点id查询分账配置(如果未配置则初始化)
|
||||
List<StationSplitConfig> stationSplitConfigList = stationSplitConfigService.queryByStationIdWithInit(stationId);
|
||||
|
||||
// 查字典是否开启收取平台支持服务费
|
||||
String dictValue = DictUtils.getDictValue("platform_service_flag", "status");
|
||||
if (StringUtils.equals(dictValue, Constants.ONE)) { // 开启收取平台支持服务费
|
||||
// 根据站点id查询平台支持服务费率
|
||||
PileStationInfo pileStationInfo = pileStationInfoService.selectPileStationInfoById(Long.parseLong(stationId));
|
||||
// 如果是否对接高德为1, 并且支持服务费率大于0, 则收取平台支持服务费
|
||||
if (pileStationInfo != null
|
||||
&& StringUtils.equals(pileStationInfo.getAMapFlag(), Constants.ONE)
|
||||
&& pileStationInfo.getServiceRate().compareTo(BigDecimal.ZERO) > 0) {
|
||||
// 获取平台支持服务费率
|
||||
BigDecimal serviceRate = pileStationInfo.getServiceRate();
|
||||
// 取出stationSplitConfigList中手续费承担方, 并把电费分成比例和服务费分成比例减去serviceRate
|
||||
for (StationSplitConfig stationSplitConfig : stationSplitConfigList) {
|
||||
if (Constants.ONE.equals(stationSplitConfig.getFeeFlag())) {
|
||||
stationSplitConfig.setElectricitySplitRatio(stationSplitConfig.getElectricitySplitRatio().subtract(serviceRate));
|
||||
stationSplitConfig.setServiceSplitRatio(stationSplitConfig.getServiceSplitRatio().subtract(serviceRate));
|
||||
}
|
||||
}
|
||||
// 添加一个账户, adapayMemberId为0, 电费分成比例为serviceRate, 服务费分成比例为serviceRate
|
||||
stationSplitConfigList.add(StationSplitConfig.builder()
|
||||
.adapayMemberId(Constants.ZERO)
|
||||
.electricitySplitRatio(serviceRate)
|
||||
.serviceSplitRatio(serviceRate)
|
||||
.feeFlag(Constants.ZERO)
|
||||
.build()
|
||||
);
|
||||
logger.info("realTimeOrderSplit-订单:{}, 收取平台支持服务费, 平台分成比例为:{}, stationSplitConfigList:{}",
|
||||
orderCode, serviceRate, JSON.toJSONString(stationSplitConfigList));
|
||||
}
|
||||
}
|
||||
|
||||
// 计算每个参与分账的用户, 应分多少钱
|
||||
List<SplitData> splitDataList = calculationSplitDataList(stationSplitConfigList, afterSettleOrderDTO);
|
||||
List<DivMember> divMemberList = transformDivMemberList(splitDataList);
|
||||
|
||||
@@ -1109,8 +1109,8 @@ public abstract class AbstractProgramLogic implements InitializingBean {
|
||||
orderDetail.setDiscountElectricityAmount(electricityAmountDiscount);
|
||||
// 服务费折扣金额(服务费便宜了多少钱)
|
||||
orderDetail.setDiscountServiceAmount(serviceAmountDiscount);
|
||||
logger.info("计算订单折扣V2, orderCode:{}, memberId:{}, 订单折扣金额:{}, 电费折扣金额:{}, 服务费折扣金额:{}, 优惠后总消费金额:{}",
|
||||
orderCode, memberId, discountAmount, electricityAmountDiscount, serviceAmountDiscount, totalConsumeAmount);
|
||||
logger.info("计算订单折扣V2, orderCode:{}, memberId:{}, 订单折扣金额:{}, 电费折扣金额:{}, 服务费折扣金额:{}, 优惠后总消费金额:{}, 更新后退款金额:{}",
|
||||
orderCode, memberId, discountAmount, electricityAmountDiscount, serviceAmountDiscount, totalConsumeAmount, refundAmount);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user