From 3a73d5c21bb96dde33c97a6d4d50f4632678b329 Mon Sep 17 00:00:00 2001
From: zhouxiantao <1026371446@qq.com>
Date: Wed, 09 Oct 2024 20:32:35 +0800
Subject: [PATCH] web查询个人来访记录

---
 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java |  282 ++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 233 insertions(+), 49 deletions(-)

diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java
index 84d5c44..be07a0b 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java
@@ -5,15 +5,14 @@
 import cn.huge.base.common.utils.ReturnFailUtils;
 import cn.huge.base.common.utils.ReturnSucUtils;
 import cn.huge.base.config.CurrentUser;
-import cn.huge.module.cases.domain.dto.CaseInfoWeExcelDTO;
-import cn.huge.module.cases.domain.dto.CasePageDTO;
-import cn.huge.module.cases.domain.dto.CasePersonWeDTO;
-import cn.huge.module.cases.domain.dto.RegisterSaveDTO;
+import cn.huge.module.cases.domain.bo.CasePersonCountBO;
+import cn.huge.module.cases.domain.dto.*;
 import cn.huge.module.cases.domain.po.CaseInfo;
 import cn.huge.module.cases.service.CaseInfoService;
 import cn.huge.module.client.api.impl.CustClientImpl;
 import cn.huge.module.cust.dto.CtUserDTO;
 import com.alibaba.excel.EasyExcel;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.google.common.collect.Maps;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
@@ -54,6 +53,97 @@
 
     @Autowired
     private CaseInfoService service;
