From df5414b84bf33c55a3aab890baaa0bd8eabcd70c Mon Sep 17 00:00:00 2001
From: liyj <15602261488@163.com>
Date: Sun, 22 Sep 2024 13:01:50 +0800
Subject: [PATCH] 1、工作台-全部已办、事项草稿数量统计

---
 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java |  324 +++++++++++++++++++++++++++++++-----------------------
 1 files changed, 186 insertions(+), 138 deletions(-)

diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java
index 836d681..5eaa724 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java
@@ -22,6 +22,8 @@
 import cn.huge.module.cust.constant.UserBaseConsts;
 import cn.huge.module.cust.dto.CtUnitDTO;
 import cn.huge.module.cust.dto.CtUserDTO;
+import cn.huge.module.draft.domain.po.CasedraftInfo;
+import cn.huge.module.draft.service.CasedraftInfoService;
 import cn.huge.module.mediate.constant.AuditBaseConsts;
 import cn.huge.module.mediate.constant.AuditBaseConstsEnum;
 import cn.huge.module.disp.constant.DispBaseConstsEnum;
@@ -99,6 +101,8 @@
     private CaseAssistInfoService caseAssistInfoService;
     @Autowired
     private CaseDismissService caseDismissService;
+    @Autowired
+    private CasedraftInfoService casedraftInfoService;
 
     /**
     * 更新对象
@@ -244,6 +248,9 @@
             TabButtonInfoDTO daxx = new TabButtonInfoDTO();
             daxx.setId("daxx");
             daxx.setName("档案信息");
+            TabButtonInfoDTO byslxq = new TabButtonInfoDTO();
+            byslxq.setId("byslxq");
+            byslxq.setName("详情");
 
             // 定义button
             TabButtonInfoDTO tjbljl = new TabButtonInfoDTO();
@@ -281,134 +288,142 @@
             // 根据流程显示button
             List<TabButtonInfoDTO> buttonList = new LinkedList<>();
             if (ObjectUtils.isNotEmpty(caseTask)) {
-                if (FlowNodeEnum.FLOW_NODE_ZJ_DFP.getIndex().equals(caseTask.getNodeId())) {
-                    tabList.add(dslxq);
+                // 不予受理
+                if (ObjectUtils.isNotEmpty(caseTask.getHandleResult()) && CaseTaskConsts.HANDLE_RESULT_3 == caseTask.getHandleResult()){
+                    tabList.add(byslxq);
                     tabList.add(sqjl);
 
-                    buttonList.add(zxsl);
-                    buttonList.add(jb);
-                    buttonList.add(sb);
-                    buttonList.add(bysl);
-                }
-                if (FlowNodeEnum.FLOW_NODE_ZJ_DSL.getIndex().equals(caseTask.getNodeId())) {
-                    tabList.add(dslxq);
-                    tabList.add(sqjl);
-
-                    buttonList.add(sl);
-                    buttonList.add(ht);
-                    buttonList.add(bysl);
-                }
-                if (FlowNodeEnum.FLOW_NODE_ZJ_HTSH.getIndex().equals(caseTask.getNodeId())) {
-                    sxxq.setName("详情");
-                    tabList.add(sxxq);
-                    tabList.add(sqjl);
-                    tabList.add(htsh);
-                }
-                if (FlowNodeEnum.FLOW_NODE_QJ_SBSH.getIndex().equals(caseTask.getNodeId())) {
-                    sxxq.setName("详情");
-                    tabList.add(sxxq);
-                    tabList.add(sqjl);
-                    tabList.add(sbsh);
-                }
-                if (FlowNodeEnum.FLOW_NODE_QJ_DFP.getIndex().equals(caseTask.getNodeId())) {
-                    tabList.add(dslxq);
-                    tabList.add(sqjl);
-
-                    buttonList.add(zxsl);
-                    buttonList.add(jb);
-                    buttonList.add(sb);
-                    buttonList.add(bysl);
-                }
-                if (FlowNodeEnum.FLOW_NODE_QJ_DSL.getIndex().equals(caseTask.getNodeId())) {
-                    tabList.add(dslxq);
-                    tabList.add(sqjl);
-
-                    buttonList.add(sl);
-                    buttonList.add(ht);
-                    buttonList.add(bysl);
-                }
-                if (FlowNodeEnum.FLOW_NODE_QJ_HTSH.getIndex().equals(caseTask.getNodeId())) {
-                    sxxq.setName("详情");
-                    tabList.add(sxxq);
-                    tabList.add(sqjl);
-                    tabList.add(htsh);
-                }
-                if (FlowNodeEnum.FLOW_NODE_SJ_SBSH.getIndex().equals(caseTask.getNodeId())) {
-                    sxxq.setName("详情");
-                    tabList.add(sxxq);
-                    tabList.add(sqjl);
-                    tabList.add(sbsh);
-                }
-                if (FlowNodeEnum.FLOW_NODE_SJ_DFP.getIndex().equals(caseTask.getNodeId())) {
-                    tabList.add(dslxq);
-                    tabList.add(sqjl);
-
-                    buttonList.add(zxsl);
-                    buttonList.add(jb);
-                    buttonList.add(bysl);
-                }
-                if (FlowNodeEnum.FLOW_NODE_SJ_DSL.getIndex().equals(caseTask.getNodeId())) {
-                    tabList.add(dslxq);
-                    tabList.add(sqjl);
-
-                    buttonList.add(sl);
-                    buttonList.add(ht);
-                    buttonList.add(bysl);
-                }
-                if (FlowNodeEnum.FLOW_NODE_SJ_HTSH.getIndex().equals(caseTask.getNodeId())) {
-                    sxxq.setName("详情");
-                    tabList.add(sxxq);
-                    tabList.add(sqjl);
-                    tabList.add(htsh);
-                }
-                if (FlowNodeEnum.FLOW_NODE_BLFK.getIndex().equals(caseTask.getNodeId())) {
-                    if (CaseTaskConsts.CASE_TASK_TYPE_1 == caseTask.getCaseTaskType()) {
-                        tabList.add(sxxq);
-                        tabList.add(sxbl);
-                        tabList.add(lcdb);
+                }else {
+                    // 正常流程
+                    if (FlowNodeEnum.FLOW_NODE_ZJ_DFP.getIndex().equals(caseTask.getNodeId())) {
+                        tabList.add(dslxq);
                         tabList.add(sqjl);
 
-                        buttonList.add(tjbljl);
-                        buttonList.add(lhczsq);
-                        buttonList.add(jasq);
-                        buttonList.add(db);
-                    }else {
-                        tabList.add(sxxq);
-                        tabList.add(sxbl);
-                        tabList.add(lcdb);
-                        tabList.add(sqjl);
-
-                        buttonList.add(tjbljl);
+                        buttonList.add(zxsl);
+                        buttonList.add(jb);
+                        buttonList.add(sb);
+                        buttonList.add(bysl);
                     }
-                }
-                if (FlowNodeEnum.FLOW_NODE_JASH.getIndex().equals(caseTask.getNodeId())) {
-                    tabList.add(sxxq);
-                    tabList.add(sqjl);
-                    tabList.add(jash);
-                }
-                if (FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex().equals(caseTask.getNodeId())) {
-                    daxx.setName("信息");
-                    tabList.add(daxx);
-                    tabList.add(lcdb);
-                    tabList.add(sqjl);
-                }
-                if (FlowNodeEnum.FLOW_NODE_JAGD.getIndex().equals(caseTask.getNodeId())) {
-                    tabList.add(daxx);
-                    tabList.add(lcdb);
-                    tabList.add(sqjl);
-                }
-                if (FlowNodeEnum.FLOW_NODE_DSL.getIndex().equals(caseTask.getNodeId())) {
-                    tabList.add(dslxq);
-                    tabList.add(sqjl);
+                    if (FlowNodeEnum.FLOW_NODE_ZJ_DSL.getIndex().equals(caseTask.getNodeId())) {
+                        tabList.add(dslxq);
+                        tabList.add(sqjl);
 
-                    buttonList.add(sl);
-                    buttonList.add(ht);
-                }
-                if (FlowNodeEnum.FLOW_NODE_HTSH.getIndex().equals(caseTask.getNodeId())) {
-                    sxxq.setName("详情");
-                    tabList.add(sxxq);
-                    tabList.add(sqjl);
-                    tabList.add(htsh);
+                        buttonList.add(sl);
+                        buttonList.add(ht);
+                        buttonList.add(bysl);
+                    }
+                    if (FlowNodeEnum.FLOW_NODE_ZJ_HTSH.getIndex().equals(caseTask.getNodeId())) {
+                        sxxq.setName("详情");
+                        tabList.add(sxxq);
+                        tabList.add(sqjl);
+                        tabList.add(htsh);
+                    }
+                    if (FlowNodeEnum.FLOW_NODE_QJ_SBSH.getIndex().equals(caseTask.getNodeId())) {
+                        sxxq.setName("详情");
+                        tabList.add(sxxq);
+                        tabList.add(sqjl);
+                        tabList.add(sbsh);
+                    }
+                    if (FlowNodeEnum.FLOW_NODE_QJ_DFP.getIndex().equals(caseTask.getNodeId())) {
+                        tabList.add(dslxq);
+                        tabList.add(sqjl);
+
+                        buttonList.add(zxsl);
+                        buttonList.add(jb);
+                        buttonList.add(sb);
+                        buttonList.add(bysl);
+                    }
+                    if (FlowNodeEnum.FLOW_NODE_QJ_DSL.getIndex().equals(caseTask.getNodeId())) {
+                        tabList.add(dslxq);
+                        tabList.add(sqjl);
+
+                        buttonList.add(sl);
+                        buttonList.add(ht);
+                        buttonList.add(bysl);
+                    }
+                    if (FlowNodeEnum.FLOW_NODE_QJ_HTSH.getIndex().equals(caseTask.getNodeId())) {
+                        sxxq.setName("详情");
+                        tabList.add(sxxq);
+                        tabList.add(sqjl);
+                        tabList.add(htsh);
+                    }
+                    if (FlowNodeEnum.FLOW_NODE_SJ_SBSH.getIndex().equals(caseTask.getNodeId())) {
+                        sxxq.setName("详情");
+                        tabList.add(sxxq);
+                        tabList.add(sqjl);
+                        tabList.add(sbsh);
+                    }
+                    if (FlowNodeEnum.FLOW_NODE_SJ_DFP.getIndex().equals(caseTask.getNodeId())) {
+                        tabList.add(dslxq);
+                        tabList.add(sqjl);
+
+                        buttonList.add(zxsl);
+                        buttonList.add(jb);
+                        buttonList.add(bysl);
+                    }
+                    if (FlowNodeEnum.FLOW_NODE_SJ_DSL.getIndex().equals(caseTask.getNodeId())) {
+                        tabList.add(dslxq);
+                        tabList.add(sqjl);
+
+                        buttonList.add(sl);
+                        buttonList.add(ht);
+                        buttonList.add(bysl);
+                    }
+                    if (FlowNodeEnum.FLOW_NODE_SJ_HTSH.getIndex().equals(caseTask.getNodeId())) {
+                        sxxq.setName("详情");
+                        tabList.add(sxxq);
+                        tabList.add(sqjl);
+                        tabList.add(htsh);
+                    }
+                    if (FlowNodeEnum.FLOW_NODE_BLFK.getIndex().equals(caseTask.getNodeId())) {
+                        if (CaseTaskConsts.CASE_TASK_TYPE_1 == caseTask.getCaseTaskType()) {
+                            tabList.add(sxxq);
+                            tabList.add(sxbl);
+                            tabList.add(lcdb);
+                            tabList.add(sqjl);
+
+                            buttonList.add(tjbljl);
+                            buttonList.add(lhczsq);
+                            buttonList.add(jasq);
+                            buttonList.add(db);
+                        } else {
+                            tabList.add(sxxq);
+                            tabList.add(sxbl);
+                            tabList.add(lcdb);
+                            tabList.add(sqjl);
+
+                            buttonList.add(tjbljl);
+                        }
+                    }
+                    if (FlowNodeEnum.FLOW_NODE_JASH.getIndex().equals(caseTask.getNodeId())) {
+                        tabList.add(sxxq);
+                        tabList.add(sqjl);
+                        tabList.add(jash);
+                    }
+                    if (FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex().equals(caseTask.getNodeId())) {
+                        daxx.setName("信息");
+                        tabList.add(daxx);
+                        tabList.add(lcdb);
+                        tabList.add(sqjl);
+                    }
+                    if (FlowNodeEnum.FLOW_NODE_JAGD.getIndex().equals(caseTask.getNodeId())) {
+                        tabList.add(daxx);
+                        tabList.add(lcdb);
+                        tabList.add(sqjl);
+                    }
+                    if (FlowNodeEnum.FLOW_NODE_DSL.getIndex().equals(caseTask.getNodeId())) {
+                        tabList.add(dslxq);
+                        tabList.add(sqjl);
+
+                        buttonList.add(sl);
+                        buttonList.add(ht);
+                    }
+                    if (FlowNodeEnum.FLOW_NODE_HTSH.getIndex().equals(caseTask.getNodeId())) {
+                        sxxq.setName("详情");
+                        tabList.add(sxxq);
+                        tabList.add(sqjl);
+                        tabList.add(htsh);
+                    }
                 }
             }else {
                 tabList.add(sxxq);
@@ -543,6 +558,8 @@
                     // 不予受理
                     if (CaseTaskConsts.HANDLE_RESULT_3 == caseTask.getHandleResult()){
                         webCaseFlowDTO.setNodeShowName("不予受理");
+                        webCaseFlowDTO.setHandleNotes(null);
+                        webCaseFlowDTO.setTaskType(CaseTaskConsts.TASK_TYPE_4);
                     }
                     handleCaseFlowList.add(webCaseFlowDTO);
                 }else {
@@ -746,6 +763,16 @@
             long countAppearReview = caseAppearService.countAppearReview(loginUser.getUnitId());
             long countAssistReview = caseAssistApplyService.countAssistReview(loginUser.getUnitId());
             frontPageCountDTO.setWaitReview(countApplyReview+countReturnReview+countAppearReview+countAssistReview);
+            // 已办
+            Map<String, Object> ybTerms = new HashMap<>();
+            ybTerms.put("handleUnitId", loginUser.getUnitId());
+            long alreadyDone = mapper.countMyTaskYb(ybTerms);
+            frontPageCountDTO.setAlreadyDone(alreadyDone);
+            // 已办
+            Map<String, Object> cgTerms = new HashMap<>();
+            cgTerms.put("inputUnitId", loginUser.getUnitId());
+            long caseDraft = casedraftInfoService.countTerms(cgTerms);
+            frontPageCountDTO.setCaseDraft(caseDraft);
             return frontPageCountDTO;
         }catch (Exception e) {
             log.error("[CaseTaskService.getCountList]调用失败,异常信息:" + e, e);
@@ -763,10 +790,6 @@
         try {
             long total = mapper.countMyTaskFp(terms);
             List<FrontPageListFPDTO> frontPageListFPDTOList = mapper.pageMyTaskFp(page, terms);
-            for (FrontPageListFPDTO frontPageListFPDTO: frontPageListFPDTOList){
-                // 查询督办次数
-
-            }
             return new PageImpl<FrontPageListFPDTO>(frontPageListFPDTOList, page, total);
         }catch (Exception e) {
             log.error("[CaseTaskService.pageMyTaskFp]调用失败,异常信息:" + e, e);
@@ -887,14 +910,11 @@
      * @param terms 条件
      * @return Page
      */
