From c16a867c943e25a25d64f02fb95e755ef1a7c9f9 Mon Sep 17 00:00:00 2001
From: liyj <15602261488@163.com>
Date: Mon, 30 Sep 2024 18:03:25 +0800
Subject: [PATCH] 1、审核过程中申请记录的申请时间和申请人无法查看 2、审核联合处置申请在申请部门已办结后会报错,且无法继续审核 3、案件不予受理后在已办中无记录 4、上报的案件上级部门回退后下级部门接收不到 5、广州市综治中心纠纷依然可以选择上报,且点击上报后报错

---
 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseEvaluateService.java |   86 +++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 83 insertions(+), 3 deletions(-)

diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseEvaluateService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseEvaluateService.java
index ab9dd93..06fcb06 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseEvaluateService.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseEvaluateService.java
@@ -178,9 +178,10 @@
             CaseTask dsrpjCaseTask = caseTaskService.getOne(caseTaskQueryWrapper);
             // 完成当前当事人评价任务
             dsrpjCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2);
+            dsrpjCaseTask.setHandleUnitId(dsrpjCaseTask.getCandeUnitId());
+            dsrpjCaseTask.setHandleUnitName(dsrpjCaseTask.getCandeUnitName());
             dsrpjCaseTask.setHandleUserId(loginUser.getId());
-            dsrpjCaseTask.setHandleUserName(loginUser.getTrueName());
-            dsrpjCaseTask.setHandleUserName(loginUser.getTrueName());
+            dsrpjCaseTask.setHandleUserName(loginUser.getTrueName()+"(当事人)");
             dsrpjCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1);
             dsrpjCaseTask.setHandleTime(nowDate);
             dsrpjCaseTask.setUpdateTime(nowDate);
@@ -213,7 +214,9 @@
             if (dsrpjFlowNode.getExpire() != 0) {
                 jagdCaseTask.setExpireTime(DateUtils.addDay(nowDate, dsrpjFlowNode.getExpire()));
             }
-            jagdCaseTask.setHandleUnitName("系统自动");
+            jagdCaseTask.setHandleUnitId(dsrpjCaseTask.getCandeUnitId());
+            jagdCaseTask.setHandleUnitName(dsrpjCaseTask.getCandeUnitName());
+            jagdCaseTask.setHandleUserName("系统自动");
             jagdCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1);
             jagdCaseTask.setHandleTime(nowDate);
             jagdCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0);
@@ -242,4 +245,81 @@
         }
     }
 
+
+    /**
+     * 超时跳过评价
+     * @param idList 超时事件编号
+     */
+    public void autoArchive(List<String>idList){
+        try{
+            Date nowDate = DateUtils.getNowDate();
+            // 查询当事人评价任务
+            QueryWrapper<CaseTask> caseTaskQueryWrapper = new QueryWrapper<>();
+            caseTaskQueryWrapper.in("case_id", idList).eq("node_id", FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex());
+            List<CaseTask> dsrpjCaseTaskList = caseTaskService.list(caseTaskQueryWrapper);
+            for(CaseTask dsrpjCaseTask: dsrpjCaseTaskList){
+                // 完成当前当事人评价任务
+                dsrpjCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2);
+//                dsrpjCaseTask.setHandleUserId(loginUser.getId());
+                dsrpjCaseTask.setHandleUserName("系统自动");
+                dsrpjCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1);
+                dsrpjCaseTask.setHandleTime(nowDate);
+                dsrpjCaseTask.setUpdateTime(nowDate);
+                caseTaskService.updateCaseTask(dsrpjCaseTask);
+                // 完成当前当事人评价工作流任务
+                FlowNode dsrpjFlowNode = flowInfoService.completeTask(dsrpjCaseTask.getFlowableId(), dsrpjCaseTask.getProcessTaskId(),
+                        FlowableConsts.OPERATION_forward, "系统自动");
+                // 默认完成结案归档任务
+                CaseTask jagdCaseTask = new CaseTask();
+                jagdCaseTask.setId(utilsClient.getNewTimeId());
+                jagdCaseTask.setCaseId(dsrpjCaseTask.getCaseId());
+                jagdCaseTask.setFlowableId(dsrpjFlowNode.getFlowableId());
+                jagdCaseTask.setProcessInstanceId(dsrpjFlowNode.getProcessInstanceId());
+                jagdCaseTask.setProcessTaskId(dsrpjFlowNode.getProcessTaskId());
+                jagdCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1);
+                jagdCaseTask.setNodeType(dsrpjFlowNode.getNodeType());
+                jagdCaseTask.setNodeId(dsrpjFlowNode.getNodeId());
+                jagdCaseTask.setNodeName(dsrpjFlowNode.getNodeName());
+                jagdCaseTask.setFlowId(dsrpjFlowNode.getFlowId());
+                jagdCaseTask.setNodeShowName(dsrpjFlowNode.getNodeShowName());
+                jagdCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1);
+                // 通过调度的,任务候选执行者类型是上一步骤选择
+                jagdCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1);
+                jagdCaseTask.setCandeUnitId(dsrpjCaseTask.getCandeUnitId());
+                jagdCaseTask.setCandeUnitName(dsrpjCaseTask.getCandeUnitName());
+                // 系不需要签收
+                jagdCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0);
+                jagdCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2);
+                // 任务处理时限
+                if (dsrpjFlowNode.getExpire() != 0) {
+                    jagdCaseTask.setExpireTime(DateUtils.addDay(nowDate, dsrpjFlowNode.getExpire()));
+                }
+                jagdCaseTask.setHandleUnitName("系统自动");
+                jagdCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1);
+                jagdCaseTask.setHandleTime(nowDate);
+                jagdCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0);
+                jagdCaseTask.setCustId(dsrpjCaseTask.getCustId());
+                jagdCaseTask.setCreateTime(nowDate);
+                jagdCaseTask.setUpdateTime(nowDate);
+                caseTaskService.save(jagdCaseTask);
+                // 结束工作流流程
+                flowInfoService.completeTask(jagdCaseTask.getFlowableId(), jagdCaseTask.getProcessTaskId(),
+                        FlowableConsts.OPERATION_jb_zszz, "系统自动");
+                // 更新纠纷信息
+                CaseInfo caseInfoPO = new CaseInfo();
+                caseInfoPO.setId(dsrpjCaseTask.getCaseId());
+                caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_7.getIndex());
+                caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_7.getDes());
+                caseInfoPO.setProcess(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getIndex());
+                caseInfoPO.setProcessName(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getDes());
+                caseInfoPO.setInfoProcess(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getIndex());
+                caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes());
+                caseInfoPO.setUpdateTime(nowDate);
+                caseInfoService.updateCaseInfo(caseInfoPO);
+            }
+        }catch (Exception e){
+            log.error("[CaseEvaluateService.saveCaseEvaluateWechat]调用失败,异常信息:"+e, e);
+            throw new ServiceException("CaseEvaluateService.saveCaseEvaluateWechat", e);
+        }
+    }
 }

--
Gitblit v1.8.0