From 067afa6387c75cc94d79ec9db9544a0b9db437a4 Mon Sep 17 00:00:00 2001
From: xusd <330628789@qq.com>
Date: Fri, 11 Jul 2025 13:39:47 +0800
Subject: [PATCH] fix:sql调整

---
 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java |  130 ++++++++++++++++++++++++++++++++++++-------
 1 files changed, 109 insertions(+), 21 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 39208a2..e811c49 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
@@ -411,31 +411,62 @@
                         caseTaskPO.setReadUserName(loginUser.getTrueName());
                         mapper.updateCaseTask(caseTaskPO);
                     }
+                    CtUnitDTO ctUnitDTO = custClient.getUnitByUserId(userId);
                     // 待分派节点
                     if (FlowNodeEnum.FLOW_NODE_ZJ_DFP.getIndex().equals(caseTask.getNodeId())
                             || FlowNodeEnum.FLOW_NODE_QJ_DFP.getIndex().equals(caseTask.getNodeId())
                             || FlowNodeEnum.FLOW_NODE_SJ_DFP.getIndex().equals(caseTask.getNodeId())) {
                         tabList.add(sqjl);
-
+                        tabList.add(lcdb);
                         sl.setName("自行受理");
                         buttonList.add(sl);
                         buttonList.add(jb);
-                        buttonList.add(bysl);
                         buttonList.add(xqcl);
-                        CtUnitDTO ctUnitDTO = custClient.getUnitByUserId(userId);
+
                         if (UserBaseConsts.UNIT_GRADE_1 != ctUnitDTO.getUnitGrade()) {
                             buttonList.add(sb);
                         }
+                        if (bysl.getName().equals("不予受理")) {
+                            //如果是镇街综治中心,并且案子是由区下发的,则不显示
+                            if (UserBaseConsts.UNIT_GRADE_3 == ctUnitDTO.getUnitGrade()) {
+                                String id = caseInfo.getId();
+                                Map<String, Object> terms = new HashMap<>();
+                                terms.put("caseId", id);
+                                List<CaseTask> caseTasks = mapper.listTerms(terms);
+                                boolean isQuSend = false;
+                                for (CaseTask item : caseTasks) {
+                                    if (item.getNodeId() != null && item.getNodeId().equals("QJ_DFP")) {
+                                        isQuSend = true;
+                                        break;
+                                    }
+                                }
+                                if (!isQuSend) {
+                                    buttonList.add(bysl);
+                                }
+                            } else {
+                                buttonList.add(bysl);
+                            }
+                        } else {
+                            if (UserBaseConsts.UNIT_GRADE_2 == ctUnitDTO.getUnitGrade()) {
+                                buttonList.add(bysl);
+                            }
+                        }
+//                        if(ctUnitDTO.getUnitType()!=null &ctUnitDTO.getUnitType()==101){
+//                            buttonList.add(db);
+//                        }
                     }
                     // 待受理节点
                     if (FlowNodeEnum.FLOW_NODE_ZJ_DSL.getIndex().equals(caseTask.getNodeId())
                             || FlowNodeEnum.FLOW_NODE_QJ_DSL.getIndex().equals(caseTask.getNodeId())
                             || FlowNodeEnum.FLOW_NODE_SJ_DSL.getIndex().equals(caseTask.getNodeId())) {
                         tabList.add(sqjl);
-
+                        tabList.add(lcdb);
                         buttonList.add(sl);
                         buttonList.add(ht);
                         buttonList.add(xqcl);
+//                        if(ctUnitDTO.getUnitType()!=null &ctUnitDTO.getUnitType()==101){
+//                            buttonList.add(db);
+//                        }
                     }
                     // 回退审核节点
                     if (FlowNodeEnum.FLOW_NODE_ZJ_HTSH.getIndex().equals(caseTask.getNodeId())
@@ -468,7 +499,6 @@
                             buttonList.add(lhczsq);
                             buttonList.add(jasq);
                             buttonList.add(tabcl);
-                            CtUnitDTO ctUnitDTO = custClient.getUnitByUserId(userId);
                             if (ObjectUtils.isNotEmpty(ctUnitDTO)) {
                                 if (GzRegionBaseEnum.AREA_7.getIndex().equals(ctUnitDTO.getArea())) {
                                     buttonList.add(yytj);
@@ -482,6 +512,9 @@
                             buttonList.add(tjbljl);
                             buttonList.add(tabcl);
                         }
+//                        if(ctUnitDTO.getUnitType()!=null &ctUnitDTO.getUnitType()==101){
+//                            buttonList.add(db);
+//                        }
                     }
                     // 结案审核节点
                     if (FlowNodeEnum.FLOW_NODE_JASH.getIndex().equals(caseTask.getNodeId())
@@ -492,6 +525,9 @@
                         tabList.add(jash);
 
                         buttonList.add(tabcl);
+//                        if(ctUnitDTO.getUnitType()!=null &ctUnitDTO.getUnitType()==101){
+//                            buttonList.add(db);
+//                        }
                     }
                     // 当事人评价节点
                     if (FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex().equals(caseTask.getNodeId())) {
@@ -506,10 +542,13 @@
                     // 联合处置-待受理
                     if (FlowNodeEnum.FLOW_NODE_DSL.getIndex().equals(caseTask.getNodeId())) {
                         tabList.add(sqjl);
-
+                        tabList.add(lcdb);
                         buttonList.add(sl);
                         buttonList.add(ht);
                         buttonList.add(tabcl);
+//                        if(ctUnitDTO.getUnitType()!=null &ctUnitDTO.getUnitType()==101){
+//                            buttonList.add(db);
+//                        }
                     }
                 }
                 //司法确认
@@ -645,6 +684,14 @@
                     lfdj.setNodeShowName("自行排查");
                     lfdj.setHandleUserName(caseInfo.getInputUserName());
                     lfdj.setHandleUnitName(caseInfo.getInputUnitName());
+                    if (CaseBaseConstsEnum.CASE_CANAL_SECOND_2.getIndex().equals(caseInfo.getCanalSecond())) {
+                        lfdj.setHandleUserName("系统自动获取");
+                        lfdj.setHandleUnitName(caseInfo.getCanalSecondName());
+                    }
+                    if (CaseBaseConstsEnum.CASE_CANAL_SECOND_7.getIndex().equals(caseInfo.getCanalSecond())) {
+                        lfdj.setHandleUserName("系统自动获取");
+                        lfdj.setHandleUnitName(caseInfo.getCanalSecondName());
+                    }
                 }
                 if (CaseBaseConstsEnum.CASE_CANAL_4.getIndex().equals(caseInfo.getCanal())) {
                     lfdj.setNodeShowName("协同推送");
@@ -817,7 +864,7 @@
                                 || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_ZJ_DFP.getIndex())
                                 || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_DFP.getIndex())
                                 || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_DFP.getIndex())) {
-                            webCaseFlowDTO.setStatusName("待受理");
+                            webCaseFlowDTO.setStatusName("待分派");
                         }
                         // 受理节点
                         if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSL.getIndex())
