xuhy
2025-02-18 3ec4c9c94096f1c50097a99081f6e96aa2d2150d
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TContractServiceImpl.java
@@ -139,7 +139,7 @@
        if (contract==null)return R.fail("合同不存在");
        if (contract.getStatus().equals("4"))return R.fail("该合同已签订");
        contract.setSignature(dto.getSignature());
        contract.setStatus("2");
        contract.setStatus("4");
        contractMapper.updateById(contract);
        contract.setFirstPayTime(contract.getStartTime().plusDays(10));
        List<TBill> bills = new ArrayList<>();
@@ -224,7 +224,8 @@
        depositBill.setContractNumber(contract.getContractNumber());
        depositBill.setPayableFeesMoney(contract.getDeposit());
        depositBill.setOutstandingMoney(depositBill.getPayableFeesMoney());
        depositBill.setStartTime(contract.getStartPayTime());
        depositBill.setEndTime(contract.getEndTime());
        depositBill.setPayableFeesTime(firstPayTime);
        if (firstPayTime.toLocalDate().equals(LocalDate.now())){
            depositBill.setPayFeesStatus("1");
@@ -241,8 +242,10 @@
        try {
            TBill beforeBill = billService.lambdaQuery().eq(TBill::getContractId, contract.getId()).eq(TBill::getBillType, 1).orderByDesc(TBill::getCreateTime)
                    .last("limit 1").one();
            if (!beforeBill.getEndTime().toLocalDate().equals(contract.getEndTime().toLocalDate())){
            while(beforeBill.getEndTime().plusMonths(contract.getPayType().equals("1")? 1:contract.getPayType().equals("2")? 3:12).isBefore(contract.getEndTime())){
                if (beforeBill.getEndTime().toLocalDate().equals(contract.getEndTime().toLocalDate()))break;
                    TBill tBill = new TBill();
                    tBill.setContractId(contract.getId());
@@ -420,6 +423,8 @@
                    }
                    billMapper.insert(tBill);
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }