xuhy
2025-04-10 da9b471a7844ff23d034a37f2adea8aa13e23fed
修改bug
3个文件已修改
96 ■■■■■ 已修改文件
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java 81 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/StateProcessTemplateServiceImpl.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/task/utils/TaskUtil.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java
@@ -366,7 +366,7 @@
        List<TContract> list = contractService.lambdaQuery().in(TContract::getId, dto.getIds()).list();
        List<String> res = new ArrayList<>();
        for (TContract contract : list) {
            String url = generateContract(contract);
            String url = generateContract(contract,new TContractDTO());
            res.add(url);
        }
@@ -385,7 +385,7 @@
    }
    private String generateContract(TContract contract) {
    private String generateContract(TContract contract,TContractDTO dto) {
        String templateFileName = "1_yzj_租赁合同_个人.docx";
        String contractId = contract.getId();
        TBill firstBill = null;
@@ -427,10 +427,10 @@
            fill(templateParam, "email", tenant.getEmail());
            // 企业、政府机构、国有企业
            if (Objects.nonNull(tenant.getTenantType())
                    && (tenant.getTenantType().equals("2")
                    || tenant.getTenantType().equals("5")
                    || tenant.getTenantType().equals("7"))) {
            if (Objects.nonNull(tenant.getTenantAttributes())
                    && (tenant.getTenantAttributes().equals("2")
                    || tenant.getTenantAttributes().equals("5")
                    || tenant.getTenantAttributes().equals("7"))) {
                fill(templateParam, "creditCode", tenant.getCreditCode());
                fill(templateParam, "legalPerson", tenant.getLegalPerson());
                templateFileName = "1_yzj_租赁合同_企业.docx";
@@ -485,39 +485,30 @@
                : contract.getPayType().equals("2") ? "季"
                : "年";
        fill(templateParam, "payType", payType);
        BigDecimal extracted = extracted(contract);
        // 首期租金处理
        if (firstBill != null) {
            double firstRent = (contract.getPayType().equals("1")
                    ? contract.getMonthRent()
                    : contract.getPayType().equals("2")
                    ? contract.getMonthRent().multiply(new BigDecimal("3"))
                    : contract.getMonthRent().multiply(new BigDecimal("12")))
                    .setScale(2, RoundingMode.DOWN).doubleValue();
            fill(templateParam, "firstRent", "¥" + extracted + "元");
            // 其他财务字段
            fill(templateParam, "firstRentString", "人民币" + NumberToChineseUtils.numberToChinese(extracted.doubleValue()));
        } else {
//            fill(templateParam, "firstRent", "");
        }
        fill(templateParam, "firstRent",
                "¥"+(contract.getPayType().equals("1")
                        ? contract.getMonthRent()
                        :contract.getPayType().equals("2")
                        ?contract.getMonthRent().multiply(new BigDecimal("3"))
                        :contract.getMonthRent().multiply(new BigDecimal("12"))
                        .setScale(2, RoundingMode.DOWN)).doubleValue()+"元");
        BigDecimal extracted = extracted(contract,dto);
        System.out.println("金额========================="+extracted);
        fill(templateParam, "firstRent", "¥" + extracted + "元");
        // 其他财务字段
        fill(templateParam, "firstRentString", "人民币" + NumberToChineseUtils.numberToChinese(extracted.doubleValue()));
        fill(templateParam, "firstRentString",
                "人民币"+NumberToChineseUtils.numberToChinese(
                        (contract.getPayType().equals("1")
                                ? contract.getMonthRent()
                                :contract.getPayType().equals("2")
                                ?contract.getMonthRent().multiply(new BigDecimal("3"))
                                :contract.getMonthRent().multiply(new BigDecimal("12"))
                                .setScale(2, RoundingMode.DOWN)).doubleValue()));
//        fill(templateParam, "firstRent",
//                "¥"+(contract.getPayType().equals("1")
//                        ? contract.getMonthRent()
//                        :contract.getPayType().equals("2")
//                        ?contract.getMonthRent().multiply(new BigDecimal("3"))
//                        :contract.getMonthRent().multiply(new BigDecimal("12"))
//                        .setScale(2, RoundingMode.DOWN)).doubleValue()+"元");
//
//
//        fill(templateParam, "firstRentString",
//                "人民币"+NumberToChineseUtils.numberToChinese(
//                        (contract.getPayType().equals("1")
//                                ? contract.getMonthRent()
//                                :contract.getPayType().equals("2")
//                                ?contract.getMonthRent().multiply(new BigDecimal("3"))
//                                :contract.getMonthRent().multiply(new BigDecimal("12"))
//                                .setScale(2, RoundingMode.DOWN)).doubleValue()));
@@ -549,9 +540,17 @@
                "/usr/local/project/file/");
    }
    private BigDecimal extracted(TContract contract) {
        List<TContractRentType> contractRentTypes = contractRentTypeService.list();
        TContractRentType tContractRentType = contractRentTypes.stream().filter(e -> e.getContractId().equals(contract.getId())).findFirst().orElse(null);
    private BigDecimal extracted(TContract contract,TContractDTO dto) {
        TContractRentType tContractRentType = null;
        if (contract.getIsIncreasing()){
            tContractRentType = new TContractRentType();
            tContractRentType.setContractId(contract.getId());
            tContractRentType.setIncreasingDecreasing(dto.getIncreasingDecreasing());
            tContractRentType.setIncreasingDecreasingType(dto.getIncreasingDecreasingType());
            tContractRentType.setNumericalValue(dto.getNumericalValue());
            tContractRentType.setChangeTime(dto.getChangeTime());
            tContractRentType.setCycleTime(dto.getCycleTime());
        }
        // 生成第一笔账单
        // 第一次应缴费日期
@@ -792,7 +791,7 @@
    {
        TContract contract = new TContract();
        BeanUtil.copyProperties(dto,contract);
        return R.ok(generateContract(contract));
        return R.ok(generateContract(contract,dto));
    }
    /**
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/StateProcessTemplateServiceImpl.java
@@ -1351,6 +1351,17 @@
        if (processTaskListBO.getSortBy() == 2) {
            stateTaskQuery.orderByDesc(FlwHisTask::getCreateTime);
        }
        List<TContract> tContracts = contractMapper.selectList(Wrappers.<TContract>lambdaQuery()
                .in(TContract::getStatus, 2,3,4));
        List<String> contractIds = tContracts.stream().map(TContract::getId).collect(Collectors.toList());
        if(CollectionUtils.isEmpty(contractIds)){
            return new PageInfo<>();
        }
        List<StateTaskCenter> list = stateTaskCenterService.list(Wrappers.<StateTaskCenter>lambdaQuery().in(StateTaskCenter::getProjectId, contractIds));
        if(!CollectionUtils.isEmpty(list)){
            List<String> flowIds = list.stream().map(StateTaskCenter::getFlowId).collect(Collectors.toList());
            stateTaskQuery.in(FlwHisTask::getInstanceId, flowIds);
        }
        stateTaskQuery.eq(FlwHisTask::getParentTaskId, 0L);
        stateTaskQuery.like(FlwHisTask::getCreateId, userId);
        PageInfo pageInfo = new PageInfo<>(processTaskListBO.getPageNum(), processTaskListBO.getPageSize());
ruoyi-system/src/main/java/com/ruoyi/system/task/utils/TaskUtil.java
@@ -39,8 +39,8 @@
    public void dayOfProportionBill() {
        try {
            // 查询所有未缴费账单
            List<TBill> list = billMapper.selectList(new LambdaQueryWrapper<TBill>().eq(TBill::getPayFeesStatus, 1)
                    .le(TBill::getPayableFeesTime,LocalDate.now()));
            List<TBill> list = billMapper.selectList(new LambdaQueryWrapper<TBill>().ne(TBill::getPayFeesStatus, 5)
                    .ne(TBill::getOutstandingMoney,0));
            for (TBill tBill : list) {
                tBill.setPayFeesStatus("4");
                TContract contract = contractService.getById(tBill.getContractId());