@@ -855,9 +902,28 @@
                                 lfdjAssist.setNodeShowName("来访登记");
                                 lfdjAssist.setHandleUserName(caseInfo.getInputUserName());
                                 lfdjAssist.setHandleUnitName(caseInfo.getInputUnitName());
-                            } else {
+                            }
+                            if (CaseBaseConstsEnum.CASE_CANAL_2.getIndex().equals(caseInfo.getCanal())) {
                                 lfdjAssist.setNodeShowName(caseInfo.getCanalName());
                                 lfdjAssist.setHandleUnitName(caseInfo.getInputUserName() + "(当事人)");
+                            }
+                            if (CaseBaseConstsEnum.CASE_CANAL_3.getIndex().equals(caseInfo.getCanal())) {
+                                lfdjAssist.setNodeShowName("自行排查");
+                                lfdjAssist.setHandleUserName(caseInfo.getInputUserName());
+                                lfdjAssist.setHandleUnitName(caseInfo.getInputUnitName());
+                                if (CaseBaseConstsEnum.CASE_CANAL_SECOND_2.getIndex().equals(caseInfo.getCanalSecond())) {
+                                    lfdjAssist.setHandleUserName("系统自动获取");
+                                    lfdjAssist.setHandleUnitName(caseInfo.getCanalSecondName());
+                                }
+                                if (CaseBaseConstsEnum.CASE_CANAL_SECOND_7.getIndex().equals(caseInfo.getCanalSecond())) {
+                                    lfdjAssist.setHandleUserName("系统自动获取");
+                                    lfdjAssist.setHandleUnitName(caseInfo.getCanalSecondName());
+                                }
+                            }
+                            if (CaseBaseConstsEnum.CASE_CANAL_4.getIndex().equals(caseInfo.getCanal())) {
+                                lfdjAssist.setNodeShowName("协同推送");
+                                lfdjAssist.setHandleUserName("系统自动获取");
+                                lfdjAssist.setHandleUnitName(caseInfo.getCanalSecondName());
                             }
                             lfdjAssist.setTaskType(SHOW_TASK_TYPE_1);
                             lfdjAssist.setStatus(CaseTaskConsts.TASK_STATUS_2);
