|
@@ -308,6 +308,8 @@ public class PayServiceImpl implements PayService {
|
|
} else {
|
|
} else {
|
|
routeScaleDto.setAmount(routeScaleDto.getAmount().add(scaleDto.getAmount()));
|
|
routeScaleDto.setAmount(routeScaleDto.getAmount().add(scaleDto.getAmount()));
|
|
routeScaleDto.setBalance(routeScaleDto.getBalance().add(scaleDto.getBalance()));
|
|
routeScaleDto.setBalance(routeScaleDto.getBalance().add(scaleDto.getBalance()));
|
|
|
|
+ routeScaleDto.setSaleAmount(routeScaleDto.getSaleAmount().add(scaleDto.getSaleAmount()));
|
|
|
|
+ routeScaleDto.setServiceAmount(routeScaleDto.getServiceAmount().add(scaleDto.getServiceAmount()));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
newRouteScaleDtos.add(routeScaleDto);
|
|
newRouteScaleDtos.add(routeScaleDto);
|
|
@@ -327,7 +329,6 @@ public class PayServiceImpl implements PayService {
|
|
List<Map<String, Object>> tempRoutingList = new ArrayList<>();
|
|
List<Map<String, Object>> tempRoutingList = new ArrayList<>();
|
|
|
|
|
|
PaymentChannelEnum payType = null;
|
|
PaymentChannelEnum payType = null;
|
|
- boolean feeFlag = false;
|
|
|
|
Set<String> routingMerNoSet = new HashSet<>();
|
|
Set<String> routingMerNoSet = new HashSet<>();
|
|
for (RouteScaleDto routeScaleDto : routeScaleDtos) {
|
|
for (RouteScaleDto routeScaleDto : routeScaleDtos) {
|
|
payType = routeScaleDto.getPayType();
|
|
payType = routeScaleDto.getPayType();
|
|
@@ -382,6 +383,8 @@ public class PayServiceImpl implements PayService {
|
|
studentPaymentRouteOrder.setRouteAmount(routingMoney);
|
|
studentPaymentRouteOrder.setRouteAmount(routingMoney);
|
|
studentPaymentRouteOrder.setRouteBalanceAmount(routeBalanceAmount);
|
|
studentPaymentRouteOrder.setRouteBalanceAmount(routeBalanceAmount);
|
|
studentPaymentRouteOrder.setMerNo(routeScaleDto.getMerNo());
|
|
studentPaymentRouteOrder.setMerNo(routeScaleDto.getMerNo());
|
|
|
|
+ studentPaymentRouteOrder.setSaleAmount(routeScaleDto.getSaleAmount());
|
|
|
|
+ studentPaymentRouteOrder.setServiceAmount(routeScaleDto.getServiceAmount());
|
|
RouteOrders.add(studentPaymentRouteOrder);
|
|
RouteOrders.add(studentPaymentRouteOrder);
|
|
routingMerNoSet.add(routeScaleDto.getMerNo());
|
|
routingMerNoSet.add(routeScaleDto.getMerNo());
|
|
}
|
|
}
|
|
@@ -470,9 +473,11 @@ public class PayServiceImpl implements PayService {
|
|
if (routeScaleDto.getFeeType().equals(FeeTypeEnum.SERVICE)) {
|
|
if (routeScaleDto.getFeeType().equals(FeeTypeEnum.SERVICE)) {
|
|
serviceHasRouteMoney = serviceHasRouteMoney.add(routingMoney);
|
|
serviceHasRouteMoney = serviceHasRouteMoney.add(routingMoney);
|
|
serviceHasRouteBalance = serviceHasRouteBalance.add(routingBalance);
|
|
serviceHasRouteBalance = serviceHasRouteBalance.add(routingBalance);
|
|
|
|
+ routeScaleDto.setServiceAmount(routingMoney);
|
|
} else {
|
|
} else {
|
|
sellHasRouteMoney = sellHasRouteMoney.add(routingMoney);
|
|
sellHasRouteMoney = sellHasRouteMoney.add(routingMoney);
|
|
sellHasRouteBalance = sellHasRouteBalance.add(routingBalance);
|
|
sellHasRouteBalance = sellHasRouteBalance.add(routingBalance);
|
|
|
|
+ routeScaleDto.setSaleAmount(routingMoney);
|
|
}
|
|
}
|
|
|
|
|
|
if (routeScaleDto.getAmount().compareTo(BigDecimal.ZERO) <= 0) {
|
|
if (routeScaleDto.getAmount().compareTo(BigDecimal.ZERO) <= 0) {
|
|
@@ -492,7 +497,6 @@ public class PayServiceImpl implements PayService {
|
|
Map<String, List<RouteScaleDto>> routeScaleDtosMap = routeScaleDtos.stream().collect(Collectors.groupingBy(RouteScaleDto::getMerNo));
|
|
Map<String, List<RouteScaleDto>> routeScaleDtosMap = routeScaleDtos.stream().collect(Collectors.groupingBy(RouteScaleDto::getMerNo));
|
|
|
|
|
|
//合并同账号的数据
|
|
//合并同账号的数据
|
|
- BigDecimal maxAmount = BigDecimal.ZERO;
|
|
|
|
List<RouteScaleDto> newRouteScaleDtos = new ArrayList<>();
|
|
List<RouteScaleDto> newRouteScaleDtos = new ArrayList<>();
|
|
for (Map.Entry<String, List<RouteScaleDto>> groupRouteScaleDtos : routeScaleDtosMap.entrySet()) {
|
|
for (Map.Entry<String, List<RouteScaleDto>> groupRouteScaleDtos : routeScaleDtosMap.entrySet()) {
|
|
RouteScaleDto routeScaleDto = null;
|
|
RouteScaleDto routeScaleDto = null;
|
|
@@ -502,24 +506,12 @@ public class PayServiceImpl implements PayService {
|
|
} else {
|
|
} else {
|
|
routeScaleDto.setAmount(routeScaleDto.getAmount().add(scaleDto.getAmount()));
|
|
routeScaleDto.setAmount(routeScaleDto.getAmount().add(scaleDto.getAmount()));
|
|
routeScaleDto.setBalance(routeScaleDto.getBalance().add(scaleDto.getBalance()));
|
|
routeScaleDto.setBalance(routeScaleDto.getBalance().add(scaleDto.getBalance()));
|
|
|
|
+ routeScaleDto.setSaleAmount(routeScaleDto.getSaleAmount().add(scaleDto.getSaleAmount()));
|
|
|
|
+ routeScaleDto.setServiceAmount(routeScaleDto.getServiceAmount().add(scaleDto.getServiceAmount()));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- if (routeScaleDto != null && routeScaleDto.getAmount().compareTo(maxAmount) > 0) {
|
|
|
|
- maxAmount = routeScaleDto.getAmount();
|
|
|
|
- }
|
|
|
|
newRouteScaleDtos.add(routeScaleDto);
|
|
newRouteScaleDtos.add(routeScaleDto);
|
|
}
|
|
}
|
|
-
|
|
|
|
- //金额最大的账号承担手续费
|
|
|
|
- boolean hasFeeFlag = false;
|
|
|
|
- for (RouteScaleDto routeScaleDto : newRouteScaleDtos) {
|
|
|
|
- if (!hasFeeFlag && routeScaleDto.getAmount().compareTo(maxAmount) == 0) {
|
|
|
|
- routeScaleDto.setFeeFlag("Y");
|
|
|
|
- hasFeeFlag = true;
|
|
|
|
- } else {
|
|
|
|
- routeScaleDto.setFeeFlag("N");
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
return newRouteScaleDtos;
|
|
return newRouteScaleDtos;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -556,14 +548,13 @@ public class PayServiceImpl implements PayService {
|
|
// redisTemplate.expire(key, 600, TimeUnit.SECONDS);// 保留10分钟内的key
|
|
// redisTemplate.expire(key, 600, TimeUnit.SECONDS);// 保留10分钟内的key
|
|
// }
|
|
// }
|
|
// }else {
|
|
// }else {
|
|
- BigDecimal monthHasReceipt = studentPaymentRouteOrderDao.getRouteOrderAmount(routeScaleDto.getOrganId(), paymentChannelList, dayStartTime);
|
|
|
|
- monthHasReceipt = monthHasReceipt == null ? BigDecimal.ZERO : monthHasReceipt;
|
|
|
|
|
|
+ BigDecimal monthHasReceipt = studentPaymentRouteOrderDao.getRouteOrderAmount(routeScaleDto.getOrganId(), paymentChannelList, dayStartTime);
|
|
|
|
+ monthHasReceipt = monthHasReceipt == null ? BigDecimal.ZERO : monthHasReceipt;
|
|
// monthHasReceipt.multiply(new BigDecimal(100));
|
|
// monthHasReceipt.multiply(new BigDecimal(100));
|
|
//
|
|
//
|
|
// }
|
|
// }
|
|
|
|
|
|
|
|
|
|
-
|
|
|
|
if (routeScaleDto.getAmount().add(monthHasReceipt).compareTo(monthMaxReceipt) > 0) {
|
|
if (routeScaleDto.getAmount().add(monthHasReceipt).compareTo(monthMaxReceipt) > 0) {
|
|
routeScaleDto.setMerNo(hfmember.getRouteMemberId());
|
|
routeScaleDto.setMerNo(hfmember.getRouteMemberId());
|
|
routeScaleDto.setOrganId(hfmember.getRouteOrganId());
|
|
routeScaleDto.setOrganId(hfmember.getRouteOrganId());
|