From 592ac14eba76040426f590d8eb079fc75e968b84 Mon Sep 17 00:00:00 2001
From: luofl <1442745593@qq.com>
Date: 星期五, 28 三月 2025 19:18:37 +0800
Subject: [PATCH] 1.租户数量趋势统计

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java |   74 ++++++++++++++++++++++++-------------
 1 files changed, 48 insertions(+), 26 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java
index 58477ae..c9c99b2 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java
@@ -50,6 +50,7 @@
 import javax.servlet.ServletOutputStream;
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
+import java.io.UnsupportedEncodingException;
 import java.math.BigDecimal;
 import java.math.RoundingMode;
 import java.net.URLEncoder;
@@ -98,7 +99,8 @@
     @PreAuthorize("@ss.hasPermi('contract:list:add')")
     public R<Boolean> addContract(@Validated @RequestBody TContractDTO dto) {
         LocalDateTime changeTime = dto.getChangeTime();
-        long count = contractService.count(new LambdaQueryWrapper<TContract>().eq(TContract::getContractNumber, dto.getContractNumber()));
+        long count = contractService.count(new LambdaQueryWrapper<TContract>()
+                .eq(TContract::getContractNumber, dto.getContractNumber()));
         if (count!=0){
             return R.fail("合同编号不可重复");
         }
@@ -137,7 +139,13 @@
                             new ImmutableMap.Builder<String, Long>().
                                     put("id", flwTask.getId())
                                     .build();
-                    QuartzManager.addJob(StateProcessJob.class, (StateProcessJob.name+flwTask.getId()).toUpperCase(), TimeJobType.AUTO_AUDIT,new Date(new Date().getTime()+48*60*60*1000L), maps);
+                    QuartzManager.addJob(
+                            StateProcessJob.class,
+                            (StateProcessJob.name+flwTask.getId()).toUpperCase(),
+                            TimeJobType.AUTO_AUDIT,
+                            new Date(new Date().getTime()+48*60*60*1000L),
+                            maps
+                    );
                 }
             }
         }
@@ -204,7 +212,13 @@
                             new ImmutableMap.Builder<String, Long>().
                                     put("id", flwTask.getId())
                                     .build();
-                    QuartzManager.addJob(StateProcessJob.class, (StateProcessJob.name+flwTask.getId()).toUpperCase(), TimeJobType.AUTO_AUDIT,new Date(new Date().getTime()+48*60*60*1000L), maps);
+                    QuartzManager.addJob(
+                            StateProcessJob.class,
+                            (StateProcessJob.name + flwTask.getId()).toUpperCase(),
+                            TimeJobType.AUTO_AUDIT,
+                            new Date(new Date().getTime() + 48 * 60 * 60 * 1000L),
+                            maps
+                    );
                 }
             }
         }
@@ -228,7 +242,9 @@
         TContractVO res = new TContractVO();
         TContract contract = contractService.getById(id);
         BeanUtils.copyProperties(contract,res);
-        TContractRentType contractRentType = contractRentTypeService.lambdaQuery().eq(TContractRentType::getContractId, id).one();
+        TContractRentType contractRentType = contractRentTypeService.lambdaQuery()
+                .eq(TContractRentType::getContractId, id)
+                .one();
         if (contractRentType!=null){
             BeanUtils.copyProperties(contractRentType,res);
         }
@@ -248,8 +264,15 @@
         for (TBill tBill : list) {
             payMoney = payMoney.add(tBill.getOutstandingMoney()).add(tBill.getPayableFeesPenalty());
         }
-        TCheckAcceptRecord tCheckAcceptRecord = checkAcceptRecordService.lambdaQuery().eq(TCheckAcceptRecord::getContractId, id).one();
-        res.setCheckResult(Objects.nonNull(tCheckAcceptRecord)&&Objects.nonNull(tCheckAcceptRecord.getCheckResult())?tCheckAcceptRecord.getCheckResult():null);
+        TCheckAcceptRecord tCheckAcceptRecord = checkAcceptRecordService.lambdaQuery()
+                .eq(TCheckAcceptRecord::getContractId, id)
+                .one();
+        res.setCheckResult(
+                Objects.nonNull(tCheckAcceptRecord)
+                        &&Objects.nonNull(tCheckAcceptRecord.getCheckResult())
+                        ?tCheckAcceptRecord.getCheckResult()
+                        :null
+        );
         res.setPayMoney(payMoney);
 
         return R.ok(res);
@@ -498,10 +521,10 @@
     @PreAuthorize("@ss.hasPermi('contract:list:export')")
     @Log(title = "导出", businessType = BusinessType.EXPORT)
     @PostMapping("/export")
-    public void exportOpticalInspection(@RequestBody TContractQuery query)
-    {
+    public void exportOpticalInspection(@RequestBody TContractQuery query) throws UnsupportedEncodingException {
         List<ContractExport> contractExports = new ArrayList<>();
         List<TContract> exportList = contractService.contractExportList(query);
+
         for (TContract contract : exportList) {
             ContractExport contractExport = new ContractExport();
             contractExport.setContractNumber(contract.getContractNumber());
@@ -511,33 +534,32 @@
             contractExport.setCreateTime(DateUtils.localDateTimeToStringYear(contract.getCreateTime()));
             contractExport.setStartTime(DateUtils.localDateTimeToStringYear(contract.getStartTime()));
             contractExport.setEndTime(DateUtils.localDateTimeToStringYear(contract.getEndTime()));
-            contractExport.setPayType(DictUtils.getDictLabel(DictConstants.DICT_TYPE_CONTRACT_PAY_TYPE,contract.getPayType()));
-            contractExport.setDeposit(contract.getDeposit()+"");
-            contractExport.setStatus(DictUtils.getDictLabel(DictConstants.DICT_TYPE_CONTRACT_STATUS,contract.getStatus()));
+            contractExport.setDeposit(contract.getDeposit() + "");
             contractExports.add(contractExport);
+            contractExport.setPayType(
+                    DictUtils.getDictLabel(
+                            DictConstants.DICT_TYPE_CONTRACT_PAY_TYPE, contract.getPayType())
+            );
+            contractExport.setStatus(
+                    DictUtils.getDictLabel(DictConstants.DICT_TYPE_CONTRACT_STATUS, contract.getStatus()));
         }
-        Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), ContractExport.class, contractExports);
+
         HttpServletResponse response = WebUtils.response();
         response.setContentType("application/vnd.ms-excel");
         response.setCharacterEncoding("utf-8");
-        ServletOutputStream outputStream = null;
-        try {
-            String fileName = URLEncoder.encode("合同列表.xls", "utf-8");
-            response.setHeader("Content-Disposition", "attachment;filename=" + fileName);
-            response.setContentType("application/vnd.ms-excel;charset=UTF-8");
-            response.setHeader("Pragma", "no-cache");
-            response.setHeader("Cache-Control", "no-cache");
-            outputStream = response.getOutputStream();
+        response.setHeader("Content-Disposition",
+                "attachment;filename=" + URLEncoder.encode("合同列表.xls", "utf-8"));
+        response.setHeader("Pragma", "no-cache");
+        response.setHeader("Cache-Control", "no-cache");
+
+        try (Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), ContractExport.class, contractExports);
+             ServletOutputStream outputStream = response.getOutputStream()) {
             workbook.write(outputStream);
         } catch (IOException e) {
             e.printStackTrace();
-        } finally {
-            try {
-                outputStream.close();
-            } catch (IOException e) {
-                e.printStackTrace();
-            }
         }
     }
+
+
 }
 

--
Gitblit v1.7.1