@@ -1020,7 +1086,7 @@
                                             || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_ZJ_DFP.getIndex())
                                             || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_DFP.getIndex())
                                             || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_DFP.getIndex())) {
-                                        webCaseFlowDTO.setStatusName("待受理");
+                                        webCaseFlowDTO.setStatusName("待分派");
                                     }
                                     // 受理节点
                                     if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSL.getIndex())
@@ -1492,7 +1558,7 @@
             dispCaseBaseDTO.setCaseId(caseInfo.getId());
             if ("22_00003-1".equals(caseInfo.getCanalSecond())) {
                 dispCaseBaseDTO.setIsQu(1);
-            }else {
+            } else {
                 dispCaseBaseDTO.setIsQu(0);
             }
             CaseDispBaseDTO caseDispBaseDTO = dispClient.sysDisp(dispCaseBaseDTO);
@@ -1999,8 +2065,13 @@
             CaseInfo caseInfo = caseInfoService.getCaseInfo(dslCaseTask.getCaseId());
             CaseInfo caseInfoPO = new CaseInfo();
             caseInfoPO.setId(dslCaseTask.getCaseId());
-            caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_3.getIndex());
-            caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_3.getDes());
+            if (flowOperation == FlowableConsts.OPERATION_jb_zzzx) {
+                caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_1.getIndex());
+                caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_1.getDes());
+            } else {
+                caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_3.getIndex());
+                caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_3.getDes());
+            }
             caseInfoPO.setProcess(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getIndex());
             caseInfoPO.setProcessName(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getDes());
             caseInfoPO.setInfoProcess(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getIndex());
@@ -2263,6 +2334,12 @@
             // 受理后的节点任务,未读
             blfkCaseTask.setReadStatus(CaseTaskConsts.READ_STATUS_0);
             blfkCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1);
