| | |
| | | |
| | | @Transactional(rollbackFor = Exception.class) |
| | | @Override |
| | | public void repayDebt(Long debtId, BigDecimal money) throws TeamRewardDebtException { |
| | | public void repayDebt(Long debtId, BigDecimal money, String beizhu) throws TeamRewardDebtException { |
| | | TeamRewardDebt debt = teamRewardDebtMapper.selectByPrimaryKeyForUpdate(debtId); |
| | | if (debt == null) |
| | | throw new TeamRewardDebtException(1, "债务ID不存在"); |
| | |
| | | record.setDebt(debt); |
| | | record.setMoney(money); |
| | | record.setUid(debt.getUid()); |
| | | record.setBeiZhu(beizhu); |
| | | teamRewardDebtRepayHistoryMapper.insertSelective(record); |
| | | //还钱是否还完 |
| | | if (update.getLeftMoney().compareTo(new BigDecimal(0)) <= 0) { |
| | |
| | | else |
| | | repayMoney = debt.getLeftMoney(); |
| | | try { |
| | | repayDebt(debt.getId(), repayMoney); |
| | | repayDebt(debt.getId(), repayMoney,null); |
| | | leftMoney = leftMoney.subtract(repayMoney); |
| | | } catch (TeamRewardDebtException e) { |
| | | // 上笔还款未成功,继续下一笔还款 |