feat:tiaoz

This commit is contained in:
苏竹红
2025-08-20 15:18:00 +08:00
parent 64c6fa229a
commit 31b4d19c8c
2 changed files with 18 additions and 15 deletions

View File

@@ -218,6 +218,9 @@ public class FranchiseFeeServiceImpl implements FranchiseFeeService {
franchiseFeeDO.setXgjFeesPaid(request.getPaidFees());
if (request.getPayableFee().compareTo(request.getPaidFees())==-1&&XGJCollectionStatusEnum.PARTIAL_PAYMENT.getCode().equals(request.getPaymentStatus())){
franchiseFeeDO.setXgjRemainderPayableAmount(new BigDecimal("0"));
franchiseFeeDO.setXgjCollectionStatus(XGJCollectionStatusEnum.COMPLETED.getCode());
//如果多缴费 都缴部分退款或者其他用处 这里缴费费用还是填写所需缴的费用
franchiseFeeDO.setXgjFeesPaid(request.getPaidFees().add(request.getRemainingFee()));
LinePayDO lastPay = linePayMapper.getLastPay(franchiseFeeDO.getShopId());
lastPay.setRemark(lastPay.getRemark()+"系统监测到您多缴费"+request.getRemainingFee().abs()+"元 请申请退款或留做他用!");
linePayMapper.updateByPrimaryKeySelective(lastPay);

View File

@@ -171,21 +171,21 @@ public class LinePayServiceImpl implements LinePayService {
if (request.getId()!=null){
payIdMap.remove(request.getId());
}
//判断缴费金额不能大于未缴费金额
BigDecimal total = payIdMap.values().stream()
.map(LinePayDO::getAmount)
.reduce(BigDecimal.ZERO, BigDecimal::add);
//应缴金额
BigDecimal amountDue = new BigDecimal(franchiseFeeDO.getYearFranchiseFee())
.add(new BigDecimal(franchiseFeeDO.getLoanMargin()))
.add(new BigDecimal(franchiseFeeDO.getFirstYearFee()))
.add(new BigDecimal(franchiseFeeDO.getFirstYearManageFee()))
.add(new BigDecimal(franchiseFeeDO.getPerformanceBond()));
//未缴费金额
BigDecimal amountUnpaid = amountDue.subtract(total);
if( request.getAmount().compareTo(amountUnpaid) > 0 ){
throw new ServiceException(ErrorCodeEnum.PAY_AMOUNT_ERROR);
}
// //判断缴费金额不能大于未缴费金额
// BigDecimal total = payIdMap.values().stream()
// .map(LinePayDO::getAmount)
// .reduce(BigDecimal.ZERO, BigDecimal::add);
// //应缴金额
// BigDecimal amountDue = new BigDecimal(franchiseFeeDO.getYearFranchiseFee())
// .add(new BigDecimal(franchiseFeeDO.getLoanMargin()))
// .add(new BigDecimal(franchiseFeeDO.getFirstYearFee()))
// .add(new BigDecimal(franchiseFeeDO.getFirstYearManageFee()))
// .add(new BigDecimal(franchiseFeeDO.getPerformanceBond()));
// //未缴费金额
// BigDecimal amountUnpaid = amountDue.subtract(total);
// if( request.getAmount().compareTo(amountUnpaid) > 0 ){
// throw new ServiceException(ErrorCodeEnum.PAY_AMOUNT_ERROR);
// }
Set<String> payUserList = list.stream().map(LinePayDO::getPayUserName).collect(Collectors.toSet());
if (!payUserList.contains(request.getPayUserName()) && payUserList.size() >= 2) {
throw new ServiceException(ErrorCodeEnum.PAY_USER_NAME_ERROR);