-    public Page<FrontPageListDTO> pageMyTaskShWSQD(PageRequest page, int type, Map<String, Object> terms){
+    public Page<FrontPageListWSQDDTO> pageMyTaskShWSQD(PageRequest page, Map<String, Object> terms){
         try {
-            long total = 0;
-            List<FrontPageListDTO> frontPageListDTOList = new ArrayList<>();
-            total = mapper.countMyTaskShWSQD(terms);
-            frontPageListDTOList = mapper.pageMyTaskShWSQD(page,terms);
-
-            return new PageImpl<FrontPageListDTO>(frontPageListDTOList, page, total);
+            long total = mapper.countMyTaskShWSQD(terms);
+            List<FrontPageListWSQDDTO> frontPageListWSQDDTOList = mapper.pageMyTaskShWSQD(page,terms);
+            return new PageImpl<FrontPageListWSQDDTO>(frontPageListWSQDDTOList, page, total);
         }catch (Exception e) {
             log.error("[CaseTaskService.pageMyTaskQs]调用失败,异常信息:" + e, e);
             throw new ServiceException("CaseTaskService.pageMyTaskQs", e);
@@ -925,16 +945,18 @@
             List<CaseAssistApply>caseAssistApplyList = caseAssistApplyService.list(caseAssistApplyQueryWrapper);
             List<SortUtilDTO> sortUtilDTOList = new ArrayList<>();
 
+            List<String> idList = new ArrayList<>();
             String ids = new String();
-            ids += caseReturnList.stream().map(CaseReturn:: getId).collect(Collectors.joining(","));
-            ids += caseAppearList.stream().map(CaseAppear:: getId).collect(Collectors.joining(","));
-            ids += caseWindupApplyList.stream().map(CaseWindupApply:: getId).collect(Collectors.joining(","));
-            ids += caseAssistApplyList.stream().map(CaseAssistApply:: getId).collect(Collectors.joining(","));
+            idList.addAll(caseReturnList.stream().map(CaseReturn:: getId).collect(Collectors.toList()));
+            idList.addAll(caseAppearList.stream().map(CaseAppear:: getId).collect(Collectors.toList()));
+            idList.addAll(caseWindupApplyList.stream().map(CaseWindupApply:: getId).collect(Collectors.toList()));
+            idList.addAll(caseAssistApplyList.stream().map(CaseAssistApply:: getId).collect(Collectors.toList()));
+            ids = idList.stream().map(String::valueOf).collect(Collectors.joining("','"));
             List<FileIdTypeInfoBaseDTO> fileIdTypeInfoBaseDTOList = new ArrayList<>();
             if(StringUtils.isNotBlank(ids)){
                 Map terms = new HashMap();
                 terms.put("mainId", caseId);
-                terms.put("ownerIds", "," + ids + ",");
+                terms.put("ownerIds", "'" + ids + "'");
                 fileIdTypeInfoBaseDTOList = sysClient.listIdTypeInfoByOwnerIdList(terms);
             }
 
@@ -2592,4 +2614,30 @@
         }
     }
 
+    /**
+     * 按条件查询
+     * @param terms 条件
+     * @return List
+     */
+    public List<SignTaskDTO> listIdByTerms(Map<String, Object> terms){
+        return mapper.listIdByTerms(terms);
+    }
+
+    /**
+     * web端-工作台-已办事项
+     * @param page 分页对象
+     * @param terms 条件
+     * @return Page
+     */
+    public Page<FrontPageListYBDTO> pageMyTaskYb(PageRequest page, Map<String, Object> terms){
+        try {
+            long total = mapper.countMyTaskYb(terms);
+            List<FrontPageListYBDTO> frontPageListYBDTOList = mapper.pageMyTaskYb(page, terms);
+            return new PageImpl<FrontPageListYBDTO>(frontPageListYBDTOList, page, total);
+        }catch (Exception e) {
+            log.error("[CaseTaskService.pageMyTaskYb]调用失败,异常信息:" + e, e);
+            throw new ServiceException("CaseTaskService.pageMyTaskYb", e);
+        }
+    }
+
 }

--
Gitblit v1.8.0