+
+    private Map<String,Object> getParameterAll() {
+        Map<String, Object> terms = getParameter();
+//            // 来访时间
+        String visitTimeStart = request.getParameter("visitTimeStart");
+        String visitTimeEnd = request.getParameter("visitTimeEnd");
+        if(StringUtils.isNotBlank(visitTimeStart) && StringUtils.isNotBlank(visitTimeEnd)) {
+            terms.put("visitTimeStart", visitTimeStart + " 00:00:00");
+            terms.put("visitTimeEnd", visitTimeEnd + " 23:59:59");
+        }
+        String createStart = request.getParameter("createStart");
+        String createEnd = request.getParameter("createEnd");
+        if(StringUtils.isNotBlank(createStart) && StringUtils.isNotBlank(createEnd)) {
+            terms.put("createStart", createStart+ " 00:00:00");
+            terms.put("createEnd", createEnd+ " 23:59:59");
+        }
+        String closeStart = request.getParameter("closeStart");
+        String closeEnd = request.getParameter("closeEnd");
+        if(StringUtils.isNotBlank(closeStart) && StringUtils.isNotBlank(closeEnd)) {
+            terms.put("createStart", closeStart+ " 00:00:00");
+            terms.put("createEnd", closeEnd+ " 23:59:59");
+        }
+        String fileStart = request.getParameter("fileStart");
+        String fileEnd = request.getParameter("fileEnd");
+        if(StringUtils.isNotBlank(fileStart) && StringUtils.isNotBlank(fileEnd)) {
+            terms.put("createStart", fileStart+ " 00:00:00");
+            terms.put("createEnd", fileEnd+ " 23:59:59");
+        }
+        String areaType = request.getParameter("areaType");
+        if (StringUtils.isNotBlank(areaType)){
+            terms.put("areaType", areaType);
+        }
+        // 实际调解组织编号
+        String mediateUnitId = request.getParameter("mediateUnitId");
+        if (StringUtils.isNotBlank(mediateUnitId)){
+            terms.put("mediateUnitId", mediateUnitId);
+        }
+        // 配合组织,多个用,隔开
+        String assistUnitId = request.getParameter("assistUnitId");
+        if (StringUtils.isNotBlank(assistUnitId)){
+            terms.put("assistUnitId", assistUnitId);
+        }
+
+        // 实际调解组织编号
+        String mediateUnitName = request.getParameter("mediateUnitName");
+        if (StringUtils.isNotBlank(mediateUnitName)){
+            terms.put("mediateUnitName", mediateUnitName);
+        }
+        // 配合组织,多个用,隔开
+        String assistUnitName = request.getParameter("assistUnitName");
+        if (StringUtils.isNotBlank(assistUnitName)){
+            terms.put("assistUnitName", assistUnitName);
+        }
+        // 配合组织,多个用,隔开
+        String evaluateGrade = request.getParameter("evaluateGrade");
+        if (StringUtils.isNotBlank(evaluateGrade)){
+            terms.put("evaluateGrade", evaluateGrade);
+        }
+        // 配合组织,多个用,隔开
+        String mediResult = request.getParameter("mediResult");
+        if (StringUtils.isNotBlank(mediResult)){
+            terms.put("mediResult", mediResult);
+        }
+        String peopleNum = request.getParameter("peopleNum");
+        if (StringUtils.isNotBlank(peopleNum)){
+            String[] split = peopleNum.split("-");
+            String number = split[0];
+            if(number.equals("0") && split.length==1){
+                terms.put("peopleNumEnd", split[0]);
+            }else{
+                terms.put("peopleNumStart", split[0]);
+                if(split.length>1){
+                    terms.put("peopleNumEnd", split[1]);
+                }
+            }
+        }
+        String amount = request.getParameter("amount");
+        if (StringUtils.isNotBlank(amount)){
+            String[] split = amount.split("-");
+            String number = split[0];
+            if(number.equals("0") && split.length==1){
+                terms.put("amountEnd", split[0]);
+            }else{
+                terms.put("amountStart", split[0]);
+                if(split.length>1){
+                    terms.put("amountEnd", split[1]);
+                }
+            }
+        }
+        return terms;
+    }
 
     /**
     * 获取请求URL参数
@@ -336,7 +426,7 @@
         if (StringUtils.isNotBlank(inputWay)){
             terms.put("inputWay", inputWay);
         }
-        // 事项状态,1:待分派,2:待签收,3:待受理,:4:办理中,5:结案审核,6:待评价,7:已归档
+        // 事项状态,1:待分派,2:待签收,3:待受理,4:化解中,5:结案审核,6:待评价,7:已归档,8:不予受理
         String status = request.getParameter("status");
         if (StringUtils.isNotBlank(status)){
             terms.put("status", status);
@@ -356,7 +446,7 @@
         if (StringUtils.isNotBlank(processName)){
             terms.put("processName", processName);
         }
-        // 对外展示事项进度,1:待受理,2:办理中,3:已结案
+        // 对外展示事项进度,1:待受理,2:化解中,3:已结案,4:不予受理
         String infoProcess = request.getParameter("process");
         if (StringUtils.isNotBlank(infoProcess)){
             terms.put("infoProcess", infoProcess);
@@ -365,6 +455,11 @@
         String infoProcessName = request.getParameter("infoProcessName");
         if (StringUtils.isNotBlank(infoProcessName)){
             terms.put("infoProcessName", infoProcessName);
+        }
+        // 小程序是否可见,0:不可见,1:可见
+        String partyShow = request.getParameter("partyShow");
+        if (StringUtils.isNotBlank(partyShow)){
+            terms.put("partyShow", partyShow);
         }
         // 意向调解组织编号
         String wantUnitId = request.getParameter("wantUnitId");
@@ -551,34 +646,38 @@
     @GetMapping("/pageQueryAll")
     public Object pageQueryAll(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size) {
         try {
-            Map<String, Object> terms = getParameter();
-//            // 来访时间
-            String visitTimeStart = request.getParameter("visitTimeStart");
-            String visitTimeEnd = request.getParameter("visitTimeEnd");
-            if(StringUtils.isNotBlank(visitTimeStart) && StringUtils.isNotBlank(visitTimeEnd)) {
-                terms.put("visitTimeStart", visitTimeStart + " 00:00:00");
-                terms.put("visitTimeEnd", visitTimeEnd + " 23:59:59");
+            Map<String, Object> terms = getParameterAll();
+            Sort sort = null;
+            String sortName = null;
+            String sortColmnStr = request.getParameter("sortColmn");
+            String sortTypeStr = request.getParameter("sortType");
+            int sortColmn = 1;
+            int sortType = 1;
+            if (StringUtils.isNotBlank(sortColmnStr)) {
+                sortColmn = Integer.valueOf(sortColmnStr);
             }
-            String createStart = request.getParameter("createStart");
-            String createEnd = request.getParameter("createEnd");
-            if(StringUtils.isNotBlank(createStart) && StringUtils.isNotBlank(createEnd)) {
-                terms.put("createStart", createStart+ " 00:00:00");
-                terms.put("createEnd", createEnd+ " 23:59:59");
+            if (StringUtils.isNotBlank(sortTypeStr)) {
+                sortType = Integer.valueOf(sortTypeStr);
             }
-            String closeStart = request.getParameter("closeStart");
-            String closeEnd = request.getParameter("closeEnd");
-            if(StringUtils.isNotBlank(closeStart) && StringUtils.isNotBlank(closeEnd)) {
-                terms.put("createStart", closeStart+ " 00:00:00");
-                terms.put("createEnd", closeEnd+ " 23:59:59");
+            switch (sortColmn) {
+                case 1:
+                    sortName = "a.create_time";
+                    break;
+                case 2:
+                    sortName = "b.close_time";
+                    break;
             }
-            String fileStart = request.getParameter("fileStart");
-            String fileEnd = request.getParameter("fileEnd");
-            if(StringUtils.isNotBlank(fileStart) && StringUtils.isNotBlank(fileEnd)) {
-                terms.put("createStart", fileStart+ " 00:00:00");
-                terms.put("createEnd", fileEnd+ " 23:59:59");
+            switch (sortType) {
+                case 1:
+                    sort = Sort.by(Sort.Direction.ASC, sortName);
+                    break;
+                case 2:
+                    sort = Sort.by(Sort.Direction.DESC, sortName);
+                    break;
             }
-
-            Sort sort = Sort.by(Sort.Direction.DESC, "a.create_time");
+            if (ObjectUtils.isEmpty(sort)) {
+                sort = Sort.by(Sort.Direction.DESC, "a.create_time");
+            }
             PageRequest pageRequest = PageRequest.of(page-1, size, sort);
             Page<CasePageDTO> caseInfoPage = service.pageQueryAll(pageRequest, terms);
             return ReturnSucUtils.getRepInfo( "处理成功", caseInfoPage);
@@ -597,7 +696,7 @@
     @RequestMapping("/exportQueryAll")
     public void exportQueryAll(HttpServletResponse response) {
         try {
-            Map<String, Object> terms = getParameter();
+            Map<String, Object> terms = getParameterAll();
             Sort sort = Sort.by(Sort.Direction.DESC, "a.create_time");
             PageRequest pageRequest = PageRequest.of(0, 1000000, sort);
             Page<CasePageDTO> caseInfoPage = service.pageQueryAll(pageRequest, terms);
@@ -607,24 +706,8 @@
                     CaseInfoWeExcelDTO caseInfoWeExcelDTO = new CaseInfoWeExcelDTO();
                     BeanUtils.copyProperties(casePageDTO,caseInfoWeExcelDTO);
                     caseInfoWeExcelDTO.setCloseTime(DateUtils.DateToString(casePageDTO.getCloseTime(), DateUtils.YYYY_MM_DD));
-                    if(ObjectUtils.isNotEmpty(casePageDTO.getPlaintiffList())){
-                        StringBuffer sb = new StringBuffer();
-                        for (CasePersonWeDTO casePersonWeDTO : casePageDTO.getPlaintiffList()) {
-                            sb.append(casePersonWeDTO.getTrueName()).append(",");
-                        }
-                        if(ObjectUtils.isNotEmpty(sb)){
-                            caseInfoWeExcelDTO.setPlaintiffStr(sb.substring(0,sb.length()-1));
-                        }
-                    }
-                    if(ObjectUtils.isNotEmpty(casePageDTO.getDefendantList())){
-                        StringBuffer sb = new StringBuffer();
-                        for (CasePersonWeDTO casePersonWeDTO : casePageDTO.getDefendantList()) {
-                            sb.append(casePersonWeDTO.getTrueName()).append(",");
-                        }
-                        if(ObjectUtils.isNotEmpty(sb)){
-                            caseInfoWeExcelDTO.setDefendantStr(sb.substring(0,sb.length()-1));
-                        }
-                    }
+                    caseInfoWeExcelDTO.setCreateTime(DateUtils.DateToString(casePageDTO.getCreateTime(), DateUtils.YYYY_MM_DD));
+                    caseInfoWeExcelDTO.setCaseTypeName(casePageDTO.getCaseTypeFirstName()+"/"+casePageDTO.getCaseTypeName());
                     excelList.add(caseInfoWeExcelDTO);
                 }
             }
@@ -639,4 +722,105 @@
         }
 
     }
+
+    /**
+     * 综合查询
+     * @url {ctx}/api/web/caseInfo/statistics
+     * @return Object
+     * @CurrentUser String userId
+     */
+    @GetMapping("/statistics")
+    public Object statistics() {
+        try {
+            Map<String, Object> terms = getParameterAll();
+            return ReturnSucUtils.getRepInfo( "处理成功", service.statistics(terms));
+        } catch (Exception e) {
+            log.error("Controller接口[CaseInfoWebController.statistics]请求异常:"+e, e);
+            return ReturnFailUtils.getRepInfo();
+        }
+    }
+
+    /**
+     * 小程序是否可见修改修改
+     * @url {ctx}/api/web/caseInfo/updateVisibleStatus
+     * @return Object
+     * @CurrentUser String userId
+     */
+    @PostMapping("/updateVisibleStatus")
+    public Object updateVisibleStatus(@RequestBody CaseInfo caseInfo) {
+        try {
+            service.updateCaseInfo(caseInfo);
+            return ReturnSucUtils.getRepInfo();
+        } catch (Exception e) {
+            log.error("Controller接口[CaseInfoWebController.statistics]请求异常:"+e, e);
+            return ReturnFailUtils.getRepInfo();
+        }
+    }
+
+    /**
+     * 个人查询
+     * @url {ctx}/api/web/caseInfo/pagePerson
+     * @param page 页码
+     * @param size 每页数量
+     * @return Object
+     */
+    @GetMapping("/pagePerson")
+    public Object pagePerson(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size, @RequestParam(value = "certiNo") String certiNo) {
+        try {
+            Map<String, Object> terms = getParameterAll();
+            Sort sort = null;
+            String sortName = null;
+            String sortColmnStr = request.getParameter("sortColmn");
+            String sortTypeStr = request.getParameter("sortType");
+            int sortColmn = 1;
+            int sortType = 1;
+            if (StringUtils.isNotBlank(sortColmnStr)) {
+                sortColmn = Integer.valueOf(sortColmnStr);
+            }
+            if (StringUtils.isNotBlank(sortTypeStr)) {
+                sortType = Integer.valueOf(sortTypeStr);
+            }
+            switch (sortColmn) {
+                case 1:
+                    sortName = "a.create_time";
+                    break;
+                case 2:
+                    sortName = "b.close_time";
+                    break;
+            }
+            switch (sortType) {
+                case 1:
+                    sort = Sort.by(Sort.Direction.ASC, sortName);
+                    break;
+                case 2:
+                    sort = Sort.by(Sort.Direction.DESC, sortName);
+                    break;
+            }
+            if (ObjectUtils.isEmpty(sort)) {
+                sort = Sort.by(Sort.Direction.DESC, "a.create_time");
+            }
+            PageRequest pageRequest = PageRequest.of(page-1, size, sort);
+            Page<CasePageDTO> caseInfoPage = service.pagePerson(pageRequest, terms,certiNo);
+            return ReturnSucUtils.getRepInfo( "处理成功", caseInfoPage);
+        } catch (Exception e) {
+            log.error("Controller接口[CaseInfoWebController.pageQueryAll]请求异常:"+e, e);
+            return ReturnFailUtils.getRepInfo();
+        }
+    }
+
+    /**
+     * 个人查询统计
+     * @url {ctx}/api/web/caseInfo/countPerson
+     * @return Object
+     */
+    @GetMapping("/countPerson")
+    public Object countPerson(@RequestParam(value = "certiNo") String certiNo) {
+        try {
+            CasePersonCountBO casePersonCountBO = service.countPerson(certiNo);
+            return ReturnSucUtils.getRepInfo( "处理成功", casePersonCountBO);
+        } catch (Exception e) {
+            log.error("Controller接口[CaseInfoWebController.pageQueryAll]请求异常:"+e, e);
+            return ReturnFailUtils.getRepInfo();
+        }
+    }
 }

--
Gitblit v1.8.0