+
+            //  判断是否非警务,如果是则需要重新计算,不是就走原先逻辑
+            CaseInfo caseInfo = caseInfoService.getById(dslCaseTask.getCaseId());
+            if (caseInfo.getCanalSecond().equals(CaseBaseConstsEnum.CASE_CANAL_SECOND_1.getIndex())) {
+                newFlowNode.setExpire(3);
+            }
             // 任务处理时限
             if (newFlowNode.getExpire() != 0) {
                 blfkCaseTask.setExpireTime(syHolidayService.getExpiryDay(nowDate, newFlowNode.getExpire()));
@@ -2430,8 +2507,12 @@
             ThreadPoolUtils.executor(new AsynUpdateCaseEventNode(jasqCaseTask.getCaseId(), blfkCaseTaskPO,
                     jasqCaseTask, GridEnum.getCatByTaskNode(blfkCaseTask.getNodeId()), GridEnum.EVENT_FLOW_7.getIndex(),
                     ownerIdList, loginUser.getId(), 0, GridEnum.EVENT_PROCESS_STATUS_1.getIndex()));
-            // 化解成功,自动结案审核通过
-            if (MediResultBaseConstsEnum.MEDI_RESULT_1.getIndex().equals(caseWindupApply.getMediResult())) {
+            // 1、如果是综治中心自己结案,就直接结案
+            // 2、交办案件,如果不是,不管成功与否,就审核,审核部门为当前提交部门对应的综治中心
+            // 3、自行受理,直接结案
+            CaseInfo caseInfo = caseInfoService.getById(jasqCaseTask.getCaseId());
+            // 判断是否自行受理
+            if (CaseBaseConsts.ZXSL_STATUS_1 == caseInfo.getZxslStatus()) {
                 // 完成当前结案申请工作流节点任务,走结案审核任务
                 FlowNode jashFlowNode = flowInfoService.completeTask(jasqCaseTask.getFlowableId(), jasqCaseTask.getProcessTaskId(),
                         FlowableConsts.OPERATION_forward, userId);
@@ -2573,7 +2654,7 @@
                     mapper.insert(jagdCaseTask);
                     // 完成结案归档工作流节点任务,结束流程
                     log.info("xsd:结案归档");
-                    CaseInfo caseInfo = caseInfoService.getById(caseWindupApply.getCaseId());
+                    caseInfo = caseInfoService.getById(caseWindupApply.getCaseId());
                     Date createTime = caseInfo.getCreateTime();
                     // 创建 2025年4月30日 的日期对象
                     SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
@@ -2625,14 +2706,16 @@
                 caseInfoUnfoldPO.setCloseTime(nowDate);
                 caseInfoUnfoldPO.setUpdateTime(nowDate);
                 caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO);
-            } else {// 化解不成功
+            } else {// 不是自行受理
                 // 完成当前结案申请工作流节点任务
                 FlowNode jashFlowNode = flowInfoService.completeTask(jasqCaseTask.getFlowableId(), jasqCaseTask.getProcessTaskId(),
                         FlowableConsts.OPERATION_forward, userId);
-                // 判断是否自行受理
-                CaseInfo caseInfo = caseInfoService.getById(jasqCaseTask.getCaseId());
-                if (CaseBaseConsts.ZXSL_STATUS_1 == caseInfo.getZxslStatus()) {
-                    // 自行受理,自行完成结案审核节点,直接进入下一个节点
+
+                //判断是否是综治中心
+                String unitId = loginUser.getUnitId();
+                CtUnitDTO unitById = custClient.getUnitById(unitId);
+                if (unitById != null && 101 == unitById.getUnitType()) {
+                    // 是综治中心,自行完成结案审核节点,直接进入下一个节点
                     // 新建并自动完成结案审核任务
                     CaseTask jashCaseTask = new CaseTask();
                     jashCaseTask.setId(utilsClient.getNewTimeId());
@@ -4095,7 +4178,12 @@
             gridToDoBacthVo.setYzyContent("");
             gridToDoBacthVo.setObjTag("");
             gridToDoBacthVo.setMobile("18607214221");
-            gridToDoBacthVo.setTodoType(GridEnum.GRID_TODO_TYPE_5.getIndex());
+            if (StringUtils.isNotEmpty(caseInfo.getCanalSecond()) && caseInfo.getCanalSecond().equals("22_00003-7")) {
+                gridToDoBacthVo.setTodoType(GridEnum.GRID_TODO_TYPE_6.getIndex());
+            } else {
+                gridToDoBacthVo.setTodoType(GridEnum.GRID_TODO_TYPE_5.getIndex());
+            }
+
             String title = "";
             title += noticeTypeName;
             if (StringUtils.isNotBlank(caseInfo.getPlaintiffs())) {

--
Gitblit v1.8.0