广州市综治平台后端
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java
@@ -420,11 +420,17 @@
                        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("不予受理")) {
                            buttonList.add(bysl);
                        } else {
                            if (UserBaseConsts.UNIT_GRADE_2 == ctUnitDTO.getUnitGrade()) {
                                buttonList.add(bysl);
                            }
                        }
                    }
                    // 待受理节点
@@ -645,6 +651,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("协同推送");
@@ -1492,7 +1506,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 +2013,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());
@@ -2430,8 +2449,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 +2596,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 +2648,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());