From 592c8a2dcc33fd6eb32dbcfbaed4a16aab31d28d Mon Sep 17 00:00:00 2001 From: liyj <15602261488@163.com> Date: Mon, 14 Oct 2024 18:02:15 +0800 Subject: [PATCH] 1、线上来访、来访登记、自行排查流程优化 2、任务新增处理耗时、是否超时、超时小时记录 --- dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAssistInfoMapper.xml | 6 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseReturn.java | 25 dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/consts/FlowNodeEnum.java | 8 dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/consts/FlowableConsts.java | 43 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java | 1235 +++++++++++++++++-------- dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseReturnMapper.xml | 22 dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_JB_LFDJ_V1.bpmn20.xml | 116 + dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/EvaluatePersonDTO.java | 26 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/WebCaseFlowDTO.java | 2 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java | 8 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseInfo.java | 6 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAssistApplyMapper.xml | 24 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAppearMapper.xml | 22 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseAssistApplyService.java | 30 dyh-service/dyh-base/src/main/java/cn/huge/module/mediate/constant/CaseBaseConsts.java | 13 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseTaskMapper.xml | 154 +- dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseWindupApplyMapper.xml | 22 dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/CustClient.java | 9 dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_JB_ZXPC_V1.bpmn20.xml | 115 + dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseAppear.java | 20 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CasePersonService.java | 38 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseUrgingMapper.xml | 22 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseUrging.java | 32 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseWindupApply.java | 20 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseSupervise.java | 39 dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_ZXSL_ZXPC_V1.bpmn20.xml | 139 ++ dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseTask.java | 74 + dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/controller/client/CtUnitClientController.java | 15 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoMapper.xml | 6 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseSuperviseMapper.xml | 27 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/utils/TaskUsetimeUtils.java | 82 + dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_LHCZ_V1.bpmn20.xml | 30 /dev/null | 85 - dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/impl/CustClientImpl.java | 22 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseEvaluateService.java | 126 +- dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/consts/CaseTaskConsts.java | 20 dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUnitService.java | 30 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseAssistInfo.java | 6 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseAssistApply.java | 29 dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_ZXSL_LFDJ_V1.bpmn20.xml | 150 +++ 40 files changed, 2,102 insertions(+), 796 deletions(-) diff --git a/dyh-service/dyh-base/src/main/java/cn/huge/module/mediate/constant/CaseBaseConsts.java b/dyh-service/dyh-base/src/main/java/cn/huge/module/mediate/constant/CaseBaseConsts.java index 4790bd8..0ab7634 100644 --- a/dyh-service/dyh-base/src/main/java/cn/huge/module/mediate/constant/CaseBaseConsts.java +++ b/dyh-service/dyh-base/src/main/java/cn/huge/module/mediate/constant/CaseBaseConsts.java @@ -11,6 +11,19 @@ public class CaseBaseConsts { /** + * 是否自行受理,0:否,1:是 + */ + public static final int ZXSL_STATUS_0 = 0; + public static final int ZXSL_STATUS_1 = 1; + + /** + * 事项等级,1:一级,2:二级,3:三级 + */ + public static final int CASE_LEVEL_1 = 1; + public static final int CASE_LEVEL_2 = 2; + public static final int CASE_LEVEL_3 = 3; + + /** * 登记方式,1:正常登记,2:案件导入 */ public static final int INPUT_WAY_1 = 1; diff --git a/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/controller/client/CtUnitClientController.java b/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/controller/client/CtUnitClientController.java index cf3f1ab..d894f94 100644 --- a/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/controller/client/CtUnitClientController.java +++ b/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/controller/client/CtUnitClientController.java @@ -97,6 +97,21 @@ } } + /** + * 获取本级综治中心 + * @url {ctx}/api/client/ctUnit/getBjZzzx + * @param unitId 组织编号 + * @return Object + */ + @GetMapping("/getBjZzzx") + public Object getBjZzzx(@RequestParam(value = "unitId") String unitId) { + try { + return ReturnSucUtils.getRepInfo(service.getBjZzzx(unitId)); + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(e.getMessage()); + } + } + @Autowired private SyRegionGridService syRegionGridService; /** diff --git a/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUnitService.java b/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUnitService.java index 787bcb9..1595bb1 100644 --- a/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUnitService.java +++ b/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUnitService.java @@ -655,11 +655,9 @@ */ public CtUnitDTO getParentZzzx(String unitId){ try{ + CtUnit loginCtUnit = mapper.selectById(unitId); // 查询当前单位的上级综治中心 QueryWrapper<CtUnit> ctUnitQueryWrapper = new QueryWrapper<>(); - ctUnitQueryWrapper.eq("id", unitId).select("parent_id"); - CtUnit loginCtUnit = mapper.selectOne(ctUnitQueryWrapper); - ctUnitQueryWrapper.clear(); ctUnitQueryWrapper.eq("id", loginCtUnit.getParentId()).eq("unit_type", UserBaseConsts.UNIT_TYPE_1); CtUnit zzzxCtUnit = mapper.selectOne(ctUnitQueryWrapper); CtUnitDTO ctUnitDTO = new CtUnitDTO(); @@ -670,4 +668,30 @@ throw new ServiceException("CtUnitService.getParentZzzx", e); } } + + /** + * 获取本级综治中心 + * @param unitId 当前单位编号 + * @return + */ + public CtUnitDTO getBjZzzx(String unitId){ + try{ + CtUnitDTO ctUnitDTO = new CtUnitDTO(); + // 查询自己是否是综治中心 + CtUnit loginCtUnit = mapper.selectById(unitId); + if (UserBaseConsts.UNIT_TYPE_1 == loginCtUnit.getUnitType()){ + BeanUtils.copyProperties(loginCtUnit, ctUnitDTO); + }else { + // 查询当前单位的上级综治中心 + QueryWrapper<CtUnit> ctUnitQueryWrapper = new QueryWrapper<>(); + ctUnitQueryWrapper.eq("id", loginCtUnit.getParentId()).eq("unit_type", UserBaseConsts.UNIT_TYPE_1); + CtUnit zzzxCtUnit = mapper.selectOne(ctUnitQueryWrapper); + BeanUtils.copyProperties(zzzxCtUnit, ctUnitDTO); + } + return ctUnitDTO; + }catch (Exception e){ + log.error("[CtUnitService.getParentZzzx]调用失败,异常信息:"+e, e); + throw new ServiceException("CtUnitService.getParentZzzx", e); + } + } } diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/consts/CaseTaskConsts.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/consts/CaseTaskConsts.java index a6e413d..c667566 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/consts/CaseTaskConsts.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/consts/CaseTaskConsts.java @@ -11,15 +11,6 @@ public class CaseTaskConsts { /** - * 任务类型,1:正常流转,2:回退申请,3:上报申请 - */ - public static final int TASK_TYPE_1 = 1; - public static final int TASK_TYPE_2 = 2; - public static final int TASK_TYPE_3 = 3; - // 用于流程展示,4:不予受理 - public static final int TASK_TYPE_4 = 4; - - /** * 纠纷任务类型,1:承办,2:配合 */ public static final int CASE_TASK_TYPE_1 = 1; @@ -47,11 +38,14 @@ public static final int TASK_STATUS_2 = 2; /** - * 处理结果,1:通过,2:不通过,3:不予受理 + * 处理结果,0:正常流转,1:审核通过,2:审核不通过,3:不予受理,4:回退,5:上报 */ + public static final int HANDLE_RESULT_0 = 0; public static final int HANDLE_RESULT_1 = 1; public static final int HANDLE_RESULT_2 = 2; public static final int HANDLE_RESULT_3 = 3; + public static final int HANDLE_RESULT_4 = 4; + public static final int HANDLE_RESULT_5 = 5; /** * 配合状态,0:配合,1:回退 @@ -64,6 +58,12 @@ */ public static final int HANDLE_TYPE_1 = 1; public static final int HANDLE_TYPE_2 = 2; + + /** + * 任务超时状态,0:未超时,1:已超时 + */ + public static final int OVERTIME_STATUS_0 = 0; + public static final int OVERTIME_STATUS_1 = 1; } /** * -------------------_ooOoo_------------------- diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAppearMapper.xml b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAppearMapper.xml index b4e01c1..f6e292f 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAppearMapper.xml +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAppearMapper.xml @@ -5,7 +5,7 @@ * @description: 自定义sql,请自行实现业务逻辑 * @company: hugeinfo * @author: liyj - * @time:2024-09-07 00:06:20 + * @time:2024-10-14 14:23:35 * @version 1.0.0 --> <mapper namespace="cn.huge.module.cases.dao.mapper.CaseAppearMapper"> @@ -29,6 +29,9 @@ <result property="auditResult" column="audit_result"/> <result property="auditResultName" column="audit_result_name"/> <result property="auditContent" column="audit_content"/> + <result property="usetimeHour" column="usetime_hour"/> + <result property="overtimeStatus" column="overtime_status"/> + <result property="overtimeHour" column="overtime_hour"/> <result property="deleteStatus" column="delete_status"/> <result property="custId" column="cust_id"/> <result property="createTime" column="create_time"/> @@ -56,6 +59,9 @@ audit_result, audit_result_name, audit_content, + usetime_hour, + overtime_status, + overtime_hour, delete_status, cust_id, create_time, @@ -80,6 +86,9 @@ <if test="entity.auditResult != null">audit_result = #{entity.auditResult},</if> <if test="entity.auditResultName != null">audit_result_name = #{entity.auditResultName},</if> <if test="entity.auditContent != null">audit_content = #{entity.auditContent},</if> + <if test="entity.usetimeHour != null">usetime_hour = #{entity.usetimeHour},</if> + <if test="entity.overtimeStatus != null">overtime_status = #{entity.overtimeStatus},</if> + <if test="entity.overtimeHour != null">overtime_hour = #{entity.overtimeHour},</if> <if test="entity.deleteStatus != null">delete_status = #{entity.deleteStatus},</if> <if test="entity.custId != null">cust_id = #{entity.custId},</if> <if test="entity.createTime != null">create_time = #{entity.createTime},</if> @@ -142,6 +151,15 @@ </if> <if test="terms.auditContent != null and terms.auditContent !=''"> and audit_content = #{terms.auditContent} + </if> + <if test="terms.usetimeHour != null and terms.usetimeHour !=''"> + and usetime_hour = #{terms.usetimeHour} + </if> + <if test="terms.overtimeStatus != null and terms.overtimeStatus !=''"> + and overtime_status = #{terms.overtimeStatus} + </if> + <if test="terms.overtimeHour != null and terms.overtimeHour !=''"> + and overtime_hour = #{terms.overtimeHour} </if> <if test="terms.deleteStatus = null and terms.deleteStatus =''"> and delete_status = 0 @@ -312,4 +330,4 @@ </if> limit #{page.offset}, #{page.size} </select> -</mapper> \ No newline at end of file +</mapper> \ No newline at end of file diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAssistApplyMapper.xml b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAssistApplyMapper.xml index 459aaa8..fac6e33 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAssistApplyMapper.xml +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAssistApplyMapper.xml @@ -4,8 +4,8 @@ * @title: 联合处置申请信息表 * @description: 自定义sql,请自行实现业务逻辑 * @company: hugeinfo - * @author: wangwh - * @time:2024-09-05 17:25:04 + * @author: liyj + * @time:2024-10-14 14:23:35 * @version 1.0.0 --> <mapper namespace="cn.huge.module.cases.dao.mapper.CaseAssistApplyMapper"> @@ -30,6 +30,9 @@ <result property="auditResult" column="audit_result"/> <result property="auditResultName" column="audit_result_name"/> <result property="auditContent" column="audit_content"/> + <result property="usetimeHour" column="usetime_hour"/> + <result property="overtimeStatus" column="overtime_status"/> + <result property="overtimeHour" column="overtime_hour"/> <result property="deleteStatus" column="delete_status"/> <result property="custId" column="cust_id"/> <result property="createTime" column="create_time"/> @@ -58,6 +61,9 @@ audit_result, audit_result_name, audit_content, + usetime_hour, + overtime_status, + overtime_hour, delete_status, cust_id, create_time, @@ -83,6 +89,9 @@ <if test="entity.auditResult != null">audit_result = #{entity.auditResult},</if> <if test="entity.auditResultName != null">audit_result_name = #{entity.auditResultName},</if> <if test="entity.auditContent != null">audit_content = #{entity.auditContent},</if> + <if test="entity.usetimeHour != null">usetime_hour = #{entity.usetimeHour},</if> + <if test="entity.overtimeStatus != null">overtime_status = #{entity.overtimeStatus},</if> + <if test="entity.overtimeHour != null">overtime_hour = #{entity.overtimeHour},</if> <if test="entity.deleteStatus != null">delete_status = #{entity.deleteStatus},</if> <if test="entity.custId != null">cust_id = #{entity.custId},</if> <if test="entity.createTime != null">create_time = #{entity.createTime},</if> @@ -148,6 +157,15 @@ </if> <if test="terms.auditContent != null and terms.auditContent !=''"> and audit_content = #{terms.auditContent} + </if> + <if test="terms.usetimeHour != null and terms.usetimeHour !=''"> + and usetime_hour = #{terms.usetimeHour} + </if> + <if test="terms.overtimeStatus != null and terms.overtimeStatus !=''"> + and overtime_status = #{terms.overtimeStatus} + </if> + <if test="terms.overtimeHour != null and terms.overtimeHour !=''"> + and overtime_hour = #{terms.overtimeHour} </if> <if test="terms.deleteStatus = null and terms.deleteStatus =''"> and delete_status = 0 @@ -318,4 +336,4 @@ </if> limit #{page.offset}, #{page.size} </select> -</mapper> \ No newline at end of file +</mapper> \ No newline at end of file diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAssistInfoMapper.xml b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAssistInfoMapper.xml index df8765a..664e815 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAssistInfoMapper.xml +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseAssistInfoMapper.xml @@ -13,6 +13,7 @@ <resultMap id="dataResult" type="cn.huge.module.cases.domain.po.CaseAssistInfo"> <result property="id" column="id"/> <result property="caseId" column="case_id"/> + <result property="processInstanceId" column="process_instance_id"/> <result property="caseTaskId" column="case_task_id"/> <result property="applyId" column="apply_id"/> <result property="assistUnitId" column="assist_unit_id"/> @@ -31,6 +32,7 @@ <sql id="column-part"> id, case_id, + process_instance_id, case_task_id, apply_id, assist_unit_id, @@ -46,6 +48,7 @@ <!-- 更新实体字段 --> <sql id="set-part"> <if test="entity.caseId != null">case_id = #{entity.caseId},</if> + <if test="entity.processInstanceId != null">process_instance_id = #{entity.processInstanceId},</if> <if test="entity.caseTaskId != null">case_task_id = #{entity.caseTaskId},</if> <if test="entity.applyId != null">apply_id = #{entity.applyId},</if> <if test="entity.assistUnitId != null">assist_unit_id = #{entity.assistUnitId},</if> @@ -68,6 +71,9 @@ <if test="terms.caseId != null and terms.caseId !=''"> and case_id = #{terms.caseId} </if> + <if test="terms.processInstanceId != null and terms.processInstanceId !=''"> + and process_instance_id = #{terms.processInstanceId} + </if> <if test="terms.caseTaskId != null and terms.caseTaskId !=''"> and case_task_id = #{terms.caseTaskId} </if> diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoMapper.xml b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoMapper.xml index 68ae3d9..ea18c9a 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoMapper.xml +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoMapper.xml @@ -48,6 +48,7 @@ <result property="canalName" column="canal_name"/> <result property="visitWay" column="visit_way"/> <result property="visitWayName" column="visit_way_name"/> + <result property="zxslStatus" column="zxsl_status"/> <result property="caseDes" column="case_des"/> <result property="caseClaim" column="case_claim"/> <result property="majorStatus" column="major_status"/> @@ -186,6 +187,7 @@ canal_name, visit_way, visit_way_name, + zxsl_status, case_des, case_claim, major_status, @@ -258,6 +260,7 @@ <if test="entity.canalName != null">canal_name = #{entity.canalName},</if> <if test="entity.visitWay != null">visit_way = #{entity.visitWay},</if> <if test="entity.visitWayName != null">visit_way_name = #{entity.visitWayName},</if> + <if test="entity.zxslStatus != null">zxsl_status = #{entity.zxslStatus},</if> <if test="entity.caseDes != null">case_des = #{entity.caseDes},</if> <if test="entity.caseClaim != null">case_claim = #{entity.caseClaim},</if> <if test="entity.majorStatus != null">major_status = #{entity.majorStatus},</if> @@ -527,6 +530,9 @@ <if test="terms.visitWayName != null and terms.visitWayName !=''"> and visit_way_name = #{terms.visitWayName} </if> + <if test="terms.zxslStatus != null and terms.zxslStatus !=''"> + and zxsl_status = #{terms.zxslStatus} + </if> <if test="terms.caseDes != null and terms.caseDes !=''"> and case_des = #{terms.caseDes} </if> diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseReturnMapper.xml b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseReturnMapper.xml index 41b1db9..80470bc 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseReturnMapper.xml +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseReturnMapper.xml @@ -5,7 +5,7 @@ * @description: 自定义sql,请自行实现业务逻辑 * @company: hugeinfo * @author: liyj - * @time:2024-09-07 00:06:20 + * @time:2024-10-14 14:23:35 * @version 1.0.0 --> <mapper namespace="cn.huge.module.cases.dao.mapper.CaseReturnMapper"> @@ -30,6 +30,9 @@ <result property="auditResult" column="audit_result"/> <result property="auditResultName" column="audit_result_name"/> <result property="auditContent" column="audit_content"/> + <result property="usetimeHour" column="usetime_hour"/> + <result property="overtimeStatus" column="overtime_status"/> + <result property="overtimeHour" column="overtime_hour"/> <result property="deleteStatus" column="delete_status"/> <result property="custId" column="cust_id"/> <result property="createTime" column="create_time"/> @@ -58,6 +61,9 @@ audit_result, audit_result_name, audit_content, + usetime_hour, + overtime_status, + overtime_hour, delete_status, cust_id, create_time, @@ -83,6 +89,9 @@ <if test="entity.auditResult != null">audit_result = #{entity.auditResult},</if> <if test="entity.auditResultName != null">audit_result_name = #{entity.auditResultName},</if> <if test="entity.auditContent != null">audit_content = #{entity.auditContent},</if> + <if test="entity.usetimeHour != null">usetime_hour = #{entity.usetimeHour},</if> + <if test="entity.overtimeStatus != null">overtime_status = #{entity.overtimeStatus},</if> + <if test="entity.overtimeHour != null">overtime_hour = #{entity.overtimeHour},</if> <if test="entity.deleteStatus != null">delete_status = #{entity.deleteStatus},</if> <if test="entity.custId != null">cust_id = #{entity.custId},</if> <if test="entity.createTime != null">create_time = #{entity.createTime},</if> @@ -148,6 +157,15 @@ </if> <if test="terms.auditContent != null and terms.auditContent !=''"> and audit_content = #{terms.auditContent} + </if> + <if test="terms.usetimeHour != null and terms.usetimeHour !=''"> + and usetime_hour = #{terms.usetimeHour} + </if> + <if test="terms.overtimeStatus != null and terms.overtimeStatus !=''"> + and overtime_status = #{terms.overtimeStatus} + </if> + <if test="terms.overtimeHour != null and terms.overtimeHour !=''"> + and overtime_hour = #{terms.overtimeHour} </if> <if test="terms.deleteStatus = null and terms.deleteStatus =''"> and delete_status = 0 @@ -319,4 +337,4 @@ </if> limit #{page.offset}, #{page.size} </select> -</mapper> \ No newline at end of file +</mapper> \ No newline at end of file diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseSuperviseMapper.xml b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseSuperviseMapper.xml index 25b641f..2dccff9 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseSuperviseMapper.xml +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseSuperviseMapper.xml @@ -4,8 +4,8 @@ * @title: 纠纷督办信息表 * @description: 自定义sql,请自行实现业务逻辑 * @company: hugeinfo - * @author: wangwh - * @time:2024-09-03 10:53:01 + * @author: liyj + * @time:2024-10-14 14:23:35 * @version 1.0.0 --> <mapper namespace="cn.huge.module.cases.dao.mapper.CaseSuperviseMapper"> @@ -27,6 +27,9 @@ <result property="replyUserId" column="reply_user_id"/> <result property="replyUserName" column="reply_user_name"/> <result property="replyTime" column="reply_time"/> + <result property="usetimeHour" column="usetime_hour"/> + <result property="overtimeStatus" column="overtime_status"/> + <result property="overtimeHour" column="overtime_hour"/> <result property="deleteStatus" column="delete_status"/> <result property="custId" column="cust_id"/> <result property="createTime" column="create_time"/> @@ -52,6 +55,9 @@ reply_user_id, reply_user_name, reply_time, + usetime_hour, + overtime_status, + overtime_hour, delete_status, cust_id, create_time, @@ -74,6 +80,9 @@ <if test="entity.replyUserId != null">reply_user_id = #{entity.replyUserId},</if> <if test="entity.replyUserName != null">reply_user_name = #{entity.replyUserName},</if> <if test="entity.replyTime != null">reply_time = #{entity.replyTime},</if> + <if test="entity.usetimeHour != null">usetime_hour = #{entity.usetimeHour},</if> + <if test="entity.overtimeStatus != null">overtime_status = #{entity.overtimeStatus},</if> + <if test="entity.overtimeHour != null">overtime_hour = #{entity.overtimeHour},</if> <if test="entity.deleteStatus != null">delete_status = #{entity.deleteStatus},</if> <if test="entity.custId != null">cust_id = #{entity.custId},</if> <if test="entity.createTime != null">create_time = #{entity.createTime},</if> @@ -131,14 +140,20 @@ <if test="terms.replyTime != null and terms.replyTime !=''"> and reply_time = #{terms.replyTime} </if> + <if test="terms.usetimeHour != null and terms.usetimeHour !=''"> + and usetime_hour = #{terms.usetimeHour} + </if> + <if test="terms.overtimeStatus != null and terms.overtimeStatus !=''"> + and overtime_status = #{terms.overtimeStatus} + </if> + <if test="terms.overtimeHour != null and terms.overtimeHour !=''"> + and overtime_hour = #{terms.overtimeHour} + </if> <if test="terms.deleteStatus = null and terms.deleteStatus =''"> and delete_status = 0 </if> <if test="terms.deleteStatus != null and terms.deleteStatus !=''"> and delete_status = #{terms.deleteStatus} - </if> - <if test="terms.deleteStatus == null or terms.deleteStatus ==''"> - and delete_status = '0' </if> <if test="terms.custId != null and terms.custId !=''"> and cust_id = #{terms.custId} @@ -354,4 +369,4 @@ and sup_status = #{supStatus} and quilt_unit_id = #{quiltUnitId} </select> -</mapper> \ No newline at end of file +</mapper> \ No newline at end of file diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseTaskMapper.xml b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseTaskMapper.xml index adc75c3..7e77673 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseTaskMapper.xml +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseTaskMapper.xml @@ -5,7 +5,7 @@ * @description: 自定义sql,请自行实现业务逻辑 * @company: hugeinfo * @author: liyj - * @time:2024-09-09 22:10:33 + * @time:2024-10-10 10:45:06 * @version 1.0.0 --> <mapper namespace="cn.huge.module.cases.dao.mapper.CaseTaskMapper"> @@ -16,14 +16,12 @@ <result property="flowableId" column="flowable_id"/> <result property="processInstanceId" column="process_instance_id"/> <result property="processTaskId" column="process_task_id"/> - <result property="taskType" column="task_type"/> <result property="nodeType" column="node_type"/> <result property="nodeId" column="node_id"/> <result property="nodeName" column="node_name"/> <result property="flowId" column="flow_id"/> <result property="nodeShowName" column="node_show_name"/> <result property="caseTaskType" column="case_task_type"/> - <result property="candeType" column="cande_type"/> <result property="candeUnitId" column="cande_unit_id"/> <result property="candeUnitName" column="cande_unit_name"/> <result property="candeDeptId" column="cande_dept_id"/> @@ -35,18 +33,25 @@ <result property="signStatus" column="sign_status"/> <result property="signExpireTime" column="sign_expire_time"/> <result property="signTime" column="sign_time"/> + <result property="signUnitId" column="sign_unit_id"/> + <result property="signUnitName" column="sign_unit_name"/> <result property="signUserId" column="sign_user_id"/> <result property="signUserName" column="sign_user_name"/> <result property="expireTime" column="expire_time"/> <result property="status" column="status"/> <result property="handleUnitId" column="handle_unit_id"/> <result property="handleUnitName" column="handle_unit_name"/> + <result property="handleDeptId" column="handle_dept_id"/> + <result property="handleDeptName" column="handle_dept_name"/> <result property="handleUserId" column="handle_user_id"/> <result property="handleUserName" column="handle_user_name"/> <result property="handleResult" column="handle_result"/> <result property="handleContent" column="handle_content"/> <result property="handleIllust" column="handle_illust"/> <result property="handleTime" column="handle_time"/> + <result property="usetimeHour" column="usetime_hour"/> + <result property="overtimeStatus" column="overtime_status"/> + <result property="overtimeHour" column="overtime_hour"/> <result property="deleteStatus" column="delete_status"/> <result property="custId" column="cust_id"/> <result property="createTime" column="create_time"/> @@ -61,14 +66,12 @@ flowable_id, process_instance_id, process_task_id, - task_type, node_type, node_id, node_name, flow_id, node_show_name, case_task_type, - cande_type, cande_unit_id, cande_unit_name, cande_dept_id, @@ -80,18 +83,25 @@ sign_status, sign_expire_time, sign_time, + sign_unit_id, + sign_unit_name, sign_user_id, sign_user_name, expire_time, status, handle_unit_id, handle_unit_name, + handle_dept_id, + handle_dept_name, handle_user_id, handle_user_name, handle_result, handle_content, handle_illust, handle_time, + usetime_hour, + overtime_status, + overtime_hour, delete_status, cust_id, create_time, @@ -103,14 +113,12 @@ <if test="entity.flowableId != null">flowable_id = #{entity.flowableId},</if> <if test="entity.processInstanceId != null">process_instance_id = #{entity.processInstanceId},</if> <if test="entity.processTaskId != null">process_task_id = #{entity.processTaskId},</if> - <if test="entity.taskType != null">task_type = #{entity.taskType},</if> <if test="entity.nodeType != null">node_type = #{entity.nodeType},</if> <if test="entity.nodeId != null">node_id = #{entity.nodeId},</if> <if test="entity.nodeName != null">node_name = #{entity.nodeName},</if> <if test="entity.flowId != null">flow_id = #{entity.flowId},</if> <if test="entity.nodeShowName != null">node_show_name = #{entity.nodeShowName},</if> <if test="entity.caseTaskType != null">case_task_type = #{entity.caseTaskType},</if> - <if test="entity.candeType != null">cande_type = #{entity.candeType},</if> <if test="entity.candeUnitId != null">cande_unit_id = #{entity.candeUnitId},</if> <if test="entity.candeUnitName != null">cande_unit_name = #{entity.candeUnitName},</if> <if test="entity.candeDeptId != null">cande_dept_id = #{entity.candeDeptId},</if> @@ -122,18 +130,25 @@ <if test="entity.signStatus != null">sign_status = #{entity.signStatus},</if> <if test="entity.signExpireTime != null">sign_expire_time = #{entity.signExpireTime},</if> <if test="entity.signTime != null">sign_time = #{entity.signTime},</if> + <if test="entity.signUnitId != null">sign_unit_id = #{entity.signUnitId},</if> + <if test="entity.signUnitName != null">sign_unit_name = #{entity.signUnitName},</if> <if test="entity.signUserId != null">sign_user_id = #{entity.signUserId},</if> <if test="entity.signUserName != null">sign_user_name = #{entity.signUserName},</if> <if test="entity.expireTime != null">expire_time = #{entity.expireTime},</if> <if test="entity.status != null">status = #{entity.status},</if> <if test="entity.handleUnitId != null">handle_unit_id = #{entity.handleUnitId},</if> <if test="entity.handleUnitName != null">handle_unit_name = #{entity.handleUnitName},</if> + <if test="entity.handleDeptId != null">handle_dept_id = #{entity.handleDeptId},</if> + <if test="entity.handleDeptName != null">handle_dept_name = #{entity.handleDeptName},</if> <if test="entity.handleUserId != null">handle_user_id = #{entity.handleUserId},</if> <if test="entity.handleUserName != null">handle_user_name = #{entity.handleUserName},</if> <if test="entity.handleResult != null">handle_result = #{entity.handleResult},</if> <if test="entity.handleContent != null">handle_content = #{entity.handleContent},</if> <if test="entity.handleIllust != null">handle_illust = #{entity.handleIllust},</if> <if test="entity.handleTime != null">handle_time = #{entity.handleTime},</if> + <if test="entity.usetimeHour != null">usetime_hour = #{entity.usetimeHour},</if> + <if test="entity.overtimeStatus != null">overtime_status = #{entity.overtimeStatus},</if> + <if test="entity.overtimeHour != null">overtime_hour = #{entity.overtimeHour},</if> <if test="entity.deleteStatus != null">delete_status = #{entity.deleteStatus},</if> <if test="entity.custId != null">cust_id = #{entity.custId},</if> <if test="entity.createTime != null">create_time = #{entity.createTime},</if> @@ -158,9 +173,6 @@ <if test="terms.processTaskId != null and terms.processTaskId !=''"> and process_task_id = #{terms.processTaskId} </if> - <if test="terms.taskType != null and terms.taskType !=''"> - and task_type = #{terms.taskType} - </if> <if test="terms.nodeType != null and terms.nodeType !=''"> and node_type = #{terms.nodeType} </if> @@ -178,9 +190,6 @@ </if> <if test="terms.caseTaskType != null and terms.caseTaskType !=''"> and case_task_type = #{terms.caseTaskType} - </if> - <if test="terms.candeType != null and terms.candeType !=''"> - and cande_type = #{terms.candeType} </if> <if test="terms.candeUnitId != null and terms.candeUnitId !=''"> and cande_unit_id = #{terms.candeUnitId} @@ -215,6 +224,12 @@ <if test="terms.signTime != null and terms.signTime !=''"> and sign_time = #{terms.signTime} </if> + <if test="terms.signUnitId != null and terms.signUnitId !=''"> + and sign_unit_id = #{terms.signUnitId} + </if> + <if test="terms.signUnitName != null and terms.signUnitName !=''"> + and sign_unit_name = #{terms.signUnitName} + </if> <if test="terms.signUserId != null and terms.signUserId !=''"> and sign_user_id = #{terms.signUserId} </if> @@ -233,6 +248,12 @@ <if test="terms.handleUnitName != null and terms.handleUnitName !=''"> and handle_unit_name = #{terms.handleUnitName} </if> + <if test="terms.handleDeptId != null and terms.handleDeptId !=''"> + and handle_dept_id = #{terms.handleDeptId} + </if> + <if test="terms.handleDeptName != null and terms.handleDeptName !=''"> + and handle_dept_name = #{terms.handleDeptName} + </if> <if test="terms.handleUserId != null and terms.handleUserId !=''"> and handle_user_id = #{terms.handleUserId} </if> @@ -250,6 +271,15 @@ </if> <if test="terms.handleTime != null and terms.handleTime !=''"> and handle_time = #{terms.handleTime} + </if> + <if test="terms.usetimeHour != null and terms.usetimeHour !=''"> + and usetime_hour = #{terms.usetimeHour} + </if> + <if test="terms.overtimeStatus != null and terms.overtimeStatus !=''"> + and overtime_status = #{terms.overtimeStatus} + </if> + <if test="terms.overtimeHour != null and terms.overtimeHour !=''"> + and overtime_hour = #{terms.overtimeHour} </if> <if test="terms.deleteStatus = null and terms.deleteStatus =''"> and delete_status = 0 @@ -288,22 +318,6 @@ id = #{entity.id} </where> </update> - - <!-- 批量对象 --> - <update id="updateCaseTaskList"> - update - <include refid="table-name"/> - <set> - <include refid="set-part"/> - </set> - <where> - id IN - <foreach item="id" collection="taskIdList" open="(" separator="," close=")"> - #{id} - </foreach> - </where> - </update> - <!-- 条件更新对象 --> <update id="updateCaseTaskTerms"> update @@ -365,7 +379,7 @@ select count(case when (node_id = 'ZJ_DFP' or node_id = 'QJ_DFP' or node_id = 'SJ_DFP' or node_id = 'DFP') and sign_status != 1 then id end) as waitDisp, count(case when sign_status = 1 then id end) as waitSign, - count(case when (node_id = 'ZJ_DSL' or node_id = 'QJ_DSL' or node_id = 'SJ_DSL' or node_id = 'DSL') and sign_status != 1 and (handle_result != 3 or handle_result is null) then id end) as waitAccept, + count(case when (node_id = 'ZJ_DSL' or node_id = 'QJ_DSL' or node_id = 'SJ_DSL' or node_id = 'DSL') and sign_status != 1 then id end) as waitAccept, count(case when node_id = 'BLFK' then id end) as Processing from <include refid="table-name" /> @@ -679,46 +693,46 @@ <select id="pageMyTaskShWSQD" resultType="cn.huge.module.cases.domain.dto.FrontPageListWSQDDTO"> select t1.*,t2.case_level as caseGrade, t2.canal_name as caseSource, concat(t2.case_type_first_name, '/' ,t2.case_type_name) as caseType, concat(t2.plaintiffs, t2.pagents) as plaintiffs, concat(t2.defendants, t2.dagents) as defendants - from - ( - SELECT case_id as caseId, id as ownerId, return_time as turnaroundTime, '回退' as applyType, - audit_unit_name as auditUnit, return_status as auditStatus, audit_result_name as auditResult, - audit_time as auditTime, create_time, audit_result - FROM dyh_case_return - WHERE return_unit_id = #{terms.applyUnitId} - union all - SELECT case_id as caseId, id as ownerId, apply_time as turnaroundTime, '结案' as applyType, - audit_unit_name as auditUnit, apply_status as auditStatus, audit_result_name as auditResult, - audit_time as auditTime, create_time, audit_result - FROM dyh_case_windup_apply - WHERE apply_unit_id = #{terms.applyUnitId} - union all - SELECT case_id as caseId, id as ownerId, appear_time as turnaroundTime, '上报' as applyType, - audit_unit_name as auditUnit, apply_status as auditStatus, audit_result_name as auditResult, - audit_time as auditTime, create_time, audit_result - FROM dyh_case_appear - WHERE appear_unit_id = #{terms.applyUnitId} - union all - SELECT case_id as caseId, id as ownerId, apply_time as turnaroundTime, '联合处置' as applyType, - audit_unit_name as auditUnit, apply_status as auditStatus, audit_result_name as auditStatus, - audit_time as auditTime, create_time, audit_result - FROM dyh_case_assist_apply - WHERE apply_unit_id = #{terms.applyUnitId} - )t1 left join dyh_case_info t2 on t1.caseId = t2.id + from + ( + SELECT case_id as caseId, id as ownerId, return_time as turnaroundTime, '回退' as applyType, + audit_unit_name as auditUnit, return_status as auditStatus, audit_result_name as auditResult, + audit_time as auditTime, create_time, audit_result + FROM dyh_case_return + WHERE return_unit_id = #{terms.applyUnitId} + union all + SELECT case_id as caseId, id as ownerId, apply_time as turnaroundTime, '结案' as applyType, + audit_unit_name as auditUnit, apply_status as auditStatus, audit_result_name as auditResult, + audit_time as auditTime, create_time, audit_result + FROM dyh_case_windup_apply + WHERE apply_unit_id = #{terms.applyUnitId} + union all + SELECT case_id as caseId, id as ownerId, appear_time as turnaroundTime, '上报' as applyType, + audit_unit_name as auditUnit, apply_status as auditStatus, audit_result_name as auditResult, + audit_time as auditTime, create_time, audit_result + FROM dyh_case_appear + WHERE appear_unit_id = #{terms.applyUnitId} + union all + SELECT case_id as caseId, id as ownerId, apply_time as turnaroundTime, '联合处置' as applyType, + audit_unit_name as auditUnit, apply_status as auditStatus, audit_result_name as auditStatus, + audit_time as auditTime, create_time, audit_result + FROM dyh_case_assist_apply + WHERE apply_unit_id = #{terms.applyUnitId} + )t1 left join dyh_case_info t2 on t1.caseId = t2.id <where> - <if test="terms.applyType != null and terms.applyType !=''"> - and t1.applyType = #{terms.applyType} - </if> - <if test="terms.auditStatus != null and terms.auditStatus !=''"> - and t1.audit_result = #{terms.auditResult} - </if> - <if test="terms.timeStart != null and terms.timeStart !='' and terms.timeEnd != null and terms.timeEnd !=''"> - and (DATE_FORMAT(t1.turnaroundTime,'%Y-%m-%d') <![CDATA[ >= ]]> #{terms.timeStart} - and DATE_FORMAT(t1.turnaroundTime,'%Y-%m-%d') <![CDATA[ <= ]]> #{terms.timeEnd}) - </if> - <if test="terms.partyName != null and terms.partyName !=''"> - and concat(t2.plaintiffs, t2.pagents, t2.defendants, t2.dagents) like concat('%', #{terms.partyName}, '%') - </if> + <if test="terms.applyType != null and terms.applyType !=''"> + and t1.applyType = #{terms.applyType} + </if> + <if test="terms.auditStatus != null and terms.auditStatus !=''"> + and t1.audit_result = #{terms.auditResult} + </if> + <if test="terms.timeStart != null and terms.timeStart !='' and terms.timeEnd != null and terms.timeEnd !=''"> + and (DATE_FORMAT(t1.turnaroundTime,'%Y-%m-%d') <![CDATA[ >= ]]> #{terms.timeStart} + and DATE_FORMAT(t1.turnaroundTime,'%Y-%m-%d') <![CDATA[ <= ]]> #{terms.timeEnd}) + </if> + <if test="terms.partyName != null and terms.partyName !=''"> + and concat(t2.plaintiffs, t2.pagents, t2.defendants, t2.dagents) like concat('%', #{terms.partyName}, '%') + </if> </where> <if test="page.sort != null"> <foreach collection="page.sort" item="s" index="index" separator="," open="order by "> @@ -800,4 +814,4 @@ limit #{page.offset}, #{page.size} </select> -</mapper> \ No newline at end of file +</mapper> \ No newline at end of file diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseUrgingMapper.xml b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseUrgingMapper.xml index e49e847..76f52af 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseUrgingMapper.xml +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseUrgingMapper.xml @@ -4,8 +4,8 @@ * @title: 纠纷催办信息表 * @description: 自定义sql,请自行实现业务逻辑 * @company: hugeinfo - * @author: zhouxt - * @time:2024-09-08 10:39:38 + * @author: liyj + * @time:2024-10-14 14:23:35 * @version 1.0.0 --> <mapper namespace="cn.huge.module.cases.dao.mapper.CaseUrgingMapper"> @@ -23,6 +23,9 @@ <result property="replyUserId" column="reply_user_id"/> <result property="replyUserName" column="reply_user_name"/> <result property="replyTime" column="reply_time"/> + <result property="usetimeHour" column="usetime_hour"/> + <result property="overtimeStatus" column="overtime_status"/> + <result property="overtimeHour" column="overtime_hour"/> <result property="deleteStatus" column="delete_status"/> <result property="custId" column="cust_id"/> <result property="createTime" column="create_time"/> @@ -44,6 +47,9 @@ reply_user_id, reply_user_name, reply_time, + usetime_hour, + overtime_status, + overtime_hour, delete_status, cust_id, create_time, @@ -62,6 +68,9 @@ <if test="entity.replyUserId != null">reply_user_id = #{entity.replyUserId},</if> <if test="entity.replyUserName != null">reply_user_name = #{entity.replyUserName},</if> <if test="entity.replyTime != null">reply_time = #{entity.replyTime},</if> + <if test="entity.usetimeHour != null">usetime_hour = #{entity.usetimeHour},</if> + <if test="entity.overtimeStatus != null">overtime_status = #{entity.overtimeStatus},</if> + <if test="entity.overtimeHour != null">overtime_hour = #{entity.overtimeHour},</if> <if test="entity.deleteStatus != null">delete_status = #{entity.deleteStatus},</if> <if test="entity.custId != null">cust_id = #{entity.custId},</if> <if test="entity.createTime != null">create_time = #{entity.createTime},</if> @@ -107,6 +116,15 @@ <if test="terms.replyTime != null and terms.replyTime !=''"> and reply_time = #{terms.replyTime} </if> + <if test="terms.usetimeHour != null and terms.usetimeHour !=''"> + and usetime_hour = #{terms.usetimeHour} + </if> + <if test="terms.overtimeStatus != null and terms.overtimeStatus !=''"> + and overtime_status = #{terms.overtimeStatus} + </if> + <if test="terms.overtimeHour != null and terms.overtimeHour !=''"> + and overtime_hour = #{terms.overtimeHour} + </if> <if test="terms.deleteStatus = null and terms.deleteStatus =''"> and delete_status = 0 </if> diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseWindupApplyMapper.xml b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseWindupApplyMapper.xml index 3038f5f..078e0ad 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseWindupApplyMapper.xml +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseWindupApplyMapper.xml @@ -5,7 +5,7 @@ * @description: 自定义sql,请自行实现业务逻辑 * @company: hugeinfo * @author: liyj - * @time:2024-09-06 23:57:02 + * @time:2024-10-14 14:23:35 * @version 1.0.0 --> <mapper namespace="cn.huge.module.cases.dao.mapper.CaseWindupApplyMapper"> @@ -35,6 +35,9 @@ <result property="auditResult" column="audit_result"/> <result property="auditResultName" column="audit_result_name"/> <result property="auditContent" column="audit_content"/> + <result property="usetimeHour" column="usetime_hour"/> + <result property="overtimeStatus" column="overtime_status"/> + <result property="overtimeHour" column="overtime_hour"/> <result property="deleteStatus" column="delete_status"/> <result property="custId" column="cust_id"/> <result property="createTime" column="create_time"/> @@ -68,6 +71,9 @@ audit_result, audit_result_name, audit_content, + usetime_hour, + overtime_status, + overtime_hour, delete_status, cust_id, create_time, @@ -98,6 +104,9 @@ <if test="entity.auditResult != null">audit_result = #{entity.auditResult},</if> <if test="entity.auditResultName != null">audit_result_name = #{entity.auditResultName},</if> <if test="entity.auditContent != null">audit_content = #{entity.auditContent},</if> + <if test="entity.usetimeHour != null">usetime_hour = #{entity.usetimeHour},</if> + <if test="entity.overtimeStatus != null">overtime_status = #{entity.overtimeStatus},</if> + <if test="entity.overtimeHour != null">overtime_hour = #{entity.overtimeHour},</if> <if test="entity.deleteStatus != null">delete_status = #{entity.deleteStatus},</if> <if test="entity.custId != null">cust_id = #{entity.custId},</if> <if test="entity.createTime != null">create_time = #{entity.createTime},</if> @@ -178,6 +187,15 @@ </if> <if test="terms.auditContent != null and terms.auditContent !=''"> and audit_content = #{terms.auditContent} + </if> + <if test="terms.usetimeHour != null and terms.usetimeHour !=''"> + and usetime_hour = #{terms.usetimeHour} + </if> + <if test="terms.overtimeStatus != null and terms.overtimeStatus !=''"> + and overtime_status = #{terms.overtimeStatus} + </if> + <if test="terms.overtimeHour != null and terms.overtimeHour !=''"> + and overtime_hour = #{terms.overtimeHour} </if> <if test="terms.deleteStatus = null and terms.deleteStatus =''"> and delete_status = 0 @@ -417,4 +435,4 @@ </if> limit #{page.offset}, #{page.size} </select> -</mapper> \ No newline at end of file +</mapper> \ No newline at end of file diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/EvaluatePersonDTO.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/EvaluatePersonDTO.java new file mode 100644 index 0000000..68a1d1e --- /dev/null +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/EvaluatePersonDTO.java @@ -0,0 +1,26 @@ +package cn.huge.module.cases.domain.dto; + +import cn.huge.module.cases.domain.po.CaseInfo; +import lombok.Data; + +/** + * @title: 当事人评价人信息 + * @description: 当事人评价人信息 + * @company: hugeinfo + * @author: liyj + * @time: 2022-03-11 11:43:25 + * @version: 1.0.0 + * @see CaseInfo + */ +@Data +public class EvaluatePersonDTO { + /** + * 姓名/企业/机构名称 + */ + private String id; + + /** + * 联系方式 + */ + private String name; +} diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/WebCaseFlowDTO.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/WebCaseFlowDTO.java index 2509ec1..a32578b 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/WebCaseFlowDTO.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/WebCaseFlowDTO.java @@ -70,7 +70,7 @@ private String mediResultName; /** - * 任务类型,1:正常流转,2:回退申请,3:上报申请 + * 流程标签展示,1:正常流转(√),2:回退申请(←),3:上报申请(↑),4:不予受理(x) */ private Integer taskType; diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseAppear.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseAppear.java index b9c83b0..066fd73 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseAppear.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseAppear.java @@ -13,7 +13,7 @@ * @description: PO中的属性与数据表是一一对应关系,如需根据业务处理不同,请使用BO对象。 * @company:hugeinfo * @author: liyj - * @time: 2024-09-07 00:06:20 + * @time: 2024-10-14 10:03:57 * @version 1.0.0 */ @TableName(value = "dyh_case_appear") @@ -129,6 +129,24 @@ private String auditContent; /** + * 上报审核耗时,单位:小时 + */ + @TableField(value = "usetime_hour") + private Integer usetimeHour; + + /** + * 上报审核超时状态,0:未超时,1:已超时 + */ + @TableField(value = "overtime_status") + private Integer overtimeStatus; + + /** + * 上报审核超时,单位:小时 + */ + @TableField(value = "overtime_hour") + private Integer overtimeHour; + + /** * 删除状态,0:未删除,1:已删除 */ @TableLogic diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseAssistApply.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseAssistApply.java index d98f656..68a7a94 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseAssistApply.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseAssistApply.java @@ -1,7 +1,6 @@ package cn.huge.module.cases.domain.po; import cn.huge.module.sys.dto.FileInfoBaseDTO; -import cn.huge.module.sys.dto.FileTypeInfoBaseDTO; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableLogic; @@ -15,8 +14,8 @@ * @title: 联合处置申请信息表数据库对应关系类 * @description: PO中的属性与数据表是一一对应关系,如需根据业务处理不同,请使用BO对象。 * @company:hugeinfo - * @author: wangwh - * @time: 2024-09-05 17:25:04 + * @author: liyj + * @time: 2024-10-14 10:03:57 * @version 1.0.0 */ @TableName(value = "dyh_case_assist_apply") @@ -84,7 +83,7 @@ private Date applyTime; /** - * 申请状态,0:待审核,1:已审核,2:异常结束 + * 申请状态,0:待审核,1:已审核 */ @TableField(value = "apply_status") private Integer applyStatus; @@ -138,6 +137,24 @@ private String auditContent; /** + * 审核耗时,单位:小时 + */ + @TableField(value = "usetime_hour") + private Integer usetimeHour; + + /** + * 审核超时状态,0:未超时,1:已超时 + */ + @TableField(value = "overtime_status") + private Integer overtimeStatus; + + /** + * 审核超时,单位:小时 + */ + @TableField(value = "overtime_hour") + private Integer overtimeHour; + + /** * 删除状态,0:未删除,1:已删除 */ @TableLogic @@ -162,6 +179,10 @@ @TableField(value = "update_time") private Date updateTime; + /** + * 附件列表 + */ @TableField(exist = false) private List<FileInfoBaseDTO> fileInfoBaseDTOList; + } diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseAssistInfo.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseAssistInfo.java index 8f3a610..03d86b7 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseAssistInfo.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseAssistInfo.java @@ -33,6 +33,12 @@ private String caseId; /** + * 工作流流程实例编号 + */ + @TableField(value = "process_instance_id") + private String processInstanceId; + + /** * 办理反馈任务编号 */ @TableField(value = "case_task_id") diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseInfo.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseInfo.java index bd8ae3f..c607b99 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseInfo.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseInfo.java @@ -246,6 +246,12 @@ private String visitWayName; /** + * 是否自行受理,0:否,1:是 + */ + @TableField(value = "zxsl_status") + private Integer zxslStatus; + + /** * 事项概况 */ @TableField(value = "case_des") diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseReturn.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseReturn.java index e5a30d7..332c97d 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseReturn.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseReturn.java @@ -1,7 +1,6 @@ package cn.huge.module.cases.domain.po; import cn.huge.module.sys.dto.FileInfoBaseDTO; -import cn.huge.module.sys.dto.FileTypeInfoBaseDTO; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableLogic; @@ -16,7 +15,7 @@ * @description: PO中的属性与数据表是一一对应关系,如需根据业务处理不同,请使用BO对象。 * @company:hugeinfo * @author: liyj - * @time: 2024-09-07 00:06:20 + * @time: 2024-10-14 10:03:57 * @version 1.0.0 */ @TableName(value = "dyh_case_return") @@ -84,8 +83,8 @@ private String caseTaskId; /** - * 纠纷任务类型,1:承办,2:配合 - */ + * 回退审核纠纷任务类型,1:承办,2:配合 + */ @TableField(value = "case_task_type") private Integer caseTaskType; @@ -138,6 +137,24 @@ private String auditContent; /** + * 回退审核耗时,单位:小时 + */ + @TableField(value = "usetime_hour") + private Integer usetimeHour; + + /** + * 回退审核超时状态,0:未超时,1:已超时 + */ + @TableField(value = "overtime_status") + private Integer overtimeStatus; + + /** + * 回退审核超时,单位:小时 + */ + @TableField(value = "overtime_hour") + private Integer overtimeHour; + + /** * 删除状态,0:未删除,1:已删除 */ @TableLogic diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseSupervise.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseSupervise.java index cbf3199..4bc3ce7 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseSupervise.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseSupervise.java @@ -16,8 +16,8 @@ * @title: 纠纷督办信息表数据库对应关系类 * @description: PO中的属性与数据表是一一对应关系,如需根据业务处理不同,请使用BO对象。 * @company:hugeinfo - * @author: wangwh - * @time: 2024-09-03 10:53:01 + * @author: liyj + * @time: 2024-10-14 10:03:57 * @version 1.0.0 */ @TableName(value = "dyh_case_supervise") @@ -43,14 +43,14 @@ private String supContent; /** - * 督办人编号 - */ + * 督办组织编号 + */ @TableField(value = "sup_unit_id") private String supUnitId; /** - * 督办人名称 - */ + * 督办组织名称 + */ @TableField(value = "sup_unit_name") private String supUnitName; @@ -74,14 +74,14 @@ private Date supTime; /** - * 被督办组织编号 - */ + * 被督办组织编号 + */ @TableField(value = "quilt_unit_id") private String quiltUnitId; /** - * 被督办组织名称 - */ + * 被督办组织名称 + */ @TableField(value = "quilt_unit_name") private String quiltUnitName; @@ -121,6 +121,24 @@ @JsonFormat(pattern="yyyy-MM-dd HH:mm", timezone="GMT+8") @TableField(value = "reply_time") private Date replyTime; + + /** + * 回复耗时,单位:小时 + */ + @TableField(value = "usetime_hour") + private Integer usetimeHour; + + /** + * 回复超时状态,0:未超时,1:已超时 + */ + @TableField(value = "overtime_status") + private Integer overtimeStatus; + + /** + * 回复超时,单位:小时 + */ + @TableField(value = "overtime_hour") + private Integer overtimeHour; /** * 删除状态,0:未删除,1:已删除 @@ -173,4 +191,5 @@ @JsonFormat(pattern="yyyy-MM-dd HH:mm", timezone="GMT+8") @TableField(exist = false) private Date timeLimit; + } diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseTask.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseTask.java index ac17ac3..d1c4e6d 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseTask.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseTask.java @@ -13,7 +13,7 @@ * @description: PO中的属性与数据表是一一对应关系,如需根据业务处理不同,请使用BO对象。 * @company:hugeinfo * @author: liyj - * @time: 2024-09-09 22:10:33 + * @time: 2024-10-10 10:45:05 * @version 1.0.0 */ @TableName(value = "dyh_case_task") @@ -49,12 +49,6 @@ */ @TableField(value = "process_task_id") private String processTaskId; - - /** - * 任务类型,1:正常流转,2:回退申请,3:上报申请 - */ - @TableField(value = "task_type") - private Integer taskType; /** * 工作流节点类型,1:首节点,2:普通节点,3:结束节点 @@ -93,55 +87,49 @@ private Integer caseTaskType; /** - * 任务候选执行者类型:1:所有人,2:上一步骤选择,3:上一步骤执行者,4:自定义指定(单位部门角色人组合) - */ - @TableField(value = "cande_type") - private Integer candeType; - - /** - * 任务候选执行组织编号 + * 任务所属组织编号 */ @TableField(value = "cande_unit_id") private String candeUnitId; /** - * 任务候选执行组织名称 + * 任务所属组织名称 */ @TableField(value = "cande_unit_name") private String candeUnitName; /** - * 任务候选执行部门编号 + * 任务所属部门编号 */ @TableField(value = "cande_dept_id") private String candeDeptId; /** - * 任务候选执行部门名称 + * 任务所属部门名称 */ @TableField(value = "cande_dept_name") private String candeDeptName; /** - * 任务候选执行角色代码编号 + * 任务所属角色编号 */ @TableField(value = "cande_role_code") private String candeRoleCode; /** - * 任务候选执行角色名称 + * 任务所属角色名称 */ @TableField(value = "cande_role_name") private String candeRoleName; /** - * 任务候选执行人员编号 + * 任务所属人员编号 */ @TableField(value = "cande_user_id") private String candeUserId; /** - * 任务候选执行人员名称 + * 任务所属人员名称 */ @TableField(value = "cande_user_name") private String candeUserName; @@ -163,6 +151,18 @@ */ @TableField(value = "sign_time") private Date signTime; + + /** + * 任务签收单位编号 + */ + @TableField(value = "sign_unit_id") + private String signUnitId; + + /** + * 任务签收单位名称 + */ + @TableField(value = "sign_unit_name") + private String signUnitName; /** * 任务签收人编号 @@ -201,6 +201,18 @@ private String handleUnitName; /** + * 任务处理部门编号 + */ + @TableField(value = "handle_dept_id") + private String handleDeptId; + + /** + * 任务处理部门名称 + */ + @TableField(value = "handle_dept_name") + private String handleDeptName; + + /** * 任务处理人编号 */ @TableField(value = "handle_user_id") @@ -213,7 +225,7 @@ private String handleUserName; /** - * 处理结果,1:通过,2:不通过,3:不予受理 + * 处理结果,0:正常流转,1:审核通过,2:审核不通过,3:不予受理,4:回退,5:上报 */ @TableField(value = "handle_result") private Integer handleResult; @@ -237,6 +249,24 @@ private Date handleTime; /** + * 任务处理耗时,单位:小时 + */ + @TableField(value = "usetime_hour") + private Integer usetimeHour; + + /** + * 任务超时状态,0:未超时,1:已超时 + */ + @TableField(value = "overtime_status") + private Integer overtimeStatus; + + /** + * 任务处理超时,单位:小时 + */ + @TableField(value = "overtime_hour") + private Integer overtimeHour; + + /** * 删除状态,0:未删除,1:已删除 */ @TableLogic diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseUrging.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseUrging.java index 821d5f8..92f9725 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseUrging.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseUrging.java @@ -12,8 +12,8 @@ * @title: 纠纷催办信息表数据库对应关系类 * @description: PO中的属性与数据表是一一对应关系,如需根据业务处理不同,请使用BO对象。 * @company:hugeinfo - * @author: zhouxt - * @time: 2024-09-08 10:39:38 + * @author: liyj + * @time: 2024-10-14 10:03:57 * @version 1.0.0 */ @TableName(value = "dyh_case_urging") @@ -57,13 +57,13 @@ private Date urgingTime; /** - * 催办状态 + * 催办状态,0:未回复,1:已回复 */ @TableField(value = "urging_status") private Integer urgingStatus; /** - * 回复期限 + * 回复期限,单位:小时 */ @TableField(value = "reply_term") private Integer replyTerm; @@ -90,17 +90,35 @@ * 回复时间 */ @TableField(value = "reply_time") - private String replyTime; + private Date replyTime; /** - * 删除状态 + * 回复耗时,单位:小时 + */ + @TableField(value = "usetime_hour") + private Integer usetimeHour; + + /** + * 回复超时状态,0:未超时,1:已超时 + */ + @TableField(value = "overtime_status") + private Integer overtimeStatus; + + /** + * 回复超时,单位:小时 + */ + @TableField(value = "overtime_hour") + private Integer overtimeHour; + + /** + * 删除状态,0:未删除,1:已删除 */ @TableLogic @TableField(value = "delete_status") private Integer deleteStatus; /** - * 客户编号 + * 顾客编号 */ @TableField(value = "cust_id") private String custId; diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseWindupApply.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseWindupApply.java index a36276b..cb157e8 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseWindupApply.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseWindupApply.java @@ -13,7 +13,7 @@ * @description: PO中的属性与数据表是一一对应关系,如需根据业务处理不同,请使用BO对象。 * @company:hugeinfo * @author: liyj - * @time: 2024-09-06 23:57:02 + * @time: 2024-10-14 10:03:57 * @version 1.0.0 */ @TableName(value = "dyh_case_windup_apply") @@ -165,6 +165,24 @@ private String auditContent; /** + * 结案审核耗时,单位:小时 + */ + @TableField(value = "usetime_hour") + private Integer usetimeHour; + + /** + * 结案审核超时状态,0:未超时,1:已超时 + */ + @TableField(value = "overtime_status") + private Integer overtimeStatus; + + /** + * 结案审核超时,单位:小时 + */ + @TableField(value = "overtime_hour") + private Integer overtimeHour; + + /** * 删除状态,0:未删除,1:已删除 */ @TableLogic diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseAssistApplyService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseAssistApplyService.java index 1385ee0..013fddc 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseAssistApplyService.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseAssistApplyService.java @@ -213,32 +213,33 @@ String unitId = unitIdList[i]; String unitName = unitNameList[i]; // 启动联合处置工作流 - FlowNode dfpFlowNode = flowInfoService.startFlow(FlowableConsts.FLOWABLE_ID_LHCZ, caseAssistApplyPO.getCaseId()); - // 新建并完成配合部门待分派任务 + FlowNode dfpFlowNode = flowInfoService.startFlow(FlowableConsts.GZDYH_LHCZ_V1, caseAssistApplyPO.getCaseId()); + // 新建并完成配合组织待分派节点任务 CaseTask dfpCaseTask = new CaseTask(); dfpCaseTask.setId(utilsClient.getNewTimeId()); dfpCaseTask.setCaseId(caseAssistApplyPO.getCaseId()); dfpCaseTask.setFlowableId(dfpFlowNode.getFlowableId()); dfpCaseTask.setProcessInstanceId(dfpFlowNode.getProcessInstanceId()); dfpCaseTask.setProcessTaskId(dfpFlowNode.getProcessTaskId()); - dfpCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); dfpCaseTask.setNodeType(dfpFlowNode.getNodeType()); dfpCaseTask.setNodeId(dfpFlowNode.getNodeId()); dfpCaseTask.setNodeName(dfpFlowNode.getNodeName()); dfpCaseTask.setFlowId(dfpFlowNode.getFlowId()); dfpCaseTask.setNodeShowName(dfpFlowNode.getNodeShowName()); dfpCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_2); - // 通过调度的,任务候选执行者类型是上一步骤选择 - dfpCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); - dfpCaseTask.setCandeUnitId(unitId); - dfpCaseTask.setCandeUnitName(unitName); - // 不需要签收 + // 任务所属单位:联合处置审核组织 + dfpCaseTask.setCandeUnitId(loginUser.getUnitId()); + dfpCaseTask.setCandeUnitName(loginUser.getUnitName()); + // 联合处置审核任务,不需要签收 dfpCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); dfpCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); dfpCaseTask.setHandleUnitId(loginUser.getUnitId()); dfpCaseTask.setHandleUnitName(loginUser.getUnitName()); + dfpCaseTask.setHandleDeptId(loginUser.getDeptId()); + dfpCaseTask.setHandleDeptName(loginUser.getDeptName()); dfpCaseTask.setHandleUserId(loginUser.getId()); dfpCaseTask.setHandleUserName(loginUser.getTrueName()); + dfpCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); dfpCaseTask.setHandleContent(caseAssistApplyPO.getAuditContent()); dfpCaseTask.setHandleIllust("交办至:"+caseAssistApplyPO.getApplyAssistUnitName()); // 任务处理时限 @@ -250,35 +251,33 @@ dfpCaseTask.setCreateTime(now); dfpCaseTask.setUpdateTime(now); caseTaskService.save(dfpCaseTask); - // 完成待分派任务 + // 完成待分派节点任务,进入待受理节点 FlowNode dslFlowNode = flowInfoService.completeTask(dfpCaseTask.getFlowableId(), dfpCaseTask.getProcessTaskId(), FlowableConsts.OPERATION_forward, loginUser.getId()); - // 创建配合部门待受理任务 + // 创建待受理节点任务 CaseTask dslCaseTask = new CaseTask(); dslCaseTask.setId(utilsClient.getNewTimeId()); dslCaseTask.setCaseId(caseAssistApplyPO.getCaseId()); dslCaseTask.setFlowableId(dslFlowNode.getFlowableId()); dslCaseTask.setProcessInstanceId(dslFlowNode.getProcessInstanceId()); dslCaseTask.setProcessTaskId(dslFlowNode.getProcessTaskId()); - dslCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); dslCaseTask.setNodeType(dslFlowNode.getNodeType()); dslCaseTask.setNodeId(dslFlowNode.getNodeId()); dslCaseTask.setNodeName(dslFlowNode.getNodeName()); dslCaseTask.setFlowId(dslFlowNode.getFlowId()); dslCaseTask.setNodeShowName(dslFlowNode.getNodeShowName()); dslCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_2); - // 通过调度的,任务候选执行者类型是上一步骤选择 - dslCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + // 任务所属组织:联合处置组织 CtUnitDTO ctUnitDTO = custClient.getUnitById(unitId); dslCaseTask.setCandeUnitId(ctUnitDTO.getId()); dslCaseTask.setCandeUnitName(ctUnitDTO.getUnitName()); - // 需要签收 + // 待受理任务,需要签收 dslCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_1); - dslCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); // 任务处理时限 if (dslFlowNode.getExpire() != 0) { dslCaseTask.setExpireTime(DateUtils.addDay(now, dslFlowNode.getExpire())); } + dslCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); dslCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); dslCaseTask.setCustId(caseAssistApplyPO.getCustId()); dslCaseTask.setCreateTime(now); @@ -288,6 +287,7 @@ CaseAssistInfo caseAssistInfoPO = new CaseAssistInfo(); caseAssistInfoPO.setId(utilsClient.getNewTimeId()); caseAssistInfoPO.setCaseId(dslCaseTask.getCaseId()); + caseAssistInfoPO.setProcessInstanceId(dslCaseTask.getProcessInstanceId()); caseAssistInfoPO.setAssistUnitId(unitId); caseAssistInfoPO.setAssistUnitName(unitName); caseAssistInfoPO.setAssistStatus(CaseTaskConsts.ASSIST_STATUS_0); 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 32c1c62..29b9c33 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 @@ -172,52 +172,60 @@ caseEvaluate.setCustId(loginUser.getCustId()); caseEvaluate.setUpdateTime(nowDate); this.saveOrUpdate(caseEvaluate); - // 查询当事人评价任务 + // 查询当事人评价节点任务 QueryWrapper<CaseTask> caseTaskQueryWrapper = new QueryWrapper<>(); - caseTaskQueryWrapper.eq("case_id", caseEvaluate.getCaseId()).eq("node_id", FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex()); + caseTaskQueryWrapper.eq("case_id", caseEvaluate.getCaseId()) + .eq("node_id", FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex()) + .eq("status", CaseTaskConsts.TASK_STATUS_1); 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.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); + dsrpjCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); dsrpjCaseTask.setHandleTime(nowDate); dsrpjCaseTask.setUpdateTime(nowDate); caseTaskService.updateCaseTask(dsrpjCaseTask); - // 完成当前当事人评价工作流任务 - FlowNode dsrpjFlowNode = flowInfoService.completeTask(dsrpjCaseTask.getFlowableId(), dsrpjCaseTask.getProcessTaskId(), + // 完成当前当事人评价工作流节点任务,进入结案归档节点 + FlowNode jagdFlowNode = flowInfoService.completeTask(dsrpjCaseTask.getFlowableId(), dsrpjCaseTask.getProcessTaskId(), FlowableConsts.OPERATION_forward, userId); - // 默认完成结案归档任务 + // 创建并完成结案归档任务 CaseTask jagdCaseTask = new CaseTask(); jagdCaseTask.setId(utilsClient.getNewTimeId()); jagdCaseTask.setCaseId(caseEvaluate.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.setFlowableId(jagdFlowNode.getFlowableId()); + jagdCaseTask.setProcessInstanceId(jagdFlowNode.getProcessInstanceId()); + jagdCaseTask.setProcessTaskId(jagdFlowNode.getProcessTaskId()); + jagdCaseTask.setNodeType(jagdFlowNode.getNodeType()); + jagdCaseTask.setNodeId(jagdFlowNode.getNodeId()); + jagdCaseTask.setNodeName(jagdFlowNode.getNodeName()); + jagdCaseTask.setFlowId(jagdFlowNode.getFlowId()); + jagdCaseTask.setNodeShowName(jagdFlowNode.getNodeShowName()); jagdCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); - // 通过调度的,任务候选执行者类型是上一步骤选择 - jagdCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); - jagdCaseTask.setCandeUnitId(dsrpjCaseTask.getCandeUnitId()); - jagdCaseTask.setCandeUnitName(dsrpjCaseTask.getCandeUnitName()); - // 系不需要签收 + // 任务所属单位:结案申请组织 + caseTaskQueryWrapper.clear(); + caseTaskQueryWrapper.eq("case_id", caseEvaluate.getCaseId()) + .eq("node_id", FlowNodeEnum.FLOW_NODE_JASQ.getIndex()) + .eq("status", CaseTaskConsts.TASK_STATUS_2).orderByDesc("create_time"); + List<CaseTask> jasqCaseTaskList = caseTaskService.list(caseTaskQueryWrapper); + jagdCaseTask.setCandeUnitId(jasqCaseTaskList.get(0).getHandleUnitId()); + jagdCaseTask.setCandeUnitName(jasqCaseTaskList.get(0).getHandleUnitName()); + // 受理后的任务,不需要签收 jagdCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); jagdCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); // 任务处理时限 - if (dsrpjFlowNode.getExpire() != 0) { - jagdCaseTask.setExpireTime(DateUtils.addDay(nowDate, dsrpjFlowNode.getExpire())); + if (jagdFlowNode.getExpire() != 0) { + jagdCaseTask.setExpireTime(DateUtils.addDay(nowDate, jagdFlowNode.getExpire())); } - jagdCaseTask.setHandleUnitId(dsrpjCaseTask.getCandeUnitId()); - jagdCaseTask.setHandleUnitName(dsrpjCaseTask.getCandeUnitName()); - jagdCaseTask.setHandleUserName("系统自动"); - jagdCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); + jagdCaseTask.setHandleUnitId(jasqCaseTaskList.get(0).getHandleUnitId()); + jagdCaseTask.setHandleUnitName(jasqCaseTaskList.get(0).getHandleUnitName()); + jagdCaseTask.setHandleDeptId(jasqCaseTaskList.get(0).getHandleDeptId()); + jagdCaseTask.setHandleDeptName(jasqCaseTaskList.get(0).getHandleDeptName()); + jagdCaseTask.setHandleUserId(jasqCaseTaskList.get(0).getHandleUserId()); + jagdCaseTask.setHandleUserName(jasqCaseTaskList.get(0).getHandleUserName()); + jagdCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); jagdCaseTask.setHandleTime(nowDate); jagdCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); jagdCaseTask.setCustId(dsrpjCaseTask.getCustId()); @@ -226,7 +234,7 @@ caseTaskService.save(jagdCaseTask); // 结束工作流流程 flowInfoService.completeTask(jagdCaseTask.getFlowableId(), jagdCaseTask.getProcessTaskId(), - FlowableConsts.OPERATION_jb_zszz, "系统自动"); + FlowableConsts.OPERATION_forward, jasqCaseTaskList.get(0).getHandleUserId()); // 更新纠纷信息 CaseInfo caseInfoPO = new CaseInfo(); caseInfoPO.setId(dsrpjCaseTask.getCaseId()); @@ -238,7 +246,6 @@ 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); @@ -258,44 +265,53 @@ 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.setHandleUserId(dsrpjCaseTask.getCandeUserId()); + dsrpjCaseTask.setHandleUserName(dsrpjCaseTask.getCandeUserName()); + dsrpjCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); + dsrpjCaseTask.setHandleIllust("规定时间内未评价"); dsrpjCaseTask.setHandleTime(nowDate); dsrpjCaseTask.setUpdateTime(nowDate); caseTaskService.updateCaseTask(dsrpjCaseTask); - // 完成当前当事人评价工作流任务 - FlowNode dsrpjFlowNode = flowInfoService.completeTask(dsrpjCaseTask.getFlowableId(), dsrpjCaseTask.getProcessTaskId(), + // 完成当前当事人评价工作流节点任务,进入结案归档节点 + FlowNode jagdFlowNode = 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.setFlowableId(jagdFlowNode.getFlowableId()); + jagdCaseTask.setProcessInstanceId(jagdFlowNode.getProcessInstanceId()); + jagdCaseTask.setProcessTaskId(jagdFlowNode.getProcessTaskId()); + jagdCaseTask.setNodeType(jagdFlowNode.getNodeType()); + jagdCaseTask.setNodeId(jagdFlowNode.getNodeId()); + jagdCaseTask.setNodeName(jagdFlowNode.getNodeName()); + jagdCaseTask.setFlowId(jagdFlowNode.getFlowId()); + jagdCaseTask.setNodeShowName(jagdFlowNode.getNodeShowName()); jagdCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); - // 通过调度的,任务候选执行者类型是上一步骤选择 - jagdCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); - jagdCaseTask.setCandeUnitId(dsrpjCaseTask.getCandeUnitId()); - jagdCaseTask.setCandeUnitName(dsrpjCaseTask.getCandeUnitName()); - // 系不需要签收 + // 任务所属单位:结案申请组织 + caseTaskQueryWrapper.clear(); + caseTaskQueryWrapper.eq("case_id", dsrpjCaseTask.getCaseId()) + .eq("node_id", FlowNodeEnum.FLOW_NODE_JASQ.getIndex()) + .eq("status", CaseTaskConsts.TASK_STATUS_2).orderByDesc("create_time"); + List<CaseTask> jasqCaseTaskList = caseTaskService.list(caseTaskQueryWrapper); + jagdCaseTask.setCandeUnitId(jasqCaseTaskList.get(0).getHandleUnitId()); + jagdCaseTask.setCandeUnitName(jasqCaseTaskList.get(0).getHandleUnitName()); + // 受理后的任务,不需要签收 jagdCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); jagdCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); // 任务处理时限 - if (dsrpjFlowNode.getExpire() != 0) { - jagdCaseTask.setExpireTime(DateUtils.addDay(nowDate, dsrpjFlowNode.getExpire())); + if (jagdFlowNode.getExpire() != 0) { + jagdCaseTask.setExpireTime(DateUtils.addDay(nowDate, jagdFlowNode.getExpire())); } - jagdCaseTask.setHandleUnitName("系统自动"); - jagdCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); + jagdCaseTask.setHandleUnitId(jasqCaseTaskList.get(0).getHandleUnitId()); + jagdCaseTask.setHandleUnitName(jasqCaseTaskList.get(0).getHandleUnitName()); + jagdCaseTask.setHandleDeptId(jasqCaseTaskList.get(0).getHandleDeptId()); + jagdCaseTask.setHandleDeptName(jasqCaseTaskList.get(0).getHandleDeptName()); + jagdCaseTask.setHandleUserId(jasqCaseTaskList.get(0).getHandleUserId()); + jagdCaseTask.setHandleUserName(jasqCaseTaskList.get(0).getHandleUserName()); + jagdCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); jagdCaseTask.setHandleTime(nowDate); jagdCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); jagdCaseTask.setCustId(dsrpjCaseTask.getCustId()); @@ -304,7 +320,7 @@ caseTaskService.save(jagdCaseTask); // 结束工作流流程 flowInfoService.completeTask(jagdCaseTask.getFlowableId(), jagdCaseTask.getProcessTaskId(), - FlowableConsts.OPERATION_jb_zszz, "系统自动"); + FlowableConsts.OPERATION_jb_zszz, jasqCaseTaskList.get(0).getHandleUserId()); // 更新纠纷信息 CaseInfo caseInfoPO = new CaseInfo(); caseInfoPO.setId(dsrpjCaseTask.getCaseId()); diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java index c063d22..633f0e4 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java @@ -235,6 +235,14 @@ //复制填装案件表 CaseInfo caseInfo = new CaseInfo(); BeanUtils.copyProperties(registerSaveDTO, caseInfo); + // 是否自行受理 + if (1 == registerSaveDTO.getIsSelfAccept()) { + // 是 + caseInfo.setZxslStatus(CaseBaseConsts.ZXSL_STATUS_1); + }else { + // 否 + caseInfo.setZxslStatus(CaseBaseConsts.ZXSL_STATUS_0); + } caseInfo.setUpdateTime(nowDate); // 常规登记-保存当事人 diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CasePersonService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CasePersonService.java index b4f686f..6092625 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CasePersonService.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CasePersonService.java @@ -4,12 +4,15 @@ import cn.huge.base.common.utils.DateUtils; import cn.huge.base.common.utils.IdUtils; import cn.huge.base.common.utils.ObjectUtils; +import cn.huge.module.cases.domain.dto.EvaluatePersonDTO; import cn.huge.module.cases.domain.po.CaseAgent; import cn.huge.module.client.api.impl.UtilsClientImpl; import cn.huge.module.cases.dao.mapper.CasePersonMapper; import cn.huge.module.cases.domain.po.CasePerson; +import cn.huge.module.mediate.constant.CaseBaseConstsEnum; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import lombok.extern.slf4j.Slf4j; @@ -150,4 +153,39 @@ public List<CasePerson> listByCertiNo(String certiNo){ return mapper.listByCertiNo(certiNo); } + + /** + * 根据纠纷编号和当事人类型查询 + * @param caseId + * @param perType + * @return List<CasePerson> + */ + public List<CasePerson> listIdByCaseIdAndType(String caseId, String perType){ + QueryWrapper<CasePerson> casePersonQueryWrapper = new QueryWrapper<>(); + casePersonQueryWrapper.eq("case_id", caseId).eq("per_type", perType).orderByAsc("create_time"); + return mapper.selectList(casePersonQueryWrapper); + } + + + /** + * 获取当事人评价的人信息 + * @param caseId + * @return + */ + public EvaluatePersonDTO getEvaluatePerson(String caseId){ + EvaluatePersonDTO evaluatePersonDTO = new EvaluatePersonDTO(); + QueryWrapper<CasePerson> casePersonQueryWrapper = new QueryWrapper<>(); + casePersonQueryWrapper.eq("case_id", caseId).eq("per_type", CaseBaseConstsEnum.PERSON_TYPE_1.getIndex()).orderByAsc("create_time"); + List<CasePerson> casePersonList = mapper.selectList(casePersonQueryWrapper); + CasePerson casePerson = casePersonList.get(0); + if (StringUtils.isNotEmpty(casePerson.getPartyUserId())){ + evaluatePersonDTO.setId(casePerson.getId()); + } + if (CaseBaseConstsEnum.PERSON_CLASS_1.getIndex().equals(casePerson.getPerClass())){ + evaluatePersonDTO.setName(casePerson.getTrueName()+"(当事人)"); + }else { + evaluatePersonDTO.setName(casePerson.getDeputy()+"(当事人)"); + } + return evaluatePersonDTO; + } } 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 d9fad61..1857f72 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 @@ -3,7 +3,6 @@ import cn.huge.base.common.exception.ServiceException; import cn.huge.base.common.utils.DateUtils; import cn.huge.base.common.utils.IdUtils; -import cn.huge.module.cases.dao.mapper.*; import cn.huge.module.cases.domain.dto.*; import cn.huge.base.common.utils.ObjectUtils; import cn.huge.module.cases.domain.dto.WebCaseFlowDTO; @@ -12,6 +11,7 @@ import cn.huge.module.cases.domain.po.CaseAssistApply; import cn.huge.module.cases.domain.po.CaseInfoUnfold; import cn.huge.module.cases.domain.po.*; +import cn.huge.module.cases.utils.TaskUsetimeUtils; import cn.huge.module.client.api.impl.CustClientImpl; import cn.huge.module.client.api.impl.DispClientImpl; import cn.huge.module.client.api.impl.SysClientImpl; @@ -22,7 +22,6 @@ 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; @@ -103,6 +102,8 @@ private CaseDismissService caseDismissService; @Autowired private CasedraftInfoService casedraftInfoService; + @Autowired + private CasePersonService casePersonService; /** * 更新对象 @@ -195,12 +196,12 @@ } /** - * 根据纠纷编号查询进行中的配合部门任务 + * 根据纠纷编号查询进行中的配合组织任务 * @param caseId * @return */ public List<CaseTask> listAssistTasking(String caseId){ - // 查询配合部门的任务 + // 查询配合组织的任务 QueryWrapper<CaseTask> caseTaskQueryWrapper = new QueryWrapper<>(); caseTaskQueryWrapper.eq("case_task_type", CaseTaskConsts.CASE_TASK_TYPE_2).eq("case_id", caseId) .eq("status", CaseTaskConsts.TASK_STATUS_1); @@ -465,6 +466,12 @@ */ public Map<String, Object> webListCaseFlow(String caseId, String userId){ try{ + // 流程标签展示,1:正常流转/审核同意(√),2:回退/审核不同意(←),3:上报申请(↑),4:不予受理(x) + int SHOW_TASK_TYPE_1 = 1; + int SHOW_TASK_TYPE_2 = 2; + int SHOW_TASK_TYPE_3 = 3; + int SHOW_TASK_TYPE_4 = 4; + Map<String, Object> result = Maps.newHashMap(); LinkedList<WebCaseFlowDTO> handleCaseFlowList = new LinkedList<>(); // 首节点 @@ -478,7 +485,7 @@ lfdj.setNodeShowName(caseInfo.getCanalName()); lfdj.setHandleUnitName(caseInfo.getInputUserName()+"(当事人)"); } - lfdj.setTaskType(CaseTaskConsts.TASK_TYPE_1); + lfdj.setTaskType(SHOW_TASK_TYPE_1); lfdj.setStatus(CaseTaskConsts.TASK_STATUS_2); lfdj.setHandleTime(new Date()); handleCaseFlowList.add(lfdj); @@ -494,36 +501,39 @@ || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_DSL.getIndex()) || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_DSL.getIndex()) || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSL.getIndex())){ - if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.TASK_TYPE_1 == caseTask.getTaskType()){ + if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.HANDLE_RESULT_0 == caseTask.getHandleResult()){ WebCaseFlowDTO slWebCaseFlowDTO = new WebCaseFlowDTO(); slWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); slWebCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); slWebCaseFlowDTO.setHandleUserName(caseTask.getSignUserName()); slWebCaseFlowDTO.setHandleTime(caseTask.getSignTime()); slWebCaseFlowDTO.setHandleNotes("已签收"); - slWebCaseFlowDTO.setTaskType(caseTask.getTaskType()); + slWebCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_1); slWebCaseFlowDTO.setStatus(caseTask.getStatus()); handleCaseFlowList.add(slWebCaseFlowDTO); } } // 普通节点 WebCaseFlowDTO webCaseFlowDTO = new WebCaseFlowDTO(); + webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_1); webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); webCaseFlowDTO.setHandleTime(caseTask.getHandleTime()); webCaseFlowDTO.setStatus(caseTask.getStatus()); webCaseFlowDTO.setHandleNotes(caseTask.getHandleIllust()); - webCaseFlowDTO.setTaskType(caseTask.getTaskType()); // 当事人评价/结案归档节点,特殊处理 - if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex()) - || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_JAGD.getIndex())){ + if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){ webCaseFlowDTO.setHandleUserName(null); webCaseFlowDTO.setHandleUnitName(caseTask.getHandleUserName()); + }else if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_JAGD.getIndex())){ + webCaseFlowDTO.setHandleUserName(null); + webCaseFlowDTO.setHandleUnitName("系统自动"); }else{ webCaseFlowDTO.setHandleUserName(caseTask.getHandleUserName()); webCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName()); } // 回退申请节点 - if(CaseTaskConsts.TASK_TYPE_2 == caseTask.getTaskType()){ + if(CaseTaskConsts.HANDLE_RESULT_4 == caseTask.getHandleResult()){ + webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_2); webCaseFlowDTO.setNodeShowName("事件回退"); CaseReturn caseReturn = caseReturnService.getNewByCaseId(caseId, caseTask.getCaseTaskType()); if (StringUtils.isNotEmpty(caseReturn.getReturnContent())) { @@ -534,7 +544,8 @@ } } // 上报申请节点 - if(CaseTaskConsts.TASK_TYPE_3 == caseTask.getTaskType()){ + if(CaseTaskConsts.HANDLE_RESULT_5 == caseTask.getHandleResult()){ + webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_3); webCaseFlowDTO.setNodeShowName("事件上报"); CaseAppear caseAppear = caseAppearService.getNewByCaseId(caseId); if (StringUtils.isNotEmpty(caseAppear.getAppearContent())) { @@ -550,13 +561,13 @@ || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_HTSH.getIndex()) || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_SBSH.getIndex()) || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_HTSH.getIndex())){ - // 处理不通过,任务类型就是回退 + // 审核不通过 if (CaseTaskConsts.HANDLE_RESULT_2 == caseTask.getHandleResult()) { + webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_2); webCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_2.getIndex()); webCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_2.getDes()); - webCaseFlowDTO.setTaskType(CaseTaskConsts.TASK_TYPE_2); }else{ - // 处理通过 + // 审核通过 webCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex()); webCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_1.getDes()); } @@ -575,9 +586,9 @@ } // 不予受理 if (CaseTaskConsts.HANDLE_RESULT_3 == caseTask.getHandleResult()){ + webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_4); webCaseFlowDTO.setNodeShowName("不予受理"); webCaseFlowDTO.setHandleNotes(null); - webCaseFlowDTO.setTaskType(CaseTaskConsts.TASK_TYPE_4); } handleCaseFlowList.add(webCaseFlowDTO); }else { @@ -587,14 +598,14 @@ || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_DSL.getIndex()) || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_DSL.getIndex()) || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSL.getIndex())){ - if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.TASK_TYPE_1 == caseTask.getTaskType()){ + if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.HANDLE_RESULT_0 == caseTask.getHandleResult()){ WebCaseFlowDTO slWebCaseFlowDTO = new WebCaseFlowDTO(); + slWebCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_1); slWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); slWebCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); slWebCaseFlowDTO.setHandleUserName(caseTask.getSignUserName()); slWebCaseFlowDTO.setHandleTime(caseTask.getSignTime()); slWebCaseFlowDTO.setHandleNotes("已签收"); - slWebCaseFlowDTO.setTaskType(caseTask.getTaskType()); slWebCaseFlowDTO.setStatus(CaseTaskConsts.TASK_STATUS_2); handleCaseFlowList.add(slWebCaseFlowDTO); } @@ -628,8 +639,23 @@ webAssistCaseFlowDTO.setUnitName(caseAssistInfo.getAssistUnitName()+"(已回退)"); } LinkedList<WebCaseFlowDTO> caseFlowList = new LinkedList<>(); + // 首节点 + WebCaseFlowDTO lfdjAssist = new WebCaseFlowDTO(); + if (CaseBaseConstsEnum.CASE_CANAL_1.getIndex().equals(caseInfo.getCanal())){ + lfdjAssist.setNodeShowName("来访登记"); + lfdjAssist.setHandleUserName(caseInfo.getInputUserName()); + lfdjAssist.setHandleUnitName(caseInfo.getInputUnitName()); + }else { + lfdjAssist.setNodeShowName(caseInfo.getCanalName()); + lfdjAssist.setHandleUnitName(caseInfo.getInputUserName()+"(当事人)"); + } + lfdjAssist.setTaskType(SHOW_TASK_TYPE_1); + lfdjAssist.setStatus(CaseTaskConsts.TASK_STATUS_2); + lfdjAssist.setHandleTime(new Date()); + caseFlowList.add(lfdjAssist); + // 查询其他节点 caseTaskQueryWrapper.clear(); - caseTaskQueryWrapper.eq("case_id", caseId).eq("cande_unit_id", caseAssistInfo.getAssistUnitId()) + caseTaskQueryWrapper.eq("case_id", caseId).eq("process_instance_id", caseAssistInfo.getProcessInstanceId()) .eq("case_task_type", CaseTaskConsts.CASE_TASK_TYPE_2).orderByAsc("id"); List<CaseTask> assistCaseTaskList = mapper.selectList(caseTaskQueryWrapper); for (CaseTask caseTask: assistCaseTaskList){ @@ -640,47 +666,50 @@ || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_DSL.getIndex()) || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_DSL.getIndex()) || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSL.getIndex())){ - if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.TASK_TYPE_1 == caseTask.getTaskType()){ + if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.HANDLE_RESULT_0 == caseTask.getHandleResult()){ WebCaseFlowDTO slWebCaseFlowDTO = new WebCaseFlowDTO(); + slWebCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_1); slWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); slWebCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); slWebCaseFlowDTO.setHandleUserName(caseTask.getSignUserName()); slWebCaseFlowDTO.setHandleTime(caseTask.getSignTime()); slWebCaseFlowDTO.setHandleNotes("已签收"); - slWebCaseFlowDTO.setTaskType(caseTask.getTaskType()); slWebCaseFlowDTO.setStatus(caseTask.getStatus()); caseFlowList.add(slWebCaseFlowDTO); } } // 普通节点 WebCaseFlowDTO webCaseFlowDTO = new WebCaseFlowDTO(); + webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_1); webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); webCaseFlowDTO.setHandleTime(caseTask.getHandleTime()); webCaseFlowDTO.setStatus(caseTask.getStatus()); webCaseFlowDTO.setHandleNotes(caseTask.getHandleIllust()); - webCaseFlowDTO.setTaskType(caseTask.getTaskType()); // 当事人评价/结案归档节点,特殊处理 - if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex()) - || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_JAGD.getIndex())){ + if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){ webCaseFlowDTO.setHandleUserName(null); webCaseFlowDTO.setHandleUnitName(caseTask.getHandleUserName()); + }else if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_JAGD.getIndex())){ + webCaseFlowDTO.setHandleUserName(null); + webCaseFlowDTO.setHandleUnitName("系统自动"); }else{ webCaseFlowDTO.setHandleUserName(caseTask.getHandleUserName()); webCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName()); } // 回退申请节点 - if(CaseTaskConsts.TASK_TYPE_2 == caseTask.getTaskType()){ + if(CaseTaskConsts.HANDLE_RESULT_4 == caseTask.getHandleResult()){ + webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_2); webCaseFlowDTO.setNodeShowName("事件回退"); CaseReturn caseReturn = caseReturnService.getNewByCaseId(caseId, caseTask.getCaseTaskType()); if (StringUtils.isNotEmpty(caseReturn.getReturnContent())) { webCaseFlowDTO.setHandleNotes("回退理由:" + caseReturn.getReturnContent()); }else { webCaseFlowDTO.setHandleNotes("回退理由:-"); - } } // 上报申请节点 - if(CaseTaskConsts.TASK_TYPE_3 == caseTask.getTaskType()){ + if(CaseTaskConsts.HANDLE_RESULT_5 == caseTask.getHandleResult()){ + webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_3); webCaseFlowDTO.setNodeShowName("事件上报"); CaseAppear caseAppear = caseAppearService.getNewByCaseId(caseId); if (StringUtils.isNotEmpty(caseAppear.getAppearContent())) { @@ -696,13 +725,13 @@ || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_HTSH.getIndex()) || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_SBSH.getIndex()) || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_HTSH.getIndex())){ - // 处理不通过,任务类型就是回退 + // 审核不通过 if (CaseTaskConsts.HANDLE_RESULT_2 == caseTask.getHandleResult()) { + webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_2); webCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_2.getIndex()); webCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_2.getDes()); - webCaseFlowDTO.setTaskType(CaseTaskConsts.TASK_TYPE_2); }else{ - // 处理通过 + // 审核通过 webCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex()); webCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_1.getDes()); } @@ -727,14 +756,14 @@ || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_DSL.getIndex()) || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_DSL.getIndex()) || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSL.getIndex())){ - if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.TASK_TYPE_1 == caseTask.getTaskType()){ + if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.HANDLE_RESULT_0 == caseTask.getHandleResult()){ WebCaseFlowDTO slWebCaseFlowDTO = new WebCaseFlowDTO(); slWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); slWebCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); slWebCaseFlowDTO.setHandleUserName(caseTask.getSignUserName()); slWebCaseFlowDTO.setHandleTime(caseTask.getSignTime()); slWebCaseFlowDTO.setHandleNotes("已签收"); - slWebCaseFlowDTO.setTaskType(caseTask.getTaskType()); + slWebCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_1); slWebCaseFlowDTO.setStatus(CaseTaskConsts.TASK_STATUS_2); caseFlowList.add(slWebCaseFlowDTO); } @@ -1116,33 +1145,31 @@ // 目前平台只做镇街、村居级别的调度, if (UserBaseConsts.UNIT_GRADE_3 == caseDispBaseDTO.getTargetUnitGrade()) { // 启动来访登记工作流 - FlowNode firstFlowNode = flowInfoService.startFlow(FlowableConsts.FLOWABLE_ID_LFDJ, caseInfo.getId()); + FlowNode firstFlowNode = flowInfoService.startFlow(FlowableConsts.getJbFlow(caseInfo.getCanal()), caseInfo.getId()); if (UserBaseConsts.UNIT_TYPE_1 == caseDispBaseDTO.getTargetUnitType()){ - // 调度给镇街综治中心,进入第1个节点-镇街综治中心待分派 + // 调度给镇街综治中心,进入第1个任务节点-镇街综治中心待分派 CaseTask dfpCaseTask = new CaseTask(); dfpCaseTask.setId(utilsClient.getNewTimeId()); dfpCaseTask.setCaseId(caseInfo.getId()); dfpCaseTask.setFlowableId(firstFlowNode.getFlowableId()); dfpCaseTask.setProcessInstanceId(firstFlowNode.getProcessInstanceId()); dfpCaseTask.setProcessTaskId(firstFlowNode.getProcessTaskId()); - dfpCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); dfpCaseTask.setNodeType(firstFlowNode.getNodeType()); dfpCaseTask.setNodeId(firstFlowNode.getNodeId()); dfpCaseTask.setNodeName(firstFlowNode.getNodeName()); dfpCaseTask.setFlowId(firstFlowNode.getFlowId()); dfpCaseTask.setNodeShowName(firstFlowNode.getNodeShowName()); dfpCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); - // 通过调度的,任务候选执行者类型是上一步骤选择 - dfpCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + // 任务所属组织:调度目标 dfpCaseTask.setCandeUnitId(caseDispBaseDTO.getTargetId()); dfpCaseTask.setCandeUnitName(caseDispBaseDTO.getTargetName()); - // 系统给综治中心分派,不需要签收 + // 系统调度给镇街综治中心,不需要签收 dfpCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); - dfpCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); // 任务处理时限 if (firstFlowNode.getExpire() != 0) { dfpCaseTask.setExpireTime(DateUtils.addDay(caseInfo.getCreateTime(), firstFlowNode.getExpire())); } + dfpCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); dfpCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); dfpCaseTask.setCustId(caseInfo.getCustId()); dfpCaseTask.setCreateTime(caseInfo.getCreateTime()); @@ -1159,57 +1186,58 @@ caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes()); caseInfoService.updateCaseInfo(caseInfoPO); }else { - // 调度给调解组织,默认通过第1个节点-镇街综治中心待分派 + // 调度给调解组织,默认通过第1个任务节点-镇街综治中心待分派 CaseTask dfpCaseTask = new CaseTask(); dfpCaseTask.setId(utilsClient.getNewTimeId()); dfpCaseTask.setCaseId(caseInfo.getId()); dfpCaseTask.setFlowableId(firstFlowNode.getFlowableId()); dfpCaseTask.setProcessInstanceId(firstFlowNode.getProcessInstanceId()); dfpCaseTask.setProcessTaskId(firstFlowNode.getProcessTaskId()); - dfpCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); dfpCaseTask.setNodeType(firstFlowNode.getNodeType()); dfpCaseTask.setNodeId(firstFlowNode.getNodeId()); dfpCaseTask.setNodeName(firstFlowNode.getNodeName()); dfpCaseTask.setFlowId(firstFlowNode.getFlowId()); dfpCaseTask.setNodeShowName(firstFlowNode.getNodeShowName()); dfpCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); - // 通过调度的,任务候选执行者类型是上一步骤选择 - dfpCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); - // 系统给综治中心分派,不需要签收 + // 任务所属组织:系统 + dfpCaseTask.setCandeUnitName("系统派单"); + // 调度给调解组织,不需要签收 dfpCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); - dfpCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); // 任务处理时限 if (firstFlowNode.getExpire() != 0) { dfpCaseTask.setExpireTime(DateUtils.addDay(caseInfo.getCreateTime(), firstFlowNode.getExpire())); } + dfpCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); dfpCaseTask.setHandleUnitName("系统派单"); - dfpCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); + dfpCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); dfpCaseTask.setHandleIllust("派单至:"+caseDispBaseDTO.getTargetName()); dfpCaseTask.setHandleTime(caseInfo.getCreateTime()); dfpCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); dfpCaseTask.setCustId(caseInfo.getCustId()); dfpCaseTask.setCreateTime(caseInfo.getCreateTime()); dfpCaseTask.setUpdateTime(caseInfo.getCreateTime()); + // 计算任务耗时、是否超时、超时多少 + dfpCaseTask.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(dfpCaseTask.getHandleTime(), dfpCaseTask.getCreateTime())); + dfpCaseTask.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(dfpCaseTask.getHandleTime(), dfpCaseTask.getExpireTime())); + dfpCaseTask.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(dfpCaseTask.getHandleTime(), dfpCaseTask.getExpireTime())); mapper.insert(dfpCaseTask); - // 完成第1个节点任务 + // 完成第1个工作流节点任务,进入第2个节点任务 FlowNode secondFlowNode = flowInfoService.completeTask(dfpCaseTask.getFlowableId(), dfpCaseTask.getProcessTaskId(), FlowableConsts.OPERATION_jb_zszz, "系统派单"); - // 进入第2个节点-镇街级组织待受理 + // 创建第2个节点任务-调解组织待受理 CaseTask dslCaseTask = new CaseTask(); dslCaseTask.setId(utilsClient.getNewTimeId()); dslCaseTask.setCaseId(caseInfo.getId()); dslCaseTask.setFlowableId(secondFlowNode.getFlowableId()); dslCaseTask.setProcessInstanceId(secondFlowNode.getProcessInstanceId()); dslCaseTask.setProcessTaskId(secondFlowNode.getProcessTaskId()); - dslCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); dslCaseTask.setNodeType(secondFlowNode.getNodeType()); dslCaseTask.setNodeId(secondFlowNode.getNodeId()); dslCaseTask.setNodeName(secondFlowNode.getNodeName()); dslCaseTask.setFlowId(secondFlowNode.getFlowId()); dslCaseTask.setNodeShowName(secondFlowNode.getNodeShowName()); dslCaseTask.setCaseTaskType(dfpCaseTask.getCaseTaskType()); - // 通过调度的,任务候选执行者类型是上一步骤选择 - dslCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + // 任务所属组织:调度目标 dslCaseTask.setCandeUnitId(caseDispBaseDTO.getTargetId()); dslCaseTask.setCandeUnitName(caseDispBaseDTO.getTargetName()); // 系统调度给调解组织,需要签收 @@ -1251,73 +1279,75 @@ */ public String webStartFlowZXSL(CaseInfo caseInfo, CtUserDTO loginUser){ try{ - // 启动自行受理工作流,进入待受理节点 - FlowNode dslFlowNode = flowInfoService.startFlow(FlowableConsts.FLOWABLE_ID_ZXSL, caseInfo.getId()); - // 创建并完成待受理任务 + // 启动自行受理工作流,进入待受理任务节点 + FlowNode dslFlowNode = flowInfoService.startFlow(FlowableConsts.getZxslFlow(caseInfo.getCanal()), caseInfo.getId()); + // 创建并完成待受理节点任务 CaseTask dslCaseTask = new CaseTask(); dslCaseTask.setId(utilsClient.getNewTimeId()); dslCaseTask.setCaseId(caseInfo.getId()); dslCaseTask.setFlowableId(dslFlowNode.getFlowableId()); dslCaseTask.setProcessInstanceId(dslFlowNode.getProcessInstanceId()); dslCaseTask.setProcessTaskId(dslFlowNode.getProcessTaskId()); - dslCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); dslCaseTask.setNodeType(dslFlowNode.getNodeType()); dslCaseTask.setNodeId(dslFlowNode.getNodeId()); dslCaseTask.setNodeName(dslFlowNode.getNodeName()); dslCaseTask.setFlowId(dslFlowNode.getFlowId()); dslCaseTask.setNodeShowName(dslFlowNode.getNodeShowName()); dslCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); - // 自行受理,任务候选执行者类型是上一步骤选择 - dslCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + // 任务所属组织:当前登记组织 dslCaseTask.setCandeUnitId(loginUser.getUnitId()); dslCaseTask.setCandeUnitName(loginUser.getUnitName()); // 自行受理,不需要签收 dslCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); - dslCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); // 任务处理时限 if (dslFlowNode.getExpire() != 0) { dslCaseTask.setExpireTime(DateUtils.addDay(caseInfo.getCreateTime(), dslFlowNode.getExpire())); } + dslCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); dslCaseTask.setHandleUnitId(loginUser.getUnitId()); dslCaseTask.setHandleUnitName(loginUser.getUnitName()); + dslCaseTask.setHandleDeptId(loginUser.getDeptId()); + dslCaseTask.setHandleDeptName(loginUser.getDeptName()); dslCaseTask.setHandleUserId(loginUser.getId()); dslCaseTask.setHandleUserName(loginUser.getTrueName()); - dslCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); + dslCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); dslCaseTask.setHandleIllust("自行受理"); dslCaseTask.setHandleTime(caseInfo.getCreateTime()); dslCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); dslCaseTask.setCustId(caseInfo.getCustId()); dslCaseTask.setCreateTime(caseInfo.getCreateTime()); dslCaseTask.setUpdateTime(caseInfo.getCreateTime()); + // 计算任务耗时、是否超时、超时多少 + dslCaseTask.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(dslCaseTask.getHandleTime(), dslCaseTask.getCreateTime())); + dslCaseTask.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(dslCaseTask.getHandleTime(), dslCaseTask.getExpireTime())); + dslCaseTask.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(dslCaseTask.getHandleTime(), dslCaseTask.getExpireTime())); mapper.insert(dslCaseTask); - // 完成待受理任务,走办理反馈节点 + // 完成待受理工作流节点任务,进入办理反馈任务节点 FlowNode blfkFlowNode = flowInfoService.completeTask(dslCaseTask.getFlowableId(), dslCaseTask.getProcessTaskId(), FlowableConsts.OPERATION_forward, loginUser.getId()); - // 进入第1个节点-办理反馈 + // 创建办理反馈节点任务 CaseTask blfkCaseTask = new CaseTask(); blfkCaseTask.setId(utilsClient.getNewTimeId()); blfkCaseTask.setCaseId(caseInfo.getId()); blfkCaseTask.setFlowableId(blfkFlowNode.getFlowableId()); blfkCaseTask.setProcessInstanceId(blfkFlowNode.getProcessInstanceId()); blfkCaseTask.setProcessTaskId(blfkFlowNode.getProcessTaskId()); - blfkCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); blfkCaseTask.setNodeType(blfkFlowNode.getNodeType()); blfkCaseTask.setNodeId(blfkFlowNode.getNodeId()); blfkCaseTask.setNodeName(blfkFlowNode.getNodeName()); blfkCaseTask.setFlowId(blfkFlowNode.getFlowId()); blfkCaseTask.setNodeShowName(blfkFlowNode.getNodeShowName()); blfkCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); - // 通过调度的,任务候选执行者类型是上一步骤选择 - blfkCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + // 任务所属组织:当前登记组织 blfkCaseTask.setCandeUnitId(loginUser.getUnitId()); blfkCaseTask.setCandeUnitName(loginUser.getUnitName()); - // 系统给综治中心分派,不需要签收 + // 受理后的节点任务节点,不需要签收 blfkCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); - blfkCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); // 任务处理时限 if (blfkFlowNode.getExpire() != 0) { blfkCaseTask.setExpireTime(DateUtils.addDay(caseInfo.getCreateTime(), blfkFlowNode.getExpire())); } + blfkCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); blfkCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); blfkCaseTask.setCustId(caseInfo.getCustId()); blfkCaseTask.setCreateTime(caseInfo.getCreateTime()); @@ -1357,22 +1387,28 @@ Date nowDate = DateUtils.getNowDate(); // 获取当前登录用户 CtUserDTO loginUser = custClient.clientGetUserAll(userId); - // 查询当前任务 + // 查询当前节点任务 CaseTask caseTask = mapper.selectById(caseDismiss.getCaseTaskId()); - // 结束当前任务 + // 结束当前节点任务 CaseTask caseTaskPO = new CaseTask(); caseTaskPO.setId(caseDismiss.getCaseTaskId()); caseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); caseTaskPO.setHandleUnitId(loginUser.getUnitId()); caseTaskPO.setHandleUnitName(loginUser.getUnitName()); caseTaskPO.setHandleUserId(loginUser.getId()); + caseTaskPO.setHandleDeptId(loginUser.getDeptId()); + caseTaskPO.setHandleDeptName(loginUser.getDeptName()); caseTaskPO.setHandleUserName(loginUser.getTrueName()); caseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_3); caseTaskPO.setHandleContent(caseDismiss.getDisContent()); caseTaskPO.setHandleTime(nowDate); caseTaskPO.setUpdateTime(nowDate); + // 计算任务耗时、是否超时、超时多少 + caseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(caseTaskPO.getHandleTime(), caseTask.getCreateTime())); + caseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(caseTaskPO.getHandleTime(), caseTask.getExpireTime())); + caseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(caseTaskPO.getHandleTime(), caseTask.getExpireTime())); mapper.updateCaseTask(caseTaskPO); - // 结束当前工作流任务 + // 结束当前工作流 flowInfoService.endFlow(caseTask.getProcessInstanceId()); // 更新纠纷信息 CaseInfo caseInfoPO = new CaseInfo(); @@ -1385,20 +1421,26 @@ caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes()); caseInfoPO.setUpdateTime(nowDate); caseInfoService.updateCaseInfo(caseInfoPO); - // 有配合部门,也结束配合部门工作流程 + // 有配合组织,也结束配合组织工作流 List<CaseTask> assistCaseTaskList = this.listAssistTasking(caseDismiss.getCaseId()); for (CaseTask assistCaseTask: assistCaseTaskList){ - // 完成配合部门当前任务 + // 完成配合组织当前节点任务 assistCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); assistCaseTask.setHandleUnitId(loginUser.getUnitId()); - assistCaseTask.setHandleUnitName(loginUser.getUnitName()); + assistCaseTask.setHandleUnitName(loginUser.getUnitName()+"(承办部门)"); + assistCaseTask.setHandleDeptId(loginUser.getDeptId()); + assistCaseTask.setHandleDeptName(loginUser.getDeptName()+"(承办部门)"); assistCaseTask.setHandleUserId(loginUser.getId()); - assistCaseTask.setHandleUserName(loginUser.getTrueName()); - assistCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); + assistCaseTask.setHandleUserName(loginUser.getTrueName()+"(承办部门)"); + assistCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_3); assistCaseTask.setHandleTime(nowDate); assistCaseTask.setUpdateTime(nowDate); + // 计算任务耗时、是否超时、超时多少 + assistCaseTask.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(assistCaseTask.getHandleTime(), assistCaseTask.getCreateTime())); + assistCaseTask.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(assistCaseTask.getHandleTime(), assistCaseTask.getExpireTime())); + assistCaseTask.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(assistCaseTask.getHandleTime(), assistCaseTask.getExpireTime())); mapper.updateCaseTask(assistCaseTask); - // 结束配合部门当前工作流任务 + // 结束配合组织当前工作流 flowInfoService.endFlow(assistCaseTask.getProcessInstanceId()); } // 新增不予受理信息 @@ -1429,31 +1471,38 @@ Date nowDate = DateUtils.getNowDate(); // 获取当前登录用户 CtUserDTO loginUser = custClient.clientGetUserAll(userId); - // 查询当前待分派任务 + // 查询交办的组织信息 + CtUnitDTO dslUnitDTO = custClient.getUnitById(assignTaskDTO.getHandleUnitId()); + // 查询当前待分派节点任务 CaseTask dfpCaseTask = mapper.selectById(assignTaskDTO.getCaseTaskId()); - // 完成当前待分派任务 + // 完成当前待分派节点任务 CaseTask dfpCaseTaskPO = new CaseTask(); dfpCaseTaskPO.setId(assignTaskDTO.getCaseTaskId()); dfpCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); dfpCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); dfpCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); + dfpCaseTaskPO.setHandleDeptId(loginUser.getDeptId()); + dfpCaseTaskPO.setHandleDeptName(loginUser.getDeptName()); dfpCaseTaskPO.setHandleUserId(loginUser.getId()); dfpCaseTaskPO.setHandleUserName(loginUser.getTrueName()); - dfpCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); + dfpCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); dfpCaseTaskPO.setHandleContent(assignTaskDTO.getAssignContent()); dfpCaseTaskPO.setHandleIllust("派单至:"+assignTaskDTO.getHandleUnitName()); dfpCaseTaskPO.setHandleTime(nowDate); dfpCaseTaskPO.setUpdateTime(nowDate); + // 计算任务耗时、是否超时、超时多少 + dfpCaseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(dfpCaseTaskPO.getHandleTime(), dfpCaseTask.getCreateTime())); + dfpCaseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(dfpCaseTaskPO.getHandleTime(), dfpCaseTask.getExpireTime())); + dfpCaseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(dfpCaseTaskPO.getHandleTime(), dfpCaseTask.getExpireTime())); mapper.updateCaseTask(dfpCaseTaskPO); - // 查询承办组织信息 - CtUnitDTO dslUnitDTO = custClient.getUnitById(assignTaskDTO.getHandleUnitId()); String flowOperation = null; - // 镇街综治中心待分派 + // 镇街综治中心待分派节点 if (FlowNodeEnum.FLOW_NODE_ZJ_DFP.getIndex().equals(dfpCaseTask.getNodeId())){ flowOperation = FlowableConsts.OPERATION_jb_zszz; } - // 区综治中心待分派 + // 区综治中心待分派节点 if (FlowNodeEnum.FLOW_NODE_QJ_DFP.getIndex().equals(dfpCaseTask.getNodeId())){ + // 查询承办组织信息 if (UserBaseConsts.UNIT_GRADE_2 == dslUnitDTO.getUnitGrade()) { flowOperation = FlowableConsts.OPERATION_jb_zszz; }else { @@ -1461,7 +1510,7 @@ } } - // 市综治中心待分派 + // 市综治中心待分派节点 if (FlowNodeEnum.FLOW_NODE_SJ_DFP.getIndex().equals(dfpCaseTask.getNodeId())){ if (UserBaseConsts.UNIT_GRADE_1 == dslUnitDTO.getUnitGrade()) { flowOperation = FlowableConsts.OPERATION_jb_zszz; @@ -1470,35 +1519,33 @@ } } - // 完成当前待分派工作流任务 + // 完成当前待分派工作流节点任务,进入待受理任务节点 FlowNode newFlowNode = flowInfoService.completeTask(dfpCaseTask.getFlowableId(), dfpCaseTask.getProcessTaskId(), flowOperation, userId); - // 新建待受理任务 + // 新建待受理节点任务 CaseTask dslCaseTask = new CaseTask(); dslCaseTask.setId(utilsClient.getNewTimeId()); dslCaseTask.setCaseId(dfpCaseTask.getCaseId()); dslCaseTask.setFlowableId(newFlowNode.getFlowableId()); dslCaseTask.setProcessInstanceId(newFlowNode.getProcessInstanceId()); dslCaseTask.setProcessTaskId(newFlowNode.getProcessTaskId()); - dslCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); dslCaseTask.setNodeType(newFlowNode.getNodeType()); dslCaseTask.setNodeId(newFlowNode.getNodeId()); dslCaseTask.setNodeName(newFlowNode.getNodeName()); dslCaseTask.setFlowId(newFlowNode.getFlowId()); dslCaseTask.setNodeShowName(newFlowNode.getNodeShowName()); dslCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); - // 受理任务,任务候选执行者类型是上一步骤选择 - dslCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + // 任务所属组织:交办的组织 dslCaseTask.setCandeUnitId(dslUnitDTO.getId()); dslCaseTask.setCandeUnitName(dslUnitDTO.getUnitName()); - // 分派的任务,需要签收 + // 交办的待受理节点任务,需要签收 dslCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_1); dslCaseTask.setSignExpireTime(sysClient.getExpireTime(nowDate, SyTimeEnum.SY_TIME_2.getIndex())); - dslCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); // 任务处理时限 if (newFlowNode.getExpire() != 0) { dslCaseTask.setExpireTime(DateUtils.addDay(nowDate, newFlowNode.getExpire())); } + dslCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); dslCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); dslCaseTask.setCustId(dfpCaseTask.getCustId()); dslCaseTask.setCreateTime(nowDate); @@ -1515,7 +1562,8 @@ caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes()); caseInfoPO.setUpdateTime(nowDate); caseInfoService.updateCaseInfo(caseInfoPO); - // 分派配合组织 + + // 交办配合组织 if (CollectionUtils.isNotEmpty(assignTaskDTO.getAssistUnitList())){ // 拼接配合组织编号和名称 String assistUnitId = assignTaskDTO.getAssistUnitList().stream().map(AssignAssistUnitDTO::getUitId). @@ -1524,30 +1572,30 @@ collect(Collectors.joining(BaseConsts.COMMA)); for (AssignAssistUnitDTO assignAssistUnitDTO: assignTaskDTO.getAssistUnitList()){ // 启动联合处置工作流 - FlowNode lhczdfpFlowNode = flowInfoService.startFlow(FlowableConsts.FLOWABLE_ID_LHCZ, dfpCaseTask.getCaseId()); - // 新建并完成配合部门待分派任务 + FlowNode lhczdfpFlowNode = flowInfoService.startFlow(FlowableConsts.GZDYH_LHCZ_V1, dfpCaseTask.getCaseId()); + // 新建并完成待分派节点任务 CaseTask lhczdfpCaseTask = new CaseTask(); lhczdfpCaseTask.setId(utilsClient.getNewTimeId()); lhczdfpCaseTask.setCaseId(dfpCaseTask.getCaseId()); lhczdfpCaseTask.setFlowableId(lhczdfpFlowNode.getFlowableId()); lhczdfpCaseTask.setProcessInstanceId(lhczdfpFlowNode.getProcessInstanceId()); lhczdfpCaseTask.setProcessTaskId(lhczdfpFlowNode.getProcessTaskId()); - lhczdfpCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); lhczdfpCaseTask.setNodeType(lhczdfpFlowNode.getNodeType()); lhczdfpCaseTask.setNodeId(lhczdfpFlowNode.getNodeId()); lhczdfpCaseTask.setNodeName(lhczdfpFlowNode.getNodeName()); lhczdfpCaseTask.setFlowId(lhczdfpFlowNode.getFlowId()); lhczdfpCaseTask.setNodeShowName(lhczdfpFlowNode.getNodeShowName()); lhczdfpCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_2); - // 通过调度的,任务候选执行者类型是上一步骤选择 - lhczdfpCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); - lhczdfpCaseTask.setCandeUnitId(assignAssistUnitDTO.getUitId()); - lhczdfpCaseTask.setCandeUnitName(assignAssistUnitDTO.getUitName()); - // 不需要签收 + // 任务所属单位:当前操作组织 + lhczdfpCaseTask.setCandeUnitId(loginUser.getUnitId()); + lhczdfpCaseTask.setCandeUnitName(loginUser.getUnitName()); + // 待分派节点任务,不需要签收 lhczdfpCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); lhczdfpCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); lhczdfpCaseTask.setHandleUnitId(loginUser.getUnitId()); lhczdfpCaseTask.setHandleUnitName(loginUser.getUnitName()); + lhczdfpCaseTask.setHandleDeptId(loginUser.getDeptId()); + lhczdfpCaseTask.setHandleDeptName(loginUser.getDeptName()); lhczdfpCaseTask.setHandleUserId(loginUser.getId()); lhczdfpCaseTask.setHandleUserName(loginUser.getTrueName()); lhczdfpCaseTask.setHandleContent(assignTaskDTO.getAssignContent()); @@ -1561,28 +1609,26 @@ lhczdfpCaseTask.setCreateTime(nowDate); lhczdfpCaseTask.setUpdateTime(nowDate); mapper.insert(lhczdfpCaseTask); - // 完成待分派任务 + // 完成待分派节点任务,进去待受理节点 FlowNode lhczdslFlowNode = flowInfoService.completeTask(lhczdfpCaseTask.getFlowableId(), lhczdfpCaseTask.getProcessTaskId(), FlowableConsts.OPERATION_forward, loginUser.getId()); - // 创建配合部门待受理任务 + // 创建待受理节点任务 CaseTask lhczdslCaseTask = new CaseTask(); lhczdslCaseTask.setId(utilsClient.getNewTimeId()); lhczdslCaseTask.setCaseId(lhczdfpCaseTask.getCaseId()); lhczdslCaseTask.setFlowableId(lhczdslFlowNode.getFlowableId()); lhczdslCaseTask.setProcessInstanceId(lhczdslFlowNode.getProcessInstanceId()); lhczdslCaseTask.setProcessTaskId(lhczdslFlowNode.getProcessTaskId()); - lhczdslCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); lhczdslCaseTask.setNodeType(lhczdslFlowNode.getNodeType()); lhczdslCaseTask.setNodeId(lhczdslFlowNode.getNodeId()); lhczdslCaseTask.setNodeName(lhczdslFlowNode.getNodeName()); lhczdslCaseTask.setFlowId(lhczdslFlowNode.getFlowId()); lhczdslCaseTask.setNodeShowName(lhczdslFlowNode.getNodeShowName()); lhczdslCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_2); - // 通过调度的,任务候选执行者类型是上一步骤选择 - lhczdslCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + // 任务所属单位:交办的配合组织 lhczdslCaseTask.setCandeUnitId(assignAssistUnitDTO.getUitId()); lhczdslCaseTask.setCandeUnitName(assignAssistUnitDTO.getUitName()); - // 需要签收 + // 交办的待受理节点任务,需要签收 lhczdslCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_1); lhczdslCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); // 任务处理时限 @@ -1597,11 +1643,12 @@ // 新增联合处置信息 CaseAssistInfo caseAssistInfoPO = new CaseAssistInfo(); caseAssistInfoPO.setId(utilsClient.getNewTimeId()); - caseAssistInfoPO.setCaseId(dslCaseTask.getCaseId()); + caseAssistInfoPO.setCaseId(lhczdslCaseTask.getCaseId()); + caseAssistInfoPO.setProcessInstanceId(lhczdslCaseTask.getProcessInstanceId()); caseAssistInfoPO.setAssistUnitId(assignAssistUnitDTO.getUitId()); caseAssistInfoPO.setAssistUnitName(assignAssistUnitDTO.getUitName()); caseAssistInfoPO.setAssistStatus(CaseTaskConsts.ASSIST_STATUS_0); - caseAssistInfoPO.setCustId(dslCaseTask.getCustId()); + caseAssistInfoPO.setCustId(lhczdslCaseTask.getCustId()); caseAssistInfoPO.setCreateTime(nowDate); caseAssistInfoPO.setUpdateTime(nowDate); caseAssistInfoService.save(caseAssistInfoPO); @@ -1641,7 +1688,7 @@ caseTaskPO.setHandleIllust("已签收"); caseTaskPO.setUpdateTime(nowDate); mapper.updateCaseTask(caseTaskPO); - // 承办部门签收才更新纠纷信息 + // 承办组织签收才更新纠纷信息 if (CaseTaskConsts.CASE_TASK_TYPE_1 == qsCaseTask.getCaseTaskType()) { // 更新纠纷信息 CaseInfo caseInfoPO = new CaseInfo(); @@ -1672,48 +1719,53 @@ Date nowDate = DateUtils.getNowDate(); // 获取当前登录用户 CtUserDTO loginUser = custClient.clientGetUserAll(userId); - // 查询当前待受理任务 + // 查询当前待受理节点任务 CaseTask dslCaseTask = mapper.selectById(acceptTaskDTO.getCaseTaskId()); - // 完成当前待受理任务 + // 完成当前待受理节点任务 CaseTask dslCaseTaskPO = new CaseTask(); dslCaseTaskPO.setId(acceptTaskDTO.getCaseTaskId()); dslCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); dslCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); dslCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); - dslCaseTaskPO.setHandleUserId(loginUser.getId()); + dslCaseTaskPO.setHandleDeptId(loginUser.getDeptId()); + dslCaseTaskPO.setHandleDeptName(loginUser.getDeptName()); + dslCaseTaskPO.setHandleUserId(loginUser.getId());; + dslCaseTaskPO.setHandleUserName(loginUser.getTrueName()); dslCaseTaskPO.setHandleIllust("已受理"); dslCaseTaskPO.setHandleUserName(loginUser.getTrueName()); - dslCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); + dslCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); dslCaseTaskPO.setHandleTime(nowDate); dslCaseTaskPO.setUpdateTime(nowDate); + // 计算任务耗时、是否超时、超时多少 + dslCaseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(dslCaseTaskPO.getHandleTime(), dslCaseTask.getCreateTime())); + dslCaseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(dslCaseTaskPO.getHandleTime(), dslCaseTask.getExpireTime())); + dslCaseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(dslCaseTaskPO.getHandleTime(), dslCaseTask.getExpireTime())); mapper.updateCaseTask(dslCaseTaskPO); - // 完成当前待受理工作流任务 + // 完成当前待受理工作流节点任务,机内办理反馈节点 String operation = FlowableConsts.OPERATION_sl; - // 配合部门受理条件改为通过 if (CaseTaskConsts.CASE_TASK_TYPE_2 == dslCaseTask.getCaseTaskType()) { + // 配合组织受理条件改为通过 operation = FlowableConsts.OPERATION_forward; } FlowNode newFlowNode = flowInfoService.completeTask(dslCaseTask.getFlowableId(), dslCaseTask.getProcessTaskId(), operation, userId); - // 新建办理反馈任务 + // 新建办理反馈节点任务 CaseTask blfkCaseTask = new CaseTask(); blfkCaseTask.setId(utilsClient.getNewTimeId()); blfkCaseTask.setCaseId(dslCaseTask.getCaseId()); blfkCaseTask.setFlowableId(newFlowNode.getFlowableId()); blfkCaseTask.setProcessInstanceId(newFlowNode.getProcessInstanceId()); blfkCaseTask.setProcessTaskId(newFlowNode.getProcessTaskId()); - blfkCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); blfkCaseTask.setNodeType(newFlowNode.getNodeType()); blfkCaseTask.setNodeId(newFlowNode.getNodeId()); blfkCaseTask.setNodeName(newFlowNode.getNodeName()); blfkCaseTask.setFlowId(newFlowNode.getFlowId()); blfkCaseTask.setNodeShowName(newFlowNode.getNodeShowName()); blfkCaseTask.setCaseTaskType(dslCaseTask.getCaseTaskType()); - // 受理任务,任务候选执行者类型是上一步骤选择 - blfkCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + // 任务所属单位:当前受理单位 blfkCaseTask.setCandeUnitId(loginUser.getUnitId()); blfkCaseTask.setCandeUnitName(loginUser.getUnitName()); - // 受理后的任务,不需要签收 + // 受理后的节点任务,不需要签收 blfkCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); blfkCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); // 任务处理时限 @@ -1725,7 +1777,7 @@ blfkCaseTask.setCreateTime(nowDate); blfkCaseTask.setUpdateTime(nowDate); mapper.insert(blfkCaseTask); - // 承办部门签收才更新纠纷信息 + // 承办组织受理才更新纠纷信息 if (CaseTaskConsts.CASE_TASK_TYPE_1 == dslCaseTask.getCaseTaskType()) { // 更新纠纷信息 CaseInfo caseInfoPO = new CaseInfo(); @@ -1746,7 +1798,7 @@ caseInfoUnfoldPO.setMediateUnitName(blfkCaseTask.getCandeUnitName()); caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); }else { - // 更新配合部门联合处置信息 + // 更新配合组织联合处置信息 QueryWrapper<CaseAssistInfo> caseAssistInfoQueryWrapper = new QueryWrapper<>(); caseAssistInfoQueryWrapper.eq("case_id", blfkCaseTask.getCaseId()) .eq("assist_unit_id", loginUser.getUnitId()).eq("assist_status", CaseTaskConsts.ASSIST_STATUS_0); @@ -1781,59 +1833,73 @@ caseWindupApply.setDeleteStatus(BaseConsts.DELETE_STATUS_0); caseWindupApply.setCreateTime(nowDate); caseWindupApply.setUpdateTime(nowDate); - // 查询办理反馈任务 + // 查询办理反馈节点任务 CaseTask blfkCaseTask = mapper.selectById(caseWindupApply.getCaseTaskId()); - // 完成当前办理反馈任务 + // 完成当前办理反馈节点任务 CaseTask blfkCaseTaskPO = new CaseTask(); blfkCaseTaskPO.setId(caseWindupApply.getCaseTaskId()); blfkCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); blfkCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); blfkCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); + blfkCaseTaskPO.setHandleDeptId(loginUser.getDeptId()); + blfkCaseTaskPO.setHandleDeptName(loginUser.getDeptName()); blfkCaseTaskPO.setHandleUserId(loginUser.getId()); blfkCaseTaskPO.setHandleUserName(loginUser.getTrueName()); - blfkCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); + blfkCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); blfkCaseTaskPO.setHandleTime(nowDate); blfkCaseTaskPO.setUpdateTime(nowDate); + // 计算任务耗时、是否超时、超时多少 + blfkCaseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(blfkCaseTaskPO.getHandleTime(), blfkCaseTask.getCreateTime())); + blfkCaseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(blfkCaseTaskPO.getHandleTime(), blfkCaseTask.getExpireTime())); + blfkCaseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(blfkCaseTaskPO.getHandleTime(), blfkCaseTask.getExpireTime())); mapper.updateCaseTask(blfkCaseTaskPO); - // 完成当前待受理工作流任务,走结案申请任务 + // 完成当前待受理工作流节点任务,进入结案申请节点 FlowNode jasqFlowNode = flowInfoService.completeTask(blfkCaseTask.getFlowableId(), blfkCaseTask.getProcessTaskId(), FlowableConsts.OPERATION_forward, userId); - // 新建并自动完成结案申请任务 + // 新建并自动完成结案申请节点任务 CaseTask jasqCaseTask = new CaseTask(); jasqCaseTask.setId(utilsClient.getNewTimeId()); jasqCaseTask.setCaseId(blfkCaseTask.getCaseId()); jasqCaseTask.setFlowableId(jasqFlowNode.getFlowableId()); jasqCaseTask.setProcessInstanceId(jasqFlowNode.getProcessInstanceId()); jasqCaseTask.setProcessTaskId(jasqFlowNode.getProcessTaskId()); - jasqCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); jasqCaseTask.setNodeType(jasqFlowNode.getNodeType()); jasqCaseTask.setNodeId(jasqFlowNode.getNodeId()); jasqCaseTask.setNodeName(jasqFlowNode.getNodeName()); jasqCaseTask.setFlowId(jasqFlowNode.getFlowId()); jasqCaseTask.setNodeShowName(jasqFlowNode.getNodeShowName()); jasqCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); - // 受理任务,任务候选执行者类型是上一步骤选择 - jasqCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + // 任务所属单位:当前结案申请组织 jasqCaseTask.setCandeUnitId(loginUser.getUnitId()); jasqCaseTask.setCandeUnitName(loginUser.getUnitName()); - // 受理后的任务,不需要签收 + // 受理后的节点任务,不需要签收 jasqCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); + // 任务处理时限 + if (jasqFlowNode.getExpire() != 0) { + jasqCaseTask.setExpireTime(DateUtils.addDay(nowDate, jasqFlowNode.getExpire())); + } jasqCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); jasqCaseTask.setHandleUnitId(loginUser.getUnitId()); jasqCaseTask.setHandleUnitName(loginUser.getUnitName()); + jasqCaseTask.setHandleDeptId(loginUser.getDeptId()); + jasqCaseTask.setHandleDeptName(loginUser.getDeptName()); jasqCaseTask.setHandleUserId(loginUser.getId()); jasqCaseTask.setHandleUserName(loginUser.getTrueName()); jasqCaseTask.setHandleContent(caseWindupApply.getWindupContent()); - jasqCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); + jasqCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); jasqCaseTask.setHandleTime(nowDate); jasqCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); jasqCaseTask.setCustId(blfkCaseTask.getCustId()); jasqCaseTask.setCreateTime(nowDate); jasqCaseTask.setUpdateTime(nowDate); + // 计算任务耗时、是否超时、超时多少 + jasqCaseTask.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(jasqCaseTask.getHandleTime(), jasqCaseTask.getCreateTime())); + jasqCaseTask.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(jasqCaseTask.getHandleTime(), jasqCaseTask.getExpireTime())); + jasqCaseTask.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(jasqCaseTask.getHandleTime(), jasqCaseTask.getExpireTime())); mapper.insert(jasqCaseTask); // 化解成功,自动结案审核通过 if (MediResultBaseConstsEnum.MEDI_RESULT_1.getIndex().equals(caseWindupApply.getMediResult())){ - // 完成当前结案申请工作流任务,走结案审核任务 + // 完成当前结案申请工作流节点任务,走结案审核任务 FlowNode jashFlowNode = flowInfoService.completeTask(jasqCaseTask.getFlowableId(), jasqCaseTask.getProcessTaskId(), FlowableConsts.OPERATION_forward, userId); // 新建并自动完成结案审核任务 @@ -1843,22 +1909,26 @@ jashCaseTask.setFlowableId(jashFlowNode.getFlowableId()); jashCaseTask.setProcessInstanceId(jashFlowNode.getProcessInstanceId()); jashCaseTask.setProcessTaskId(jashFlowNode.getProcessTaskId()); - jashCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); jashCaseTask.setNodeType(jashFlowNode.getNodeType()); jashCaseTask.setNodeId(jashFlowNode.getNodeId()); jashCaseTask.setNodeName(jashFlowNode.getNodeName()); jashCaseTask.setFlowId(jashFlowNode.getFlowId()); jashCaseTask.setNodeShowName(jashFlowNode.getNodeShowName()); jashCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); - // 受理任务,任务候选执行者类型是上一步骤选择 - jashCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + // 任务所属单位:结案申请操作组织 jashCaseTask.setCandeUnitId(loginUser.getUnitId()); jashCaseTask.setCandeUnitName(loginUser.getUnitName()); - // 受理后的任务,不需要签收 + // 受理后的节点任务,不需要签收 jashCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); + // 任务处理时限 + if (jashFlowNode.getExpire() != 0) { + jashCaseTask.setExpireTime(DateUtils.addDay(nowDate, jashFlowNode.getExpire())); + } jashCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); jashCaseTask.setHandleUnitId(loginUser.getUnitId()); jashCaseTask.setHandleUnitName(loginUser.getUnitName()); + jashCaseTask.setHandleDeptId(loginUser.getDeptId()); + jashCaseTask.setHandleDeptName(loginUser.getDeptName()); jashCaseTask.setHandleUserId(loginUser.getId()); jashCaseTask.setHandleUserName(loginUser.getTrueName()); jashCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); @@ -1867,37 +1937,40 @@ jashCaseTask.setCustId(jasqCaseTask.getCustId()); jashCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 1)); jashCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 1)); + // 计算任务耗时、是否超时、超时多少 + jashCaseTask.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(jashCaseTask.getHandleTime(), jashCaseTask.getCreateTime())); + jashCaseTask.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(jashCaseTask.getHandleTime(), jashCaseTask.getExpireTime())); + jashCaseTask.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(jashCaseTask.getHandleTime(), jashCaseTask.getExpireTime())); mapper.insert(jashCaseTask); - // 完成当前结案审核工作流任务,走下一个任务 + // 完成当前结案审核工作流任务,走下一个节点 FlowNode nextFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), FlowableConsts.OPERATION_jash_ty, userId); - // 走当事人评价节点 + // 下一个节点是当事人评价节点,进入当事人评价节点任务 if (FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex().equals(nextFlowNode.getNodeId())){ - // 新建当事人评价任务 + // 新建当事人评价节点任务 CaseTask dsrpjCaseTask = new CaseTask(); dsrpjCaseTask.setId(utilsClient.getNewTimeId()); dsrpjCaseTask.setCaseId(jashCaseTask.getCaseId()); dsrpjCaseTask.setFlowableId(nextFlowNode.getFlowableId()); dsrpjCaseTask.setProcessInstanceId(nextFlowNode.getProcessInstanceId()); dsrpjCaseTask.setProcessTaskId(nextFlowNode.getProcessTaskId()); - dsrpjCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); dsrpjCaseTask.setNodeType(nextFlowNode.getNodeType()); dsrpjCaseTask.setNodeId(nextFlowNode.getNodeId()); dsrpjCaseTask.setNodeName(nextFlowNode.getNodeName()); dsrpjCaseTask.setFlowId(nextFlowNode.getFlowId()); dsrpjCaseTask.setNodeShowName(nextFlowNode.getNodeShowName()); dsrpjCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); - // 受理任务,任务候选执行者类型是上一步骤选择 - dsrpjCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); - dsrpjCaseTask.setCandeUnitId(loginUser.getUnitId()); - dsrpjCaseTask.setCandeUnitName(loginUser.getUnitName()); - // 受理后的任务,不需要签收 + // 任务所属人:当事人 + EvaluatePersonDTO evaluatePersonDTO = casePersonService.getEvaluatePerson(jashCaseTask.getCaseId()); + dsrpjCaseTask.setCandeUserId(evaluatePersonDTO.getId()); + dsrpjCaseTask.setCandeUserId(evaluatePersonDTO.getName()); + // 受理后的节点任务,不需要签收 dsrpjCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); - dsrpjCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); // 任务处理时限 if (nextFlowNode.getExpire() != 0) { dsrpjCaseTask.setExpireTime(DateUtils.addDay(nowDate, nextFlowNode.getExpire())); } + dsrpjCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); dsrpjCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); dsrpjCaseTask.setCustId(jashCaseTask.getCustId()); dsrpjCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 2)); @@ -1915,46 +1988,51 @@ caseInfoPO.setUpdateTime(nowDate); caseInfoService.updateCaseInfo(caseInfoPO); } - // 走结案归档节点 + // 下一个节点是结案归档节点,进入结案归档节点任务 if (FlowNodeEnum.FLOW_NODE_JAGD.getIndex().equals(nextFlowNode.getNodeId())){ - // 默认完成结案归档任务 + // 创建并完成结案归档节点任务 CaseTask jagdCaseTask = new CaseTask(); jagdCaseTask.setId(utilsClient.getNewTimeId()); jagdCaseTask.setCaseId(jashCaseTask.getCaseId()); jagdCaseTask.setFlowableId(nextFlowNode.getFlowableId()); jagdCaseTask.setProcessInstanceId(nextFlowNode.getProcessInstanceId()); jagdCaseTask.setProcessTaskId(nextFlowNode.getProcessTaskId()); - jagdCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); jagdCaseTask.setNodeType(nextFlowNode.getNodeType()); jagdCaseTask.setNodeId(nextFlowNode.getNodeId()); jagdCaseTask.setNodeName(nextFlowNode.getNodeName()); jagdCaseTask.setFlowId(nextFlowNode.getFlowId()); jagdCaseTask.setNodeShowName(nextFlowNode.getNodeShowName()); jagdCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); - // 通过调度的,任务候选执行者类型是上一步骤选择 - jagdCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + // 任务所属单位:结案申请操作组织 jagdCaseTask.setCandeUnitId(loginUser.getUnitId()); jagdCaseTask.setCandeUnitName(loginUser.getUnitName()); - // 系不需要签收 + // 受理后的节点任务,不需要签收 jagdCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); - jagdCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); // 任务处理时限 if (nextFlowNode.getExpire() != 0) { jagdCaseTask.setExpireTime(DateUtils.addDay(nowDate, nextFlowNode.getExpire())); } - jagdCaseTask.setHandleUnitId(loginUser.getUnitId()); - jagdCaseTask.setHandleUnitName(loginUser.getUnitName()); - jagdCaseTask.setHandleUserName("系统自动"); - jagdCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); + jagdCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); + jashCaseTask.setHandleUnitId(loginUser.getUnitId()); + jashCaseTask.setHandleUnitName(loginUser.getUnitName()); + jashCaseTask.setHandleDeptId(loginUser.getDeptId()); + jashCaseTask.setHandleDeptName(loginUser.getDeptName()); + jashCaseTask.setHandleUserId(loginUser.getId()); + jashCaseTask.setHandleUserName(loginUser.getTrueName()); + jagdCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); jagdCaseTask.setHandleTime(nowDate); jagdCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); jagdCaseTask.setCustId(jashCaseTask.getCustId()); jagdCaseTask.setCreateTime(nowDate); jagdCaseTask.setUpdateTime(nowDate); + // 计算任务耗时、是否超时、超时多少 + jagdCaseTask.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(jagdCaseTask.getHandleTime(), jagdCaseTask.getCreateTime())); + jagdCaseTask.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(jagdCaseTask.getHandleTime(), jagdCaseTask.getExpireTime())); + jagdCaseTask.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(jagdCaseTask.getHandleTime(), jagdCaseTask.getExpireTime())); mapper.insert(jagdCaseTask); - // 结束工作流流程 + // 完成结案归档工作流节点任务,结束流程 flowInfoService.completeTask(jagdCaseTask.getFlowableId(), jagdCaseTask.getProcessTaskId(), - FlowableConsts.OPERATION_jb_zszz, "系统自动"); + FlowableConsts.OPERATION_jb_zszz, loginUser.getId()); // 更新纠纷信息 CaseInfo caseInfoPO = new CaseInfo(); caseInfoPO.setId(jashCaseTask.getCaseId()); @@ -1991,69 +2069,242 @@ caseInfoUnfoldPO.setCloseTime(nowDate); caseInfoUnfoldPO.setUpdateTime(nowDate); caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); - }else {// 化解不成功,走结案审核流程 - // 完成当前结案申请工作流任务,走结案审核任务 + }else {// 化解不成功 + // 完成当前结案申请工作流节点任务 FlowNode jashFlowNode = flowInfoService.completeTask(jasqCaseTask.getFlowableId(), jasqCaseTask.getProcessTaskId(), FlowableConsts.OPERATION_forward, userId); - // 新建结案审核任务 - CaseTask jashCaseTask = new CaseTask(); - jashCaseTask.setId(utilsClient.getNewTimeId()); - jashCaseTask.setCaseId(jasqCaseTask.getCaseId()); - jashCaseTask.setFlowableId(jashFlowNode.getFlowableId()); - jashCaseTask.setProcessInstanceId(jashFlowNode.getProcessInstanceId()); - jashCaseTask.setProcessTaskId(jashFlowNode.getProcessTaskId()); - jashCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); - jashCaseTask.setNodeType(jashFlowNode.getNodeType()); - jashCaseTask.setNodeId(jashFlowNode.getNodeId()); - jashCaseTask.setNodeName(jashFlowNode.getNodeName()); - jashCaseTask.setFlowId(jashFlowNode.getFlowId()); - jashCaseTask.setNodeShowName(jashFlowNode.getNodeShowName()); - jashCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); - // 受理任务,任务候选执行者类型是上一步骤选择 - jashCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); - jashCaseTask.setCandeUnitId(loginUser.getUnitId()); - jashCaseTask.setCandeUnitName(loginUser.getUnitName()); - // 受理后的任务,不需要签收 - jashCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); - jashCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); - // 任务处理时限 - if (jashFlowNode.getExpire() != 0) { - jashCaseTask.setExpireTime(DateUtils.addDay(nowDate, jashFlowNode.getExpire())); + // 判断是否自行受理 + CaseInfo caseInfo = caseInfoService.getById(jasqCaseTask.getCaseId()); + if (CaseBaseConsts.ZXSL_STATUS_1 == caseInfo.getZxslStatus()){ + // 自行受理,自行完成结案审核节点,直接进入下一个节点 + // 新建并自动完成结案审核任务 + CaseTask jashCaseTask = new CaseTask(); + jashCaseTask.setId(utilsClient.getNewTimeId()); + jashCaseTask.setCaseId(jasqCaseTask.getCaseId()); + jashCaseTask.setFlowableId(jashFlowNode.getFlowableId()); + jashCaseTask.setProcessInstanceId(jashFlowNode.getProcessInstanceId()); + jashCaseTask.setProcessTaskId(jashFlowNode.getProcessTaskId()); + jashCaseTask.setNodeType(jashFlowNode.getNodeType()); + jashCaseTask.setNodeId(jashFlowNode.getNodeId()); + jashCaseTask.setNodeName(jashFlowNode.getNodeName()); + jashCaseTask.setFlowId(jashFlowNode.getFlowId()); + jashCaseTask.setNodeShowName(jashFlowNode.getNodeShowName()); + jashCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); + // 任务所属单位:结案申请操作组织 + jashCaseTask.setCandeUnitId(loginUser.getUnitId()); + jashCaseTask.setCandeUnitName(loginUser.getUnitName()); + // 受理后的节点任务,不需要签收 + jashCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); + // 任务处理时限 + if (jashFlowNode.getExpire() != 0) { + jashCaseTask.setExpireTime(DateUtils.addDay(nowDate, jashFlowNode.getExpire())); + } + jashCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); + jashCaseTask.setHandleUnitId(loginUser.getUnitId()); + jashCaseTask.setHandleUnitName(loginUser.getUnitName()); + jashCaseTask.setHandleDeptId(loginUser.getDeptId()); + jashCaseTask.setHandleDeptName(loginUser.getDeptName()); + jashCaseTask.setHandleUserId(loginUser.getId()); + jashCaseTask.setHandleUserName(loginUser.getTrueName()); + jashCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); + jashCaseTask.setHandleTime(DateUtils.addMinute(nowDate, 1)); + jashCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + jashCaseTask.setCustId(jasqCaseTask.getCustId()); + jashCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 1)); + jashCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 1)); + // 计算任务耗时、是否超时、超时多少 + jashCaseTask.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(jashCaseTask.getHandleTime(), jashCaseTask.getCreateTime())); + jashCaseTask.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(jashCaseTask.getHandleTime(), jashCaseTask.getExpireTime())); + jashCaseTask.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(jashCaseTask.getHandleTime(), jashCaseTask.getExpireTime())); + mapper.insert(jashCaseTask); + // 完成当前结案审核工作流任务,走下一个节点 + FlowNode nextFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), + FlowableConsts.OPERATION_jash_ty, userId); + // 下一个节点是当事人评价节点,进入当事人评价节点任务 + if (FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex().equals(nextFlowNode.getNodeId())){ + // 新建当事人评价节点任务 + CaseTask dsrpjCaseTask = new CaseTask(); + dsrpjCaseTask.setId(utilsClient.getNewTimeId()); + dsrpjCaseTask.setCaseId(jashCaseTask.getCaseId()); + dsrpjCaseTask.setFlowableId(nextFlowNode.getFlowableId()); + dsrpjCaseTask.setProcessInstanceId(nextFlowNode.getProcessInstanceId()); + dsrpjCaseTask.setProcessTaskId(nextFlowNode.getProcessTaskId()); + dsrpjCaseTask.setNodeType(nextFlowNode.getNodeType()); + dsrpjCaseTask.setNodeId(nextFlowNode.getNodeId()); + dsrpjCaseTask.setNodeName(nextFlowNode.getNodeName()); + dsrpjCaseTask.setFlowId(nextFlowNode.getFlowId()); + dsrpjCaseTask.setNodeShowName(nextFlowNode.getNodeShowName()); + dsrpjCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); + // 任务所属人:当事人 + EvaluatePersonDTO evaluatePersonDTO = casePersonService.getEvaluatePerson(jashCaseTask.getCaseId()); + dsrpjCaseTask.setCandeUserId(evaluatePersonDTO.getId()); + dsrpjCaseTask.setCandeUserId(evaluatePersonDTO.getName()); + // 受理后的节点任务,不需要签收 + dsrpjCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); + // 任务处理时限 + if (nextFlowNode.getExpire() != 0) { + dsrpjCaseTask.setExpireTime(DateUtils.addDay(nowDate, nextFlowNode.getExpire())); + } + dsrpjCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); + dsrpjCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + dsrpjCaseTask.setCustId(jashCaseTask.getCustId()); + dsrpjCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 2)); + dsrpjCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 2)); + mapper.insert(dsrpjCaseTask); + // 更新纠纷信息 + CaseInfo caseInfoPO = new CaseInfo(); + caseInfoPO.setId(jashCaseTask.getCaseId()); + caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_6.getIndex()); + caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_6.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); + } + // 下一个节点是结案归档节点,进入结案归档节点任务 + if (FlowNodeEnum.FLOW_NODE_JAGD.getIndex().equals(nextFlowNode.getNodeId())){ + // 创建并完成结案归档节点任务 + CaseTask jagdCaseTask = new CaseTask(); + jagdCaseTask.setId(utilsClient.getNewTimeId()); + jagdCaseTask.setCaseId(jashCaseTask.getCaseId()); + jagdCaseTask.setFlowableId(nextFlowNode.getFlowableId()); + jagdCaseTask.setProcessInstanceId(nextFlowNode.getProcessInstanceId()); + jagdCaseTask.setProcessTaskId(nextFlowNode.getProcessTaskId()); + jagdCaseTask.setNodeType(nextFlowNode.getNodeType()); + jagdCaseTask.setNodeId(nextFlowNode.getNodeId()); + jagdCaseTask.setNodeName(nextFlowNode.getNodeName()); + jagdCaseTask.setFlowId(nextFlowNode.getFlowId()); + jagdCaseTask.setNodeShowName(nextFlowNode.getNodeShowName()); + jagdCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); + // 任务所属单位:结案申请操作组织 + jagdCaseTask.setCandeUnitId(loginUser.getUnitId()); + jagdCaseTask.setCandeUnitName(loginUser.getUnitName()); + // 受理后的节点任务,不需要签收 + jagdCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); + // 任务处理时限 + if (nextFlowNode.getExpire() != 0) { + jagdCaseTask.setExpireTime(DateUtils.addDay(nowDate, nextFlowNode.getExpire())); + } + jagdCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); + jagdCaseTask.setHandleUnitId(loginUser.getUnitId()); + jagdCaseTask.setHandleUnitName(loginUser.getUnitName()); + jagdCaseTask.setHandleDeptId(loginUser.getDeptId()); + jagdCaseTask.setHandleDeptName(loginUser.getDeptName()); + jagdCaseTask.setHandleUserId(loginUser.getId()); + jagdCaseTask.setHandleUserName(loginUser.getTrueName()); + jagdCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); + jagdCaseTask.setHandleTime(nowDate); + jagdCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + jagdCaseTask.setCustId(jashCaseTask.getCustId()); + jagdCaseTask.setCreateTime(nowDate); + jagdCaseTask.setUpdateTime(nowDate); + // 计算任务耗时、是否超时、超时多少 + jagdCaseTask.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(jagdCaseTask.getHandleTime(), jagdCaseTask.getCreateTime())); + jagdCaseTask.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(jagdCaseTask.getHandleTime(), jagdCaseTask.getExpireTime())); + jagdCaseTask.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(jagdCaseTask.getHandleTime(), jagdCaseTask.getExpireTime())); + mapper.insert(jagdCaseTask); + // 完成结案归档工作流节点任务,结束流程 + flowInfoService.completeTask(jagdCaseTask.getFlowableId(), jagdCaseTask.getProcessTaskId(), + FlowableConsts.OPERATION_jb_zszz, loginUser.getId()); + // 更新纠纷信息 + CaseInfo caseInfoPO = new CaseInfo(); + caseInfoPO.setId(jashCaseTask.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); + } + // 更新结案申请信息 + caseWindupApply.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_1); + caseWindupApply.setCaseTaskId(jashCaseTask.getId()); + caseWindupApply.setAuditUnitId(jashCaseTask.getHandleUnitId()); + caseWindupApply.setAuditUnitName(jashCaseTask.getHandleUnitName()); + caseWindupApply.setAuditUserId(jashCaseTask.getHandleUserId()); + caseWindupApply.setAuditUserName(jashCaseTask.getHandleUserName()); + caseWindupApply.setAuditTime(nowDate); + caseWindupApply.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex()); + caseWindupApply.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_1.getDes()); + caseWindupApply.setCustId(jashCaseTask.getCustId()); + caseWindupApplyService.save(caseWindupApply); + // 更新纠纷扩展信息 + CaseInfoUnfold caseInfoUnfoldPO = new CaseInfoUnfold(); + caseInfoUnfoldPO.setId(jashCaseTask.getCaseId()); + caseInfoUnfoldPO.setMediResult(caseWindupApply.getMediResult()); + caseInfoUnfoldPO.setMediResultName(caseWindupApply.getMediResultName()); + caseInfoUnfoldPO.setAgreeType(caseWindupApply.getAgreeType()); + caseInfoUnfoldPO.setAgreeTypeName(caseWindupApply.getAgreeTypeName()); + caseInfoUnfoldPO.setAgreeContent(caseWindupApply.getAgreeContent()); + caseInfoUnfoldPO.setWindupContent(caseWindupApply.getWindupContent()); + caseInfoUnfoldPO.setCloseTime(nowDate); + caseInfoUnfoldPO.setUpdateTime(nowDate); + caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); + }else { + // 正常流程,进入结案审核节点 + // 新建结案审核任务 + CaseTask jashCaseTask = new CaseTask(); + jashCaseTask.setId(utilsClient.getNewTimeId()); + jashCaseTask.setCaseId(jasqCaseTask.getCaseId()); + jashCaseTask.setFlowableId(jashFlowNode.getFlowableId()); + jashCaseTask.setProcessInstanceId(jashFlowNode.getProcessInstanceId()); + jashCaseTask.setProcessTaskId(jashFlowNode.getProcessTaskId()); + jashCaseTask.setNodeType(jashFlowNode.getNodeType()); + jashCaseTask.setNodeId(jashFlowNode.getNodeId()); + jashCaseTask.setNodeName(jashFlowNode.getNodeName()); + jashCaseTask.setFlowId(jashFlowNode.getFlowId()); + jashCaseTask.setNodeShowName(jashFlowNode.getNodeShowName()); + jashCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); + // 任务所属单位:本级综治中心审核 + CtUnitDTO zzzxCtUnitDTO = custClient.getBjZzzx(loginUser.getUnitId()); + jashCaseTask.setCandeUnitId(zzzxCtUnitDTO.getId()); + jashCaseTask.setCandeUnitName(zzzxCtUnitDTO.getUnitName()); + // 受理后的节点任务,不需要签收 + jashCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); + // 任务处理时限 + if (jashFlowNode.getExpire() != 0) { + jashCaseTask.setExpireTime(DateUtils.addDay(nowDate, jashFlowNode.getExpire())); + } + jashCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); + jashCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + jashCaseTask.setCustId(jasqCaseTask.getCustId()); + jashCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 1)); + jashCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 1)); + mapper.insert(jashCaseTask); + // 更新结案申请信息 + caseWindupApply.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_0); + caseWindupApply.setCaseTaskId(jashCaseTask.getId()); + caseWindupApply.setAuditUnitId(jashCaseTask.getCandeUnitId()); + caseWindupApply.setAuditUnitName(jashCaseTask.getCandeUnitName()); + caseWindupApply.setCustId(jashCaseTask.getCustId()); + caseWindupApplyService.save(caseWindupApply); + // 更新纠纷信息 + CaseInfo caseInfoPO = new CaseInfo(); + caseInfoPO.setId(jashCaseTask.getCaseId()); + caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_5.getIndex()); + caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_5.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); + // 更新纠纷扩展信息 + CaseInfoUnfold caseInfoUnfoldPO = new CaseInfoUnfold(); + caseInfoUnfoldPO.setId(jashCaseTask.getCaseId()); + caseInfoUnfoldPO.setMediResult(caseWindupApply.getMediResult()); + caseInfoUnfoldPO.setMediResultName(caseWindupApply.getMediResultName()); + caseInfoUnfoldPO.setAgreeType(caseWindupApply.getAgreeType()); + caseInfoUnfoldPO.setAgreeTypeName(caseWindupApply.getAgreeTypeName()); + caseInfoUnfoldPO.setAgreeContent(caseWindupApply.getAgreeContent()); + caseInfoUnfoldPO.setWindupContent(caseWindupApply.getWindupContent()); + caseInfoUnfoldPO.setUpdateTime(nowDate); + caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); } - jashCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); - jashCaseTask.setCustId(jasqCaseTask.getCustId()); - jashCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 1)); - jashCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 1)); - mapper.insert(jashCaseTask); - // 更新结案申请信息 - caseWindupApply.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_0); - caseWindupApply.setCaseTaskId(jashCaseTask.getId()); - caseWindupApply.setAuditUnitId(jashCaseTask.getCandeUnitId()); - caseWindupApply.setAuditUnitName(jashCaseTask.getCandeUnitName()); - caseWindupApply.setCustId(jashCaseTask.getCustId()); - caseWindupApplyService.save(caseWindupApply); - // 更新纠纷信息 - CaseInfo caseInfoPO = new CaseInfo(); - caseInfoPO.setId(jashCaseTask.getCaseId()); - caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_5.getIndex()); - caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_5.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); - // 更新纠纷扩展信息 - CaseInfoUnfold caseInfoUnfoldPO = new CaseInfoUnfold(); - caseInfoUnfoldPO.setId(jashCaseTask.getCaseId()); - caseInfoUnfoldPO.setMediResult(caseWindupApply.getMediResult()); - caseInfoUnfoldPO.setMediResultName(caseWindupApply.getMediResultName()); - caseInfoUnfoldPO.setAgreeType(caseWindupApply.getAgreeType()); - caseInfoUnfoldPO.setAgreeTypeName(caseWindupApply.getAgreeTypeName()); - caseInfoUnfoldPO.setAgreeContent(caseWindupApply.getAgreeContent()); - caseInfoUnfoldPO.setWindupContent(caseWindupApply.getWindupContent()); - caseInfoUnfoldPO.setUpdateTime(nowDate); - caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); } // 查询联合处置申请单,全部结束申请单 QueryWrapper<CaseAssistApply> caseAssistApplyQueryWrapper = new QueryWrapper<>(); @@ -2064,20 +2315,26 @@ caseAssistApply.setUpdateTime(nowDate); caseAssistApplyService.updateCaseAssistApply(caseAssistApply); } - // 查询配合部门的任务,全部结束流程 + // 查询配合组织的任务,全部结束流程 List<CaseTask> assistCaseTaskList = this.listAssistTasking(jasqCaseTask.getCaseId()); for (CaseTask assistCaseTask: assistCaseTaskList){ - // 完成配合部门当前任务 + // 完成配合组织当前任务 assistCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); assistCaseTask.setHandleUnitId(loginUser.getUnitId()); assistCaseTask.setHandleUnitName(loginUser.getUnitName()); + assistCaseTask.setHandleDeptId(loginUser.getDeptId()); + assistCaseTask.setHandleDeptName(loginUser.getDeptName()); assistCaseTask.setHandleUserId(loginUser.getId()); assistCaseTask.setHandleUserName(loginUser.getTrueName()); - assistCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); + assistCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); assistCaseTask.setHandleTime(nowDate); assistCaseTask.setUpdateTime(nowDate); + // 计算任务耗时、是否超时、超时多少 + assistCaseTask.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(assistCaseTask.getHandleTime(), assistCaseTask.getCreateTime())); + assistCaseTask.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(assistCaseTask.getHandleTime(), assistCaseTask.getExpireTime())); + assistCaseTask.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(assistCaseTask.getHandleTime(), assistCaseTask.getExpireTime())); mapper.updateCaseTask(assistCaseTask); - // 结束配合部门当前工作流任务 + // 结束配合组织当前工作流任务 flowInfoService.endFlow(assistCaseTask.getProcessInstanceId()); } }catch (Exception e){ @@ -2096,6 +2353,8 @@ Date nowDate = DateUtils.getNowDate(); // 获取当前登录用户 CtUserDTO loginUser = custClient.clientGetUserAll(userId); + // 查询结案申请信息 + CaseWindupApply oldCaseWindupApply = caseWindupApplyService.getById(caseWindupApply.getId()); // 更新结案申请信息 caseWindupApply.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_1); caseWindupApply.setAuditUserId(loginUser.getId()); @@ -2109,53 +2368,185 @@ CaseTask jashCaseTask = mapper.selectById(caseWindupApply.getCaseTaskId()); // 审核通过, if (AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex().equals(caseWindupApply.getAuditResult())){ - // 完成当前结案审核任务 + // 完成当前结案审核节点任务 CaseTask jashCaseTaskPO = new CaseTask(); jashCaseTaskPO.setId(caseWindupApply.getCaseTaskId()); jashCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); jashCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); jashCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); + jashCaseTaskPO.setHandleDeptId(loginUser.getDeptId()); + jashCaseTaskPO.setHandleDeptName(loginUser.getDeptName()); jashCaseTaskPO.setHandleUserId(loginUser.getId()); jashCaseTaskPO.setHandleUserName(loginUser.getTrueName()); jashCaseTaskPO.setHandleContent(caseWindupApply.getAuditContent()); jashCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); jashCaseTaskPO.setHandleTime(nowDate); jashCaseTaskPO.setUpdateTime(nowDate); + // 计算任务耗时、是否超时、超时多少 + jashCaseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(jashCaseTaskPO.getHandleTime(), jashCaseTask.getCreateTime())); + jashCaseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(jashCaseTaskPO.getHandleTime(), jashCaseTask.getExpireTime())); + jashCaseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(jashCaseTaskPO.getHandleTime(), jashCaseTask.getExpireTime())); mapper.updateCaseTask(jashCaseTaskPO); - // 完成当前结案审核工作流任务,走当事人评价任务 - FlowNode nextFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), - FlowableConsts.OPERATION_jash_ty, userId); - // 走当事人评价节点 + // 根据事项等级,判断是否要上级综治中心审核 + FlowNode nextFlowNode = null; + CaseInfo caseInfo = caseInfoService.getById(jashCaseTask.getCaseId()); + if (CaseBaseConsts.CASE_LEVEL_1 == caseInfo.getCaseLevel()){ + // 一级事件,本级+上级+上上级审核 + if (FlowNodeEnum.FLOW_NODE_JASH.equals(jashCaseTask.getNodeId())){ + // 完成本级综治中心审核,进入上级综治中心审核节点 + nextFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), + FlowableConsts.OPERATION_jash_ty_sq, userId); + + }else if (FlowNodeEnum.FLOW_NODE_JASH_YJ.equals(jashCaseTask.getNodeId())){ + // 完成上级综治中心审核,进入上上级综治中心审核节点 + nextFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), + FlowableConsts.OPERATION_jash_ty_sq, userId); + }else { + // 完成上上级综治中心审核,审核流程结束,进入下一节点 + nextFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), + FlowableConsts.OPERATION_jash_ty, userId); + } + + }else if (CaseBaseConsts.CASE_LEVEL_2 == caseInfo.getCaseLevel()){ + // 二级事件,本级+上级审核 + String operation = FlowableConsts.OPERATION_jash_ty; + if (FlowNodeEnum.FLOW_NODE_JASH.equals(jashCaseTask.getNodeId())){ + // 完成本级综治中心审核,进入上级综治中心审核节点 + nextFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), + FlowableConsts.OPERATION_jash_ty_sq, userId); + }else { + // 完成上级综治中心审核,审核流程结束,进入下一节点 + nextFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), + FlowableConsts.OPERATION_jash_ty, userId); + } + }else { + // 三级事件,自办自结,即本级综治中心审核就行,完成本级综治中心审核,审核流程结束,进入下一节点 + nextFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), + FlowableConsts.OPERATION_jash_ty, userId); + } + + // 下一个节点是一级结案审核节点,进入一级结案审核节点任务 + if (FlowNodeEnum.FLOW_NODE_JASH_YJ.getIndex().equals(nextFlowNode.getNodeId())){ + // 新建结案审核节点任务 + CaseTask yjJashCaseTask = new CaseTask(); + yjJashCaseTask.setId(utilsClient.getNewTimeId()); + yjJashCaseTask.setCaseId(jashCaseTask.getCaseId()); + yjJashCaseTask.setFlowableId(nextFlowNode.getFlowableId()); + yjJashCaseTask.setProcessInstanceId(nextFlowNode.getProcessInstanceId()); + yjJashCaseTask.setProcessTaskId(nextFlowNode.getProcessTaskId()); + yjJashCaseTask.setNodeType(nextFlowNode.getNodeType()); + yjJashCaseTask.setNodeId(nextFlowNode.getNodeId()); + yjJashCaseTask.setNodeName(nextFlowNode.getNodeName()); + yjJashCaseTask.setFlowId(nextFlowNode.getFlowId()); + yjJashCaseTask.setNodeShowName(nextFlowNode.getNodeShowName()); + yjJashCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); + // 任务所属单位:上级级综治中心审核 + CtUnitDTO zzzxCtUnitDTO = custClient.getParentZzzxUnit(loginUser.getUnitId()); + yjJashCaseTask.setCandeUnitId(zzzxCtUnitDTO.getId()); + yjJashCaseTask.setCandeUnitName(zzzxCtUnitDTO.getUnitName()); + // 受理后的节点任务,不需要签收 + yjJashCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); + // 任务处理时限 + if (nextFlowNode.getExpire() != 0) { + yjJashCaseTask.setExpireTime(DateUtils.addDay(nowDate, nextFlowNode.getExpire())); + } + yjJashCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); + yjJashCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + yjJashCaseTask.setCustId(jashCaseTask.getCustId()); + yjJashCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 1)); + yjJashCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 1)); + mapper.insert(yjJashCaseTask); + // 创建新的结案申请记录 + CaseWindupApply newCaseWindupApply = new CaseWindupApply(); + BeanUtils.copyProperties(oldCaseWindupApply, newCaseWindupApply); + newCaseWindupApply.setId(utilsClient.getNewTimeId()); + newCaseWindupApply.setApplyTime(nowDate); + newCaseWindupApply.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_0); + newCaseWindupApply.setCaseTaskId(yjJashCaseTask.getId()); + newCaseWindupApply.setAuditUnitId(yjJashCaseTask.getCandeUnitId()); + newCaseWindupApply.setAuditUnitName(yjJashCaseTask.getCandeUnitName()); + newCaseWindupApply.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + newCaseWindupApply.setCreateTime(nowDate); + newCaseWindupApply.setUpdateTime(nowDate); + newCaseWindupApply.setCustId(yjJashCaseTask.getCustId()); + caseWindupApplyService.save(newCaseWindupApply); + } + // 下一个节点是二级结案审核节点,进入二级结案审核节点任务 + if (FlowNodeEnum.FLOW_NODE_JASH_EJ.getIndex().equals(nextFlowNode.getNodeId())){ + // 新建结案审核节点任务 + CaseTask ejJashCaseTask = new CaseTask(); + ejJashCaseTask.setId(utilsClient.getNewTimeId()); + ejJashCaseTask.setCaseId(jashCaseTask.getCaseId()); + ejJashCaseTask.setFlowableId(nextFlowNode.getFlowableId()); + ejJashCaseTask.setProcessInstanceId(nextFlowNode.getProcessInstanceId()); + ejJashCaseTask.setProcessTaskId(nextFlowNode.getProcessTaskId()); + ejJashCaseTask.setNodeType(nextFlowNode.getNodeType()); + ejJashCaseTask.setNodeId(nextFlowNode.getNodeId()); + ejJashCaseTask.setNodeName(nextFlowNode.getNodeName()); + ejJashCaseTask.setFlowId(nextFlowNode.getFlowId()); + ejJashCaseTask.setNodeShowName(nextFlowNode.getNodeShowName()); + ejJashCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); + // 任务所属单位:上级级综治中心审核 + CtUnitDTO zzzxCtUnitDTO = custClient.getParentZzzxUnit(loginUser.getUnitId()); + ejJashCaseTask.setCandeUnitId(zzzxCtUnitDTO.getId()); + ejJashCaseTask.setCandeUnitName(zzzxCtUnitDTO.getUnitName()); + // 受理后的节点任务,不需要签收 + ejJashCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); + // 任务处理时限 + if (nextFlowNode.getExpire() != 0) { + ejJashCaseTask.setExpireTime(DateUtils.addDay(nowDate, nextFlowNode.getExpire())); + } + ejJashCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); + ejJashCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + ejJashCaseTask.setCustId(jashCaseTask.getCustId()); + ejJashCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 1)); + ejJashCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 1)); + mapper.insert(ejJashCaseTask); + // 创建新的结案申请记录 + CaseWindupApply newCaseWindupApply = new CaseWindupApply(); + BeanUtils.copyProperties(oldCaseWindupApply, newCaseWindupApply); + newCaseWindupApply.setId(utilsClient.getNewTimeId()); + newCaseWindupApply.setApplyTime(nowDate); + newCaseWindupApply.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_0); + newCaseWindupApply.setCaseTaskId(ejJashCaseTask.getId()); + newCaseWindupApply.setAuditUnitId(ejJashCaseTask.getCandeUnitId()); + newCaseWindupApply.setAuditUnitName(ejJashCaseTask.getCandeUnitName()); + newCaseWindupApply.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + newCaseWindupApply.setCreateTime(nowDate); + newCaseWindupApply.setUpdateTime(nowDate); + newCaseWindupApply.setCustId(ejJashCaseTask.getCustId()); + caseWindupApplyService.save(newCaseWindupApply); + } + // 下一个节点是当事人评价节点,进入当事人评价节点任务 if (FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex().equals(nextFlowNode.getNodeId())){ - // 新建当事人评价任务 + // 新建当事人评价节点任务 CaseTask dsrpjCaseTask = new CaseTask(); dsrpjCaseTask.setId(utilsClient.getNewTimeId()); dsrpjCaseTask.setCaseId(jashCaseTask.getCaseId()); dsrpjCaseTask.setFlowableId(nextFlowNode.getFlowableId()); dsrpjCaseTask.setProcessInstanceId(nextFlowNode.getProcessInstanceId()); dsrpjCaseTask.setProcessTaskId(nextFlowNode.getProcessTaskId()); - dsrpjCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); dsrpjCaseTask.setNodeType(nextFlowNode.getNodeType()); dsrpjCaseTask.setNodeId(nextFlowNode.getNodeId()); dsrpjCaseTask.setNodeName(nextFlowNode.getNodeName()); dsrpjCaseTask.setFlowId(nextFlowNode.getFlowId()); dsrpjCaseTask.setNodeShowName(nextFlowNode.getNodeShowName()); dsrpjCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); - // 受理任务,任务候选执行者类型是上一步骤选择 - dsrpjCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); - dsrpjCaseTask.setCandeUnitId(loginUser.getUnitId()); - dsrpjCaseTask.setCandeUnitName(loginUser.getUnitName()); - // 受理后的任务,不需要签收 + // 任务所属人:当事人 + EvaluatePersonDTO evaluatePersonDTO = casePersonService.getEvaluatePerson(jashCaseTask.getCaseId()); + dsrpjCaseTask.setCandeUserId(evaluatePersonDTO.getId()); + dsrpjCaseTask.setCandeUserId(evaluatePersonDTO.getName()); + // 受理后的节点任务,不需要签收 dsrpjCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); - dsrpjCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); // 任务处理时限 if (nextFlowNode.getExpire() != 0) { dsrpjCaseTask.setExpireTime(DateUtils.addDay(nowDate, nextFlowNode.getExpire())); } + dsrpjCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); dsrpjCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); dsrpjCaseTask.setCustId(jashCaseTask.getCustId()); - dsrpjCaseTask.setCreateTime(nowDate); - dsrpjCaseTask.setUpdateTime(nowDate); + dsrpjCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 2)); + dsrpjCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 2)); mapper.insert(dsrpjCaseTask); // 更新纠纷信息 CaseInfo caseInfoPO = new CaseInfo(); @@ -2169,46 +2560,51 @@ caseInfoPO.setUpdateTime(nowDate); caseInfoService.updateCaseInfo(caseInfoPO); } - // 走结案归档节点 + // 下一个节点是结案归档节点,进入结案归档节点任务 if (FlowNodeEnum.FLOW_NODE_JAGD.getIndex().equals(nextFlowNode.getNodeId())){ - // 默认完成结案归档任务 + // 创建并完成结案归档节点任务 CaseTask jagdCaseTask = new CaseTask(); jagdCaseTask.setId(utilsClient.getNewTimeId()); jagdCaseTask.setCaseId(jashCaseTask.getCaseId()); jagdCaseTask.setFlowableId(nextFlowNode.getFlowableId()); jagdCaseTask.setProcessInstanceId(nextFlowNode.getProcessInstanceId()); jagdCaseTask.setProcessTaskId(nextFlowNode.getProcessTaskId()); - jagdCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); jagdCaseTask.setNodeType(nextFlowNode.getNodeType()); jagdCaseTask.setNodeId(nextFlowNode.getNodeId()); jagdCaseTask.setNodeName(nextFlowNode.getNodeName()); jagdCaseTask.setFlowId(nextFlowNode.getFlowId()); jagdCaseTask.setNodeShowName(nextFlowNode.getNodeShowName()); jagdCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); - // 通过调度的,任务候选执行者类型是上一步骤选择 - jagdCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); - jagdCaseTask.setCandeUnitId(loginUser.getUnitId()); - jagdCaseTask.setCandeUnitName(loginUser.getUnitName()); - // 系不需要签收 + // 任务所属单位:结案申请操作组织 + jagdCaseTask.setCandeUnitId(oldCaseWindupApply.getApplyUnitId()); + jagdCaseTask.setCandeUnitName(oldCaseWindupApply.getApplyUnitName()); + // 受理后的节点任务,不需要签收 jagdCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); - jagdCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); // 任务处理时限 if (nextFlowNode.getExpire() != 0) { jagdCaseTask.setExpireTime(DateUtils.addDay(nowDate, nextFlowNode.getExpire())); } - jagdCaseTask.setHandleUnitId(loginUser.getUnitId()); - jagdCaseTask.setHandleUnitName(loginUser.getUnitName()); - jagdCaseTask.setHandleUserName("系统自动"); - jagdCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); + jagdCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); + jashCaseTask.setHandleUnitId(loginUser.getUnitId()); + jashCaseTask.setHandleUnitName(loginUser.getUnitName()); + jashCaseTask.setHandleDeptId(loginUser.getDeptId()); + jashCaseTask.setHandleDeptName(loginUser.getDeptName()); + jashCaseTask.setHandleUserId(loginUser.getId()); + jashCaseTask.setHandleUserName(loginUser.getTrueName()); + jagdCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); jagdCaseTask.setHandleTime(nowDate); jagdCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); jagdCaseTask.setCustId(jashCaseTask.getCustId()); jagdCaseTask.setCreateTime(nowDate); jagdCaseTask.setUpdateTime(nowDate); + // 计算任务耗时、是否超时、超时多少 + jagdCaseTask.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(jagdCaseTask.getHandleTime(), jagdCaseTask.getCreateTime())); + jagdCaseTask.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(jagdCaseTask.getHandleTime(), jagdCaseTask.getExpireTime())); + jagdCaseTask.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(jagdCaseTask.getHandleTime(), jagdCaseTask.getExpireTime())); mapper.insert(jagdCaseTask); - // 结束工作流流程 + // 完成结案归档工作流节点任务,结束流程 flowInfoService.completeTask(jagdCaseTask.getFlowableId(), jagdCaseTask.getProcessTaskId(), - FlowableConsts.OPERATION_jb_zszz, "系统自动"); + FlowableConsts.OPERATION_jb_zszz, loginUser.getId()); // 更新纠纷信息 CaseInfo caseInfoPO = new CaseInfo(); caseInfoPO.setId(jashCaseTask.getCaseId()); @@ -2229,42 +2625,46 @@ caseInfoUnfoldPO.setUpdateTime(nowDate); caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); }else { - // 审核不通过,回退办理反馈任务 - // 完成当前结案审核任务 + // 审核不通过,回退办理反馈节点任务 + // 完成当前结案审核节点任务 CaseTask jashCaseTaskPO = new CaseTask(); jashCaseTaskPO.setId(caseWindupApply.getCaseTaskId()); jashCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); jashCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); jashCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); + jashCaseTaskPO.setHandleDeptId(loginUser.getDeptId()); + jashCaseTaskPO.setHandleDeptName(loginUser.getDeptName()); jashCaseTaskPO.setHandleUserId(loginUser.getId()); jashCaseTaskPO.setHandleUserName(loginUser.getTrueName()); jashCaseTaskPO.setHandleContent(caseWindupApply.getAuditContent()); jashCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_2); jashCaseTaskPO.setHandleTime(nowDate); jashCaseTaskPO.setUpdateTime(nowDate); + // 计算任务耗时、是否超时、超时多少 + jashCaseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(jashCaseTaskPO.getHandleTime(), jashCaseTask.getCreateTime())); + jashCaseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(jashCaseTaskPO.getHandleTime(), jashCaseTask.getExpireTime())); + jashCaseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(jashCaseTaskPO.getHandleTime(), jashCaseTask.getExpireTime())); mapper.updateCaseTask(jashCaseTaskPO); - // 完成当前结案审核工作流任务,走办理反馈任务 + // 完成当前结案审核工作流节点任务,走办理反馈节点任务 FlowNode blfkFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), FlowableConsts.OPERATION_jash_bty, userId); - // 新建办理反馈任务 + // 新建办理反馈节点任务 CaseTask blfkCaseTask = new CaseTask(); blfkCaseTask.setId(utilsClient.getNewTimeId()); blfkCaseTask.setCaseId(jashCaseTask.getCaseId()); blfkCaseTask.setFlowableId(blfkFlowNode.getFlowableId()); blfkCaseTask.setProcessInstanceId(blfkFlowNode.getProcessInstanceId()); blfkCaseTask.setProcessTaskId(blfkFlowNode.getProcessTaskId()); - blfkCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); blfkCaseTask.setNodeType(blfkFlowNode.getNodeType()); blfkCaseTask.setNodeId(blfkFlowNode.getNodeId()); blfkCaseTask.setNodeName(blfkFlowNode.getNodeName()); blfkCaseTask.setFlowId(blfkFlowNode.getFlowId()); blfkCaseTask.setNodeShowName(blfkFlowNode.getNodeShowName()); blfkCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); - // 受理任务,任务候选执行者类型是上一步骤选择 - blfkCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); - blfkCaseTask.setCandeUnitId(loginUser.getUnitId()); - blfkCaseTask.setCandeUnitName(loginUser.getUnitName()); - // 受理后的任务,不需要签收 + // 任务所属单位:结案申请操作组织 + blfkCaseTask.setCandeUnitId(oldCaseWindupApply.getApplyUnitId()); + blfkCaseTask.setCandeUnitName(oldCaseWindupApply.getApplyUnitName()); + // 受理后的节点任务,不需要签收 blfkCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); blfkCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); // 任务处理时限 @@ -2318,45 +2718,47 @@ caseReturn.setCustId(loginUser.getCustId()); caseReturn.setCreateTime(nowDate); caseReturn.setUpdateTime(nowDate); - // 查询待受理任务 - CaseTask dslCaseTask = mapper.selectById(caseReturn.getCaseTaskId()); - // 完成当前待受理任务 - CaseTask dslCaseTaskPO = new CaseTask(); - dslCaseTaskPO.setId(caseReturn.getCaseTaskId()); - dslCaseTaskPO.setTaskType(CaseTaskConsts.TASK_TYPE_2); - dslCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); - dslCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); - dslCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); - dslCaseTaskPO.setHandleUserId(loginUser.getId()); - dslCaseTaskPO.setHandleUserName(loginUser.getTrueName()); - dslCaseTaskPO.setHandleContent(caseReturn.getReturnContent()); - dslCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); - dslCaseTaskPO.setHandleTime(nowDate); - dslCaseTaskPO.setUpdateTime(nowDate); - mapper.updateCaseTask(dslCaseTaskPO); - // 完成当前待受理工作流任务,走回退审核任务 - FlowNode htshFlowNode = flowInfoService.completeTask(dslCaseTask.getFlowableId(), dslCaseTask.getProcessTaskId(), + // 查询待节点任务 + CaseTask thisCaseTask = mapper.selectById(caseReturn.getCaseTaskId()); + // 完成当前节点任务 + CaseTask thisCaseTaskPO = new CaseTask(); + thisCaseTaskPO.setId(caseReturn.getCaseTaskId()); + thisCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); + thisCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); + thisCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); + thisCaseTaskPO.setHandleDeptId(loginUser.getDeptId()); + thisCaseTaskPO.setHandleDeptName(loginUser.getDeptName()); + thisCaseTaskPO.setHandleUserId(loginUser.getId()); + thisCaseTaskPO.setHandleUserName(loginUser.getTrueName()); + thisCaseTaskPO.setHandleContent(caseReturn.getReturnContent()); + thisCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_4); + thisCaseTaskPO.setHandleTime(nowDate); + thisCaseTaskPO.setUpdateTime(nowDate); + // 计算任务耗时、是否超时、超时多少 + thisCaseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(thisCaseTaskPO.getHandleTime(), thisCaseTask.getCreateTime())); + thisCaseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(thisCaseTaskPO.getHandleTime(), thisCaseTask.getExpireTime())); + thisCaseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(thisCaseTaskPO.getHandleTime(), thisCaseTask.getExpireTime())); + mapper.updateCaseTask(thisCaseTaskPO); + // 完成当前节点工作流任务,走回退审核任务 + FlowNode htshFlowNode = flowInfoService.completeTask(thisCaseTask.getFlowableId(), thisCaseTask.getProcessTaskId(), FlowableConsts.OPERATION_htsq, userId); - // 新建回退审核任务 + // 新建回退审核节点任务 CaseTask htshCaseTask = new CaseTask(); htshCaseTask.setId(utilsClient.getNewTimeId()); - htshCaseTask.setCaseId(dslCaseTask.getCaseId()); + htshCaseTask.setCaseId(thisCaseTask.getCaseId()); htshCaseTask.setFlowableId(htshFlowNode.getFlowableId()); htshCaseTask.setProcessInstanceId(htshFlowNode.getProcessInstanceId()); htshCaseTask.setProcessTaskId(htshFlowNode.getProcessTaskId()); - htshCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); htshCaseTask.setNodeType(htshFlowNode.getNodeType()); htshCaseTask.setNodeId(htshFlowNode.getNodeId()); htshCaseTask.setNodeName(htshFlowNode.getNodeName()); htshCaseTask.setFlowId(htshFlowNode.getFlowId()); htshCaseTask.setNodeShowName(htshFlowNode.getNodeShowName()); - htshCaseTask.setCaseTaskType(dslCaseTask.getCaseTaskType()); - // 受理任务,任务候选执行者类型是上一步骤选择 - htshCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); -// CtUnitDTO ctUnitDTO = custClient.getParentZzzxUnit(loginUser.getUnitId()); - htshCaseTask.setCandeUnitId(loginUser.getUnitId()); - htshCaseTask.setCandeUnitName(loginUser.getUnitName()); - // 受理后的任务,不需要签收 + htshCaseTask.setCaseTaskType(thisCaseTask.getCaseTaskType()); + // 任务所属单位:上级综治中心 + htshCaseTask.setCandeUnitId(zzzxUnit.getId()); + htshCaseTask.setCandeUnitName(zzzxUnit.getUnitName()); + // 受理后的节点任务,不需要签收 htshCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); // 任务处理时限 if (htshFlowNode.getExpire() != 0) { @@ -2373,8 +2775,8 @@ caseReturn.setCaseTaskType(htshCaseTask.getCaseTaskType()); caseReturnService.save(caseReturn); }catch (Exception e){ - log.error("[CaseTaskService.webAppearApply]调用失败,异常信息:"+e, e); - throw new ServiceException("CaseTaskService.webAppearApply", e); + log.error("[CaseTaskService.webReturnApply]调用失败,异常信息:"+e, e); + throw new ServiceException("CaseTaskService.webReturnApply", e); } } @@ -2395,57 +2797,61 @@ caseReturn.setAuditTime(nowDate); caseReturn.setUpdateTime(nowDate); caseReturnService.updateCaseReturn(caseReturn); - // 查询回退审核任务 + // 查询回退审核节点任务 CaseTask htshCaseTask = mapper.selectById(caseReturn.getCaseTaskId()); // 审核通过 if (AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex().equals(caseReturn.getAuditResult())){ - // 完成当前回退审核任务 + // 完成当前回退审核节点任务 CaseTask htshCaseTaskPO = new CaseTask(); htshCaseTaskPO.setId(caseReturn.getCaseTaskId()); htshCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); htshCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); htshCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); + htshCaseTaskPO.setHandleDeptId(loginUser.getDeptId()); + htshCaseTaskPO.setHandleDeptName(loginUser.getDeptName()); htshCaseTaskPO.setHandleUserId(loginUser.getId()); htshCaseTaskPO.setHandleContent(caseReturn.getAuditContent()); htshCaseTaskPO.setHandleUserName(loginUser.getTrueName()); htshCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); htshCaseTaskPO.setHandleTime(nowDate); htshCaseTaskPO.setUpdateTime(nowDate); + // 计算任务耗时、是否超时、超时多少 + htshCaseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(htshCaseTaskPO.getHandleTime(), htshCaseTask.getCreateTime())); + htshCaseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(htshCaseTaskPO.getHandleTime(), htshCaseTask.getExpireTime())); + htshCaseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(htshCaseTaskPO.getHandleTime(), htshCaseTask.getExpireTime())); mapper.updateCaseTask(htshCaseTaskPO); - // 完成当前回退审核任务,承办部门走待分派任务,配合部门结束流程 - FlowNode dfpFlowNode = flowInfoService.completeTask(htshCaseTask.getFlowableId(), htshCaseTask.getProcessTaskId(), + // 完成当前回退审核工作流节点任务,承办组织走待分派节点任务,配合组织结束工作流流程 + FlowNode nextFlowNode = flowInfoService.completeTask(htshCaseTask.getFlowableId(), htshCaseTask.getProcessTaskId(), FlowableConsts.OPERATION_htsh_ty, userId); if (CaseTaskConsts.CASE_TASK_TYPE_1 == htshCaseTask.getCaseTaskType()) { - // 新建待分派任务 - CaseTask dfphCaseTask = new CaseTask(); - dfphCaseTask.setId(utilsClient.getNewTimeId()); - dfphCaseTask.setCaseId(htshCaseTask.getCaseId()); - dfphCaseTask.setFlowableId(dfpFlowNode.getFlowableId()); - dfphCaseTask.setProcessInstanceId(dfpFlowNode.getProcessInstanceId()); - dfphCaseTask.setProcessTaskId(dfpFlowNode.getProcessTaskId()); - dfphCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); - dfphCaseTask.setNodeType(dfpFlowNode.getNodeType()); - dfphCaseTask.setNodeId(dfpFlowNode.getNodeId()); - dfphCaseTask.setNodeName(dfpFlowNode.getNodeName()); - dfphCaseTask.setFlowId(dfpFlowNode.getFlowId()); - dfphCaseTask.setNodeShowName(dfpFlowNode.getNodeShowName()); - dfphCaseTask.setCaseTaskType(htshCaseTask.getCaseTaskType()); - // 受理任务,任务候选执行者类型是上一步骤选择 - dfphCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); - dfphCaseTask.setCandeUnitId(loginUser.getUnitId()); - dfphCaseTask.setCandeUnitName(loginUser.getUnitName()); - // 受理后的任务,不需要签收 - dfphCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); + // 新建下一个节点任务 + CaseTask nextCaseTask = new CaseTask(); + nextCaseTask.setId(utilsClient.getNewTimeId()); + nextCaseTask.setCaseId(htshCaseTask.getCaseId()); + nextCaseTask.setFlowableId(nextFlowNode.getFlowableId()); + nextCaseTask.setProcessInstanceId(nextFlowNode.getProcessInstanceId()); + nextCaseTask.setProcessTaskId(nextFlowNode.getProcessTaskId()); + nextCaseTask.setNodeType(nextFlowNode.getNodeType()); + nextCaseTask.setNodeId(nextFlowNode.getNodeId()); + nextCaseTask.setNodeName(nextFlowNode.getNodeName()); + nextCaseTask.setFlowId(nextFlowNode.getFlowId()); + nextCaseTask.setNodeShowName(nextFlowNode.getNodeShowName()); + nextCaseTask.setCaseTaskType(htshCaseTask.getCaseTaskType()); + // 任务所属单位:回退审核操作组织 + nextCaseTask.setCandeUnitId(loginUser.getUnitId()); + nextCaseTask.setCandeUnitName(loginUser.getUnitName()); + // 受理后的节点任务,不需要签收 + nextCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); // 任务处理时限 - if (dfpFlowNode.getExpire() != 0) { - dfphCaseTask.setExpireTime(DateUtils.addDay(nowDate, dfpFlowNode.getExpire())); + if (nextFlowNode.getExpire() != 0) { + nextCaseTask.setExpireTime(DateUtils.addDay(nowDate, nextFlowNode.getExpire())); } - dfphCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); - dfphCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); - dfphCaseTask.setCustId(dfphCaseTask.getCustId()); - dfphCaseTask.setCreateTime(nowDate); - dfphCaseTask.setUpdateTime(nowDate); - mapper.insert(dfphCaseTask); + nextCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); + nextCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + nextCaseTask.setCustId(nextCaseTask.getCustId()); + nextCaseTask.setCreateTime(nowDate); + nextCaseTask.setUpdateTime(nowDate); + mapper.insert(nextCaseTask); // 更新纠纷信息 CaseInfo caseInfoPO = new CaseInfo(); caseInfoPO.setId(htshCaseTask.getCaseId()); @@ -2457,20 +2863,26 @@ caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes()); caseInfoPO.setUpdateTime(nowDate); caseInfoService.updateCaseInfo(caseInfoPO); - // 有配合部门,也结束配合部门工作流程 + // 有配合组织,结束配合组织工作流程 List<CaseTask> assistCaseTaskList = this.listAssistTasking(htshCaseTask.getCaseId()); for (CaseTask assistCaseTask: assistCaseTaskList){ - // 完成配合部门当前任务 + // 完成配合组织当前任务 assistCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); assistCaseTask.setHandleUnitId(loginUser.getUnitId()); - assistCaseTask.setHandleUnitName(loginUser.getUnitName()); + assistCaseTask.setHandleUnitName(loginUser.getUnitName()+"(承办部门)"); + assistCaseTask.setHandleDeptId(loginUser.getDeptId()); + assistCaseTask.setHandleDeptName(loginUser.getDeptName()+"(承办部门)"); assistCaseTask.setHandleUserId(loginUser.getId()); - assistCaseTask.setHandleUserName(loginUser.getTrueName()); - assistCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); + assistCaseTask.setHandleUserName(loginUser.getTrueName()+"(承办部门)"); + assistCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_0); assistCaseTask.setHandleTime(nowDate); assistCaseTask.setUpdateTime(nowDate); + // 计算任务耗时、是否超时、超时多少 + assistCaseTask.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(assistCaseTask.getHandleTime(), assistCaseTask.getCreateTime())); + assistCaseTask.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(assistCaseTask.getHandleTime(), assistCaseTask.getExpireTime())); + assistCaseTask.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(assistCaseTask.getHandleTime(), assistCaseTask.getExpireTime())); mapper.updateCaseTask(assistCaseTask); - // 结束配合部门当前工作流任务 + // 结束配合组织当前工作流任务 flowInfoService.endFlow(assistCaseTask.getProcessInstanceId()); } }else { @@ -2485,61 +2897,71 @@ } }else { // 审核不通过 - // 完成当前回退审核任务 + // 完成当前回退审核节点任务 CaseTask htshCaseTaskPO = new CaseTask(); htshCaseTaskPO.setId(caseReturn.getCaseTaskId()); htshCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); htshCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); htshCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); + htshCaseTaskPO.setHandleDeptId(loginUser.getDeptId()); + htshCaseTaskPO.setHandleDeptName(loginUser.getDeptName()); htshCaseTaskPO.setHandleUserId(loginUser.getId()); htshCaseTaskPO.setHandleUserName(loginUser.getTrueName()); htshCaseTaskPO.setHandleContent(caseReturn.getAuditContent()); htshCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_2); htshCaseTaskPO.setHandleTime(nowDate); htshCaseTaskPO.setUpdateTime(nowDate); + // 计算任务耗时、是否超时、超时多少 + htshCaseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(htshCaseTaskPO.getHandleTime(), htshCaseTask.getCreateTime())); + htshCaseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(htshCaseTaskPO.getHandleTime(), htshCaseTask.getExpireTime())); + htshCaseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(htshCaseTaskPO.getHandleTime(), htshCaseTask.getExpireTime())); mapper.updateCaseTask(htshCaseTaskPO); + // 查询回退申请信息 CaseReturn btyCaseReturn = caseReturnService.getById(caseReturn.getId()); + // 查询回退申请组织信息 CtUnitDTO returnUnit = custClient.getUnitById(btyCaseReturn.getReturnUnitId()); - String operation = FlowableConsts.OPERATION_htsh_bty; + FlowNode nextFlowNode = null; if (UserBaseConsts.UNIT_GRADE_2 == returnUnit.getUnitGrade()){ - operation = FlowableConsts.OPERATION_htsh_bty_qj; + // 区级组织回退,完成当前回退审核节点任务,进入下一个节点 + nextFlowNode = flowInfoService.completeTask(htshCaseTask.getFlowableId(), htshCaseTask.getProcessTaskId(), + FlowableConsts.OPERATION_htsh_bty_qj, userId); + }else if(UserBaseConsts.UNIT_GRADE_1 == returnUnit.getUnitGrade()){ + // 市级组织回退,完成当前回退审核节点任务,进入下一个节点 + nextFlowNode = flowInfoService.completeTask(htshCaseTask.getFlowableId(), htshCaseTask.getProcessTaskId(), + FlowableConsts.OPERATION_htsh_bty_sj, userId); + }else { + // 完成当前回退审核节点任务,进入下一个节点 + nextFlowNode = flowInfoService.completeTask(htshCaseTask.getFlowableId(), htshCaseTask.getProcessTaskId(), + FlowableConsts.OPERATION_htsh_bty, userId); } - if(UserBaseConsts.UNIT_GRADE_1 == returnUnit.getUnitGrade()){ - operation = FlowableConsts.OPERATION_htsh_bty_sj; - } - // 完成当前上报审核任务,走待受理任务 - FlowNode dslFlowNode = flowInfoService.completeTask(htshCaseTask.getFlowableId(), htshCaseTask.getProcessTaskId(), - operation, userId); - // 新建待分派任务 - CaseTask dslCaseTask = new CaseTask(); - dslCaseTask.setId(utilsClient.getNewTimeId()); - dslCaseTask.setCaseId(htshCaseTask.getCaseId()); - dslCaseTask.setFlowableId(dslFlowNode.getFlowableId()); - dslCaseTask.setProcessInstanceId(dslFlowNode.getProcessInstanceId()); - dslCaseTask.setProcessTaskId(dslFlowNode.getProcessTaskId()); - dslCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); - dslCaseTask.setNodeType(dslFlowNode.getNodeType()); - dslCaseTask.setNodeId(dslFlowNode.getNodeId()); - dslCaseTask.setNodeName(dslFlowNode.getNodeName()); - dslCaseTask.setFlowId(dslFlowNode.getFlowId()); - dslCaseTask.setNodeShowName(dslFlowNode.getNodeShowName()); - dslCaseTask.setCaseTaskType(htshCaseTask.getCaseTaskType()); - // 受理任务,任务候选执行者类型是上一步骤选择 - dslCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); - dslCaseTask.setCandeUnitId(btyCaseReturn.getReturnUnitId()); - dslCaseTask.setCandeUnitName(btyCaseReturn.getReturnUnitName()); - // 受理后的任务,不需要签收 - dslCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); + // 新建下一个节点任务 + CaseTask nextCaseTask = new CaseTask(); + nextCaseTask.setId(utilsClient.getNewTimeId()); + nextCaseTask.setCaseId(htshCaseTask.getCaseId()); + nextCaseTask.setFlowableId(nextFlowNode.getFlowableId()); + nextCaseTask.setProcessInstanceId(nextFlowNode.getProcessInstanceId()); + nextCaseTask.setProcessTaskId(nextFlowNode.getProcessTaskId()); + nextCaseTask.setNodeType(nextFlowNode.getNodeType()); + nextCaseTask.setNodeId(nextFlowNode.getNodeId()); + nextCaseTask.setNodeName(nextFlowNode.getNodeName()); + nextCaseTask.setFlowId(nextFlowNode.getFlowId()); + nextCaseTask.setNodeShowName(nextFlowNode.getNodeShowName()); + nextCaseTask.setCaseTaskType(htshCaseTask.getCaseTaskType()); + // 任务所属组织:回退申请组织 + nextCaseTask.setCandeUnitId(btyCaseReturn.getReturnUnitId()); + nextCaseTask.setCandeUnitName(btyCaseReturn.getReturnUnitName()); + // 受理后的节点任务,不需要签收 + nextCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); // 任务处理时限 - if (dslFlowNode.getExpire() != 0) { - dslCaseTask.setExpireTime(DateUtils.addDay(nowDate, dslFlowNode.getExpire())); + if (nextFlowNode.getExpire() != 0) { + nextCaseTask.setExpireTime(DateUtils.addDay(nowDate, nextFlowNode.getExpire())); } - dslCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); - dslCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); - dslCaseTask.setCustId(dslCaseTask.getCustId()); - dslCaseTask.setCreateTime(nowDate); - dslCaseTask.setUpdateTime(nowDate); - mapper.insert(dslCaseTask); + nextCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); + nextCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + nextCaseTask.setCustId(htshCaseTask.getCustId()); + nextCaseTask.setCreateTime(nowDate); + nextCaseTask.setUpdateTime(nowDate); + mapper.insert(nextCaseTask); } }catch (Exception e){ log.error("[CaseTaskService.webReturnAudit]调用失败,异常信息:"+e, e); @@ -2568,44 +2990,47 @@ caseAppear.setCustId(loginUser.getCustId()); caseAppear.setCreateTime(nowDate); caseAppear.setUpdateTime(nowDate); - // 查询待受理任务 - CaseTask dslCaseTask = mapper.selectById(caseAppear.getCaseTaskId()); - // 完成当前待受理任务 - CaseTask dslCaseTaskPO = new CaseTask(); - dslCaseTaskPO.setId(caseAppear.getCaseTaskId()); - dslCaseTaskPO.setTaskType(CaseTaskConsts.TASK_TYPE_3); - dslCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); - dslCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); - dslCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); - dslCaseTaskPO.setHandleUserId(loginUser.getId()); - dslCaseTaskPO.setHandleUserName(loginUser.getTrueName()); - dslCaseTaskPO.setHandleContent(caseAppear.getAppearContent()); - dslCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); - dslCaseTaskPO.setHandleTime(nowDate); - dslCaseTaskPO.setUpdateTime(nowDate); - mapper.updateCaseTask(dslCaseTaskPO); - // 完成当前待受理工作流任务,走上报审核任务 - FlowNode sbshFlowNode = flowInfoService.completeTask(dslCaseTask.getFlowableId(), dslCaseTask.getProcessTaskId(), + // 查询当前节点任务 + CaseTask thisCaseTask = mapper.selectById(caseAppear.getCaseTaskId()); + // 完成当前当前节点任务 + CaseTask thisCaseTaskPO = new CaseTask(); + thisCaseTaskPO.setId(caseAppear.getCaseTaskId()); + thisCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); + thisCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); + thisCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); + thisCaseTaskPO.setHandleDeptId(loginUser.getDeptId()); + thisCaseTaskPO.setHandleDeptName(loginUser.getDeptName()); + thisCaseTaskPO.setHandleUserId(loginUser.getId()); + thisCaseTaskPO.setHandleUserName(loginUser.getTrueName()); + thisCaseTaskPO.setHandleContent(caseAppear.getAppearContent()); + thisCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_5); + thisCaseTaskPO.setHandleTime(nowDate); + thisCaseTaskPO.setUpdateTime(nowDate); + // 计算任务耗时、是否超时、超时多少 + thisCaseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(thisCaseTaskPO.getHandleTime(), thisCaseTask.getCreateTime())); + thisCaseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(thisCaseTaskPO.getHandleTime(), thisCaseTask.getExpireTime())); + thisCaseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(thisCaseTaskPO.getHandleTime(), thisCaseTask.getExpireTime())); + mapper.updateCaseTask(thisCaseTaskPO); + // 完成当前待受理工作流节点任务,走上报审核任务 + FlowNode sbshFlowNode = flowInfoService.completeTask(thisCaseTask.getFlowableId(), thisCaseTask.getProcessTaskId(), FlowableConsts.OPERATION_sb, userId); // 新建上报审核任务 CaseTask sbshCaseTask = new CaseTask(); sbshCaseTask.setId(utilsClient.getNewTimeId()); - sbshCaseTask.setCaseId(dslCaseTask.getCaseId()); + sbshCaseTask.setCaseId(thisCaseTask.getCaseId()); sbshCaseTask.setFlowableId(sbshFlowNode.getFlowableId()); sbshCaseTask.setProcessInstanceId(sbshFlowNode.getProcessInstanceId()); sbshCaseTask.setProcessTaskId(sbshFlowNode.getProcessTaskId()); - sbshCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); sbshCaseTask.setNodeType(sbshFlowNode.getNodeType()); sbshCaseTask.setNodeId(sbshFlowNode.getNodeId()); sbshCaseTask.setNodeName(sbshFlowNode.getNodeName()); sbshCaseTask.setFlowId(sbshFlowNode.getFlowId()); sbshCaseTask.setNodeShowName(sbshFlowNode.getNodeShowName()); sbshCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); - // 受理任务,任务候选执行者类型是上一步骤选择 - sbshCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + // 任务所属单位,上报审核组织 sbshCaseTask.setCandeUnitId(caseAppear.getAuditUnitId()); sbshCaseTask.setCandeUnitName(caseAppear.getAuditUnitName()); - // 受理后的任务,不需要签收 + // 受理后的节点任务,不需要签收 sbshCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); // 任务处理时限 if (sbshFlowNode.getExpire() != 0) { @@ -2643,22 +3068,28 @@ caseAppear.setAuditTime(nowDate); caseAppear.setUpdateTime(nowDate); caseAppearService.updateCaseAppear(caseAppear); - // 查询上报审核任务 + // 查询上报审核节点任务 CaseTask sbshCaseTask = mapper.selectById(caseAppear.getCaseTaskId()); // 审核通过 if (AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex().equals(caseAppear.getAuditResult())){ - // 完成当前上报审核任务 + // 完成当前上报审核节点任务 CaseTask sbshCaseTaskPO = new CaseTask(); sbshCaseTaskPO.setId(caseAppear.getCaseTaskId()); sbshCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); sbshCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); sbshCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); + sbshCaseTaskPO.setHandleDeptId(loginUser.getDeptId()); + sbshCaseTaskPO.setHandleDeptName(loginUser.getDeptName()); sbshCaseTaskPO.setHandleUserId(loginUser.getId()); sbshCaseTaskPO.setHandleContent(caseAppear.getAuditContent()); sbshCaseTaskPO.setHandleUserName(loginUser.getTrueName()); sbshCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); sbshCaseTaskPO.setHandleTime(nowDate); sbshCaseTaskPO.setUpdateTime(nowDate); + // 计算任务耗时、是否超时、超时多少 + sbshCaseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(sbshCaseTaskPO.getHandleTime(), sbshCaseTask.getCreateTime())); + sbshCaseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(sbshCaseTaskPO.getHandleTime(), sbshCaseTask.getExpireTime())); + sbshCaseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(sbshCaseTaskPO.getHandleTime(), sbshCaseTask.getExpireTime())); mapper.updateCaseTask(sbshCaseTaskPO); // 完成当前上报审核任务,走待分派任务 FlowNode dfpFlowNode = flowInfoService.completeTask(sbshCaseTask.getFlowableId(), sbshCaseTask.getProcessTaskId(), @@ -2670,18 +3101,16 @@ dfphCaseTask.setFlowableId(dfpFlowNode.getFlowableId()); dfphCaseTask.setProcessInstanceId(dfpFlowNode.getProcessInstanceId()); dfphCaseTask.setProcessTaskId(dfpFlowNode.getProcessTaskId()); - dfphCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); dfphCaseTask.setNodeType(dfpFlowNode.getNodeType()); dfphCaseTask.setNodeId(dfpFlowNode.getNodeId()); dfphCaseTask.setNodeName(dfpFlowNode.getNodeName()); dfphCaseTask.setFlowId(dfpFlowNode.getFlowId()); dfphCaseTask.setNodeShowName(dfpFlowNode.getNodeShowName()); dfphCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); - // 受理任务,任务候选执行者类型是上一步骤选择 - dfphCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + // 任务所属单位:上报审核组织 dfphCaseTask.setCandeUnitId(loginUser.getUnitId()); dfphCaseTask.setCandeUnitName(loginUser.getUnitName()); - // 受理后的任务,不需要签收 + // 受理后的节点任务,不需要签收 dfphCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); dfphCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); // 任务处理时限 @@ -2712,12 +3141,18 @@ sbshCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); sbshCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); sbshCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); + sbshCaseTaskPO.setHandleDeptId(loginUser.getDeptId()); + sbshCaseTaskPO.setHandleDeptName(loginUser.getDeptName()); sbshCaseTaskPO.setHandleUserId(loginUser.getId()); sbshCaseTaskPO.setHandleUserName(loginUser.getTrueName()); sbshCaseTaskPO.setHandleContent(caseAppear.getAuditContent()); sbshCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_2); sbshCaseTaskPO.setHandleTime(nowDate); sbshCaseTaskPO.setUpdateTime(nowDate); + // 计算任务耗时、是否超时、超时多少 + sbshCaseTaskPO.setUsetimeHour(TaskUsetimeUtils.getUsetimeHour(sbshCaseTaskPO.getHandleTime(), sbshCaseTask.getCreateTime())); + sbshCaseTaskPO.setOvertimeStatus(TaskUsetimeUtils.getOvertimeStatus(sbshCaseTaskPO.getHandleTime(), sbshCaseTask.getExpireTime())); + sbshCaseTaskPO.setOvertimeHour(TaskUsetimeUtils.getOvertimeHour(sbshCaseTaskPO.getHandleTime(), sbshCaseTask.getExpireTime())); mapper.updateCaseTask(sbshCaseTaskPO); // 完成当前上报审核任务,走待分派任务 FlowNode dfpFlowNode = flowInfoService.completeTask(sbshCaseTask.getFlowableId(), sbshCaseTask.getProcessTaskId(), @@ -2729,19 +3164,17 @@ dfphCaseTask.setFlowableId(dfpFlowNode.getFlowableId()); dfphCaseTask.setProcessInstanceId(dfpFlowNode.getProcessInstanceId()); dfphCaseTask.setProcessTaskId(dfpFlowNode.getProcessTaskId()); - dfphCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); dfphCaseTask.setNodeType(dfpFlowNode.getNodeType()); dfphCaseTask.setNodeId(dfpFlowNode.getNodeId()); dfphCaseTask.setNodeName(dfpFlowNode.getNodeName()); dfphCaseTask.setFlowId(dfpFlowNode.getFlowId()); dfphCaseTask.setNodeShowName(dfpFlowNode.getNodeShowName()); dfphCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); - // 受理任务,任务候选执行者类型是上一步骤选择 - dfphCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + // 任务所属单位:上报申请组织 CaseAppear caseAppearBO = caseAppearService.getById(caseAppear.getId()); dfphCaseTask.setCandeUnitId(caseAppearBO.getAppearUnitId()); dfphCaseTask.setCandeUnitName(caseAppearBO.getAppearUnitName()); - // 受理后的任务,不需要签收 + // 受理后的节点任务,不需要签收 dfphCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); dfphCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); // 任务处理时限 diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/utils/TaskUsetimeUtils.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/utils/TaskUsetimeUtils.java new file mode 100644 index 0000000..6535b80 --- /dev/null +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/utils/TaskUsetimeUtils.java @@ -0,0 +1,82 @@ +package cn.huge.module.cases.utils; + +import cn.huge.base.common.utils.DateUtils; +import org.apache.commons.lang3.StringUtils; + +import java.util.Date; + +/** + * @title: 任务处理耗时计算攻击类 + * @description: 任务处理耗时计算攻击类 + * @company: hugeinfo + * @author: liyj + * @time: 2021-11-05 16:51:48 + * @version: 1.0.0 + */ +public class TaskUsetimeUtils { + + /** + * 任务超时状态,0:未超时,1:已超时 + */ + public static final int OVER_TIME_STATUS_0 = 0; + public static final int OVER_TIME_STATUS_1 = 1; + + /** + * 获取任务处理耗时多少小时 + * @param handleTime 任务处理时间 + * @param createTime 任务下达时间 + * @return + */ + public static int getUsetimeHour(Date handleTime, Date createTime) { + return DateUtils.getDifferHour(handleTime, createTime); + } + + /** + * 判断任务处理是否超时 + * @param handleTime 任务处理时间 + * @param expireTime 任务处理时限 + * @return + */ + public static int getOvertimeStatus(Date handleTime, Date expireTime) { + int overtimeHour = DateUtils.getDifferHour(handleTime, expireTime); + if (overtimeHour > 0) { + // 已超时 + return OVER_TIME_STATUS_1; + }else { + // 未超时 + return OVER_TIME_STATUS_0; + } + } + + /** + * 判断任务处理超时多少小时 + * @param handleTime 任务处理时间 + * @param expireTime 任务处理时限 + * @return + */ + public static int getOvertimeHour(Date handleTime, Date expireTime) { + return DateUtils.getDifferHour(handleTime, expireTime); + } +} +/** + * -------------------_ooOoo_------------------- + * ------------------o8888888o------------------ + * ------------------88" . "88------------------ + * ------------------(| -_- |)------------------ + * ------------------O\ = /O------------------ + * ---------------____/`---'\____--------------- + * -------------.' \\| |// `.------------- + * ------------/ \\||| : |||// \------------ + * -----------/ _||||| -:- |||||- \----------- + * -----------| | \\\ - /// | |----------- + * -----------| \_| ''\---/'' | |----------- + * -----------\ .-\__ `-` ___/-. /----------- + * ---------___`. .' /--.--\ `. . __---------- + * ------."" '< `.___\_<|>_/___.' >'"".------- + * -----| | : `- \`.;`\ _ /`;.`/ - ` : | |----- + * -----\ \ `-. \_ __\ /__ _/ .-` / /----- + * ======`-.____`-.___\_____/___.-`____.-'====== + * -------------------`=---=' + * ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + * ---------佛祖保佑---hugeinfo---永无BUG---------- + */ diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/CustClient.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/CustClient.java index 99b5d6a..738d245 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/CustClient.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/CustClient.java @@ -75,6 +75,15 @@ ReturnBO getParentZzzxUnit(@RequestParam(value = "unitId") String unitId); /** + * 获取本级综治中心 + * @url {ctx}/api/client/ctUnit/getBjZzzx + * @param unitId 组织编号 + * @return Object + */ + @GetMapping("/api/client/ctUnit/getBjZzzx") + ReturnBO getBjZzzx(@RequestParam(value = "unitId") String unitId); + + /** * 查询用户所在的单位信息 * @url {ctx}/api/client/ctUnit/getUnitByUserId * @param userId 用户编号 diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/impl/CustClientImpl.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/impl/CustClientImpl.java index 80592ee..0a008b4 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/impl/CustClientImpl.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/impl/CustClientImpl.java @@ -174,6 +174,28 @@ } /** + * 获取本级综治中心 + * @url {ctx}/api/client/ctUnit/getBjZzzx + * @param unitId 组织编号 + * @return Object + */ + public CtUnitDTO getBjZzzx(String unitId){ + try{ + ReturnBO returnBo = custClient.getBjZzzx(unitId); + if (ReturnConsts.OK == returnBo.getCode()){ + CtUnitDTO ctUnitDTO = objectMapper.convertValue(returnBo.getData(), CtUnitDTO.class); + return ctUnitDTO; + }else{ + log.error("Client外服务接口[CustClientImpl.getBjZzzx]请求异常:" + returnBo.getMsg(), returnBo.getMsg()); + throw new ClientException("CustClientImpl.getBjZzzx", returnBo.getMsg()); + } + }catch (Exception e){ + log.error("service方法[CustClientImpl.getBjZzzx]请求成功,处理异常:"+e, e); + throw new ServiceException("CustClientImpl.getBjZzzx", e); + } + } + + /** * 查询用户所在的单位信息 * @url {ctx}/api/client/ctUnit/getUnitByUserId * @param userId 用户编号 diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/consts/FlowNodeEnum.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/consts/FlowNodeEnum.java index 3cb9742..1783c8b 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/consts/FlowNodeEnum.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/consts/FlowNodeEnum.java @@ -18,7 +18,9 @@ FLOW_NODE_HTSH("HTSH", "回退审核"), FLOW_NODE_BLFK("BLFK", "办理反馈"), FLOW_NODE_JASQ("JASQ", "结案申请"), - FLOW_NODE_JASH("JASH", "结案审核"), + FLOW_NODE_JASH("JASH", "本级结案审核"), + FLOW_NODE_JASH_YJ("JASH_YJ", "一级结案审核"), + FLOW_NODE_JASH_EJ("JASH_EJ", "二级结案审核"), FLOW_NODE_DSRPJ("DSRPJ", "当事人评价"), FLOW_NODE_JAGD("JAGD", "结案归档"), // 镇街级 @@ -114,6 +116,10 @@ return FLOW_NODE_JASQ; case "JASH": return FLOW_NODE_JASH; + case "JASH_YJ": + return FLOW_NODE_JASH_YJ; + case "JASH_EJ": + return FLOW_NODE_JASH_EJ; case "DSRPJ": return FLOW_NODE_DSRPJ; case "JAGD": diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/consts/FlowableConsts.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/consts/FlowableConsts.java index 136cd30..bbd9b09 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/consts/FlowableConsts.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/consts/FlowableConsts.java @@ -1,5 +1,7 @@ package cn.huge.module.flow.consts; +import cn.huge.module.mediate.constant.CaseBaseConstsEnum; + /** * @title: 用户相关常量类 * @description: 用户相关常量 @@ -15,9 +17,11 @@ * 来访登记:GZDYH_LFDJ_3LEVEL_V1 * 联合处置:GZDYH_LHCZ_3LEVEL_V1 */ - public static final String FLOWABLE_ID_LFDJ = "GZDYH_LFDJ_3LEVEL_V1"; - public static final String FLOWABLE_ID_ZXSL = "GZDYH_ZXSL_3LEVEL_V1"; - public static final String FLOWABLE_ID_LHCZ = "GZDYH_LHCZ_3LEVEL_V1"; + public static final String GZDYH_JB_LFDJ_V1 = "GZDYH_JB_LFDJ_V1"; + public static final String GZDYH_JB_ZXPC_V1 = "GZDYH_JB_ZXPC_V1"; + public static final String GZDYH_ZXSL_LFDJ_V1 = "GZDYH_ZXSL_LFDJ_V1"; + public static final String GZDYH_ZXSL_ZXPC_V1 = "GZDYH_ZXSL_ZXPC_V1"; + public static final String GZDYH_LHCZ_V1 = "GZDYH_LHCZ_V1"; /** * 工作流通用任务条件, @@ -31,9 +35,9 @@ * 自行受理:zxsl * 交办给直属组织:jb_zszz,交办给综治中心:jb_zzzx * 受理:sl - * 回退申请:htsq,回退审核同意:htsh_ty,回退审核不同意:htsh_bty,htsh_bty_zj,htsh_bty_qj - * 上报:sb,上报审核同意:htsq_ty,上报审核不同意:htsq_bty - * 结案审核同意:jash_ty,结案审核不同意:jash_bty,htsh_bty_zj,htsh_bty_qj + * 回退申请:htsq,回退审核同意:htsh_ty,回退审核不同意:htsh_bty,htsh_bty_qj,htsh_bty_sj + * 上报:sb,上报审核同意:sbsh_ty,上报审核不同意:sbsh_bty + * 结案审核同意:jash_ty,同意申请上级审核:jash_ty_sq,结案审核不同意:jash_bty, */ public static final String OPERATION_jb_zszz = "jb_zszz"; public static final String OPERATION_jb_zzzx = "jb_zzzx"; @@ -47,7 +51,34 @@ public static final String OPERATION_sbsh_ty = "sbsh_ty"; public static final String OPERATION_sbsh_bty = "sbsh_bty"; public static final String OPERATION_jash_ty = "jash_ty"; + public static final String OPERATION_jash_ty_sq = "jash_ty_sq"; public static final String OPERATION_jash_bty = "jash_bty"; + + /** + * 根据事项来源获取交办流程 + * @param canal + * @return + */ + public static String getJbFlow(String canal){ + if (CaseBaseConstsEnum.CASE_CANAL_3.getIndex().equals(canal)){ + return GZDYH_JB_ZXPC_V1; + }else { + return GZDYH_JB_LFDJ_V1; + } + } + + /** + * 根据事项来源获取自行受理流程 + * @param canal + * @return + */ + public static String getZxslFlow(String canal){ + if (CaseBaseConstsEnum.CASE_CANAL_3.getIndex().equals(canal)){ + return GZDYH_ZXSL_ZXPC_V1; + }else { + return GZDYH_ZXSL_LFDJ_V1; + } + } } /** * -------------------_ooOoo_------------------- diff --git a/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_LFDJ_3LEVEL_V1.bpmn20.xml b/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_JB_LFDJ_V1.bpmn20.xml similarity index 82% copy from dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_LFDJ_3LEVEL_V1.bpmn20.xml copy to dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_JB_LFDJ_V1.bpmn20.xml index 91e5510..1f91bfa 100644 --- a/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_LFDJ_3LEVEL_V1.bpmn20.xml +++ b/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_JB_LFDJ_V1.bpmn20.xml @@ -1,14 +1,14 @@ <?xml version='1.0' encoding='UTF-8'?> <definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:flowable="http://flowable.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.flowable.org/processdef"> - <process id="GZDYH_LFDJ_3LEVEL_V1" name="GZDYH_LFDJ_3LEVEL_V1" isExecutable="true"> - <documentation>GZDYH_LFDJ_3LEVEL_V1</documentation> + <process id="GZDYH_JB_LFDJ_V1" name="GZDYH_JB_LFDJ_V1" isExecutable="true"> + <documentation>GZDYH_JB_LFDJ_V1</documentation> <startEvent id="START" name="开始"/> <userTask id="ZJ_DFP" name="镇街综治中心待分派"/> <sequenceFlow id="sid-B31A9E23-36FD-4F62-B43A-78565EB5F13C" sourceRef="START" targetRef="ZJ_DFP"/> <userTask id="ZJ_DSL" name="镇街级组织待受理"/> <userTask id="BLFK" name="办理反馈"/> <userTask id="JASQ" name="结案申请"/> - <userTask id="JASH" name="结案审核"/> + <userTask id="JASH" name="本级结案审核"/> <userTask id="ZJ_HTSH" name="镇街交办回退-镇街综治中心待审核"/> <userTask id="QJ_SBSH" name="镇街上报-区综治中心待审核"/> <userTask id="QJ_DFP" name="区综治中心待分派"/> @@ -22,20 +22,10 @@ <userTask id="DSRPJ" name="当事人评价"/> <userTask id="JAGD" name="结案归档"/> <endEvent id="END" name="结束"/> - <sequenceFlow id="sid-0BE7C326-1F8B-4223-B72C-06000E33D80C" sourceRef="JAGD" targetRef="END"/> <sequenceFlow id="sid-13C1AC7D-ACE2-45AE-8B02-D9A6E5ADF777" name="通过" sourceRef="BLFK" targetRef="JASQ"> <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='forward'}]]></conditionExpression> </sequenceFlow> <sequenceFlow id="sid-97B79C3A-867D-4057-86E1-58626E22F7E3" name="通过" sourceRef="JASQ" targetRef="JASH"> - <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='forward'}]]></conditionExpression> - </sequenceFlow> - <sequenceFlow id="sid-92A3C4E4-5675-4099-BD6C-E0E0D9742620" name="结案审核同意" sourceRef="JASH" targetRef="DSRPJ"> - <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty'}]]></conditionExpression> - </sequenceFlow> - <sequenceFlow id="sid-B38ABFCE-C643-449F-8AE3-058FE0997A12" name="结案审核不同意" sourceRef="JASH" targetRef="BLFK"> - <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_bty'}]]></conditionExpression> - </sequenceFlow> - <sequenceFlow id="sid-27E60A97-AC85-4978-AC3F-3D1A52A2B3A8" name="通过" sourceRef="DSRPJ" targetRef="JAGD"> <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='forward'}]]></conditionExpression> </sequenceFlow> <sequenceFlow id="sid-4E2FBB65-5E57-4536-8F84-A754A1E0A546" name="受理" sourceRef="SJ_DSL" targetRef="BLFK"> @@ -110,9 +100,6 @@ <sequenceFlow id="sid-080C79C3-4D90-407B-8451-F88A2C4D9F7A" name="市交办回退审核同意" sourceRef="SJ_HTSH" targetRef="SJ_DFP"> <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='htsh_ty'}]]></conditionExpression> </sequenceFlow> - <sequenceFlow id="sid-0B45B4F0-4106-4B5E-A8F4-EFC9832072F8" name="受理" sourceRef="SJ_DFP" targetRef="BLFK"> - <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='sl'}]]></conditionExpression> - </sequenceFlow> <sequenceFlow id="sid-5A452188-7F4A-4160-A8E1-7426B2E324E5" name="区交办镇街综治中心回退审核不同意" sourceRef="QJ_HTSH" targetRef="ZJ_DFP"> <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='htsh_bty'}]]></conditionExpression> </sequenceFlow> @@ -125,9 +112,42 @@ <sequenceFlow id="sid-F8079D11-8A61-4AF1-89B4-194FE609610C" name="市交办市级组织回退审核不同意" sourceRef="SJ_HTSH" targetRef="SJ_DSL"> <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='htsh_bty_sj'}]]></conditionExpression> </sequenceFlow> + <userTask id="JASH_YJ" name="一级结案审核"/> + <sequenceFlow id="sid-27E60A97-AC85-4978-AC3F-3D1A52A2B3A8" name="通过" sourceRef="DSRPJ" targetRef="JAGD"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='forward'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-0BE7C326-1F8B-4223-B72C-06000E33D80C" sourceRef="JAGD" targetRef="END"/> + <userTask id="JASH_EJ" name="二级结案审核"/> + <sequenceFlow id="sid-608D5E79-D8BE-4EB7-B2AE-C5D950CD7A67" name="同意申请上级审核" sourceRef="JASH" targetRef="JASH_YJ"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty_sq'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-0B45B4F0-4106-4B5E-A8F4-EFC9832072F8" name="受理" sourceRef="SJ_DFP" targetRef="BLFK"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='sl'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-B38ABFCE-C643-449F-8AE3-058FE0997A12" name="不同意" sourceRef="JASH" targetRef="BLFK"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_bty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-182D28DC-9E2F-4E19-B83C-88780876884C" name="不同意" sourceRef="JASH_YJ" targetRef="BLFK"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_bty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-AB67B72C-CA8D-4B66-9F11-36A7814A94A9" name="不同意" sourceRef="JASH_EJ" targetRef="BLFK"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_bty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-864EDFD5-BE99-4E33-AD81-C323A98B27EF" name="同意申请上级审核" sourceRef="JASH_YJ" targetRef="JASH_EJ"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty_sq'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-92A3C4E4-5675-4099-BD6C-E0E0D9742620" name="同意" sourceRef="JASH" targetRef="DSRPJ"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-AEEF70CC-28C1-4EF0-B390-59943771D037" name="同意" sourceRef="JASH_YJ" targetRef="DSRPJ"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-43BDB415-52F8-4336-9D02-11EFFFD99E80" name="同意" sourceRef="JASH_EJ" targetRef="DSRPJ"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty'}]]></conditionExpression> + </sequenceFlow> </process> - <bpmndi:BPMNDiagram id="BPMNDiagram_GZDYH_LFDJ_3LEVEL_V1"> - <bpmndi:BPMNPlane bpmnElement="GZDYH_LFDJ_3LEVEL_V1" id="BPMNPlane_GZDYH_LFDJ_3LEVEL_V1"> + <bpmndi:BPMNDiagram id="BPMNDiagram_GZDYH_JB_LFDJ_V1"> + <bpmndi:BPMNPlane bpmnElement="GZDYH_JB_LFDJ_V1" id="BPMNPlane_GZDYH_JB_LFDJ_V1"> <bpmndi:BPMNShape bpmnElement="START" id="BPMNShape_START"> <omgdc:Bounds height="30.0" width="30.0" x="14.999999552965178" y="159.99999560415753"/> </bpmndi:BPMNShape> @@ -174,14 +194,25 @@ <omgdc:Bounds height="80.0" width="100.0" x="897.499951943757" y="569.9999551475067"/> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="DSRPJ" id="BPMNShape_DSRPJ"> - <omgdc:Bounds height="80.0" width="100.0" x="1212.4999728053817" y="279.99999895691855"/> + <omgdc:Bounds height="80.0" width="100.0" x="1384.999959319831" y="134.9999959766866"/> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="JAGD" id="BPMNShape_JAGD"> - <omgdc:Bounds height="79.99999999999994" width="100.0" x="1212.4999542012827" y="419.9999874830249"/> + <omgdc:Bounds height="79.99999999999994" width="100.0" x="1544.9999539554133" y="134.9999915808443"/> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="END" id="BPMNShape_END"> - <omgdc:Bounds height="28.0" width="28.0" x="1248.4999705925593" y="564.9999905377625"/> + <omgdc:Bounds height="28.0" width="28.0" x="1709.999898076062" y="160.99998678267076"/> </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="JASH_YJ" id="BPMNShape_JASH_YJ"> + <omgdc:Bounds height="79.99999999999994" width="100.0" x="1212.4998085200968" y="329.9999901652339"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="JASH_EJ" id="BPMNShape_JASH_EJ"> + <omgdc:Bounds height="80.0" width="100.0" x="1212.4998085200968" y="524.9999843537812"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNEdge bpmnElement="sid-AEEF70CC-28C1-4EF0-B390-59943771D037" id="BPMNEdge_sid-AEEF70CC-28C1-4EF0-B390-59943771D037"> + <omgdi:waypoint x="1312.449808519938" y="369.9999901652339"/> + <omgdi:waypoint x="1409.999959319831" y="369.9999901652339"/> + <omgdi:waypoint x="1409.999959319831" y="214.9499959766866"/> + </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-B31A9E23-36FD-4F62-B43A-78565EB5F13C" id="BPMNEdge_sid-B31A9E23-36FD-4F62-B43A-78565EB5F13C"> <omgdi:waypoint x="44.94999804290022" y="174.99999565478763"/> <omgdi:waypoint x="89.99999731779103" y="174.9999958073552"/> @@ -190,13 +221,13 @@ <omgdi:waypoint x="724.9499861416448" y="589.9999635924936"/> <omgdi:waypoint x="897.499951943757" y="589.9999551937473"/> </bpmndi:BPMNEdge> - <bpmndi:BPMNEdge bpmnElement="sid-92A3C4E4-5675-4099-BD6C-E0E0D9742620" id="BPMNEdge_sid-92A3C4E4-5675-4099-BD6C-E0E0D9742620"> - <omgdi:waypoint x="1262.499984674927" y="214.94999798834328"/> - <omgdi:waypoint x="1262.499977321461" y="279.99999895691855"/> - </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-5A452188-7F4A-4160-A8E1-7426B2E324E5" id="BPMNEdge_sid-5A452188-7F4A-4160-A8E1-7426B2E324E5"> <omgdi:waypoint x="314.9999906122686" y="277.32953442584886"/> <omgdi:waypoint x="189.94999731779103" y="195.62073459326655"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-92A3C4E4-5675-4099-BD6C-E0E0D9742620" id="BPMNEdge_sid-92A3C4E4-5675-4099-BD6C-E0E0D9742620"> + <omgdi:waypoint x="1312.4499891966586" y="174.99999740525425"/> + <omgdi:waypoint x="1384.9999593197122" y="174.99999655919248"/> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-A06559C9-EAA5-4878-80EE-8E7BE802E321" id="BPMNEdge_sid-A06559C9-EAA5-4878-80EE-8E7BE802E321"> <omgdi:waypoint x="139.99999851965512" y="459.9999773502357"/> @@ -211,6 +242,14 @@ <omgdi:waypoint x="1262.4999891966586" y="68.00000020861626"/> <omgdi:waypoint x="972.4999617040171" y="68.00000020861626"/> <omgdi:waypoint x="972.4999617040171" y="134.99999597668656"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-182D28DC-9E2F-4E19-B83C-88780876884C" id="BPMNEdge_sid-182D28DC-9E2F-4E19-B83C-88780876884C"> + <omgdi:waypoint x="1212.4998085200968" y="336.37928375289255"/> + <omgdi:waypoint x="1022.4499617040169" y="208.5870816826154"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-864EDFD5-BE99-4E33-AD81-C323A98B27EF" id="BPMNEdge_sid-864EDFD5-BE99-4E33-AD81-C323A98B27EF"> + <omgdi:waypoint x="1262.4998085200968" y="409.9499901652339"/> + <omgdi:waypoint x="1262.4998085200968" y="524.9999843537812"/> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-84E57742-F82B-4B9B-A71B-ABF25770A9CC" id="BPMNEdge_sid-84E57742-F82B-4B9B-A71B-ABF25770A9CC"> <omgdi:waypoint x="367.723736812224" y="539.9499704957021"/> @@ -229,12 +268,16 @@ <omgdi:waypoint x="339.999990165234" y="540.6698924348469"/> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-27E60A97-AC85-4978-AC3F-3D1A52A2B3A8" id="BPMNEdge_sid-27E60A97-AC85-4978-AC3F-3D1A52A2B3A8"> - <omgdi:waypoint x="1262.4999674899245" y="359.94999895691853"/> - <omgdi:waypoint x="1262.4999595100956" y="419.9999874830249"/> + <omgdi:waypoint x="1484.9499592390052" y="174.9999959370844"/> + <omgdi:waypoint x="1544.9999539553578" y="174.99999355897342"/> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-0BE7C326-1F8B-4223-B72C-06000E33D80C" id="BPMNEdge_sid-0BE7C326-1F8B-4223-B72C-06000E33D80C"> - <omgdi:waypoint x="1262.4999597040683" y="499.94998748302487"/> - <omgdi:waypoint x="1262.4999686641738" y="564.9999905377625"/> + <omgdi:waypoint x="1644.9499539554017" y="174.9999897210863"/> + <omgdi:waypoint x="1709.9998979149514" y="174.99998730154323"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-608D5E79-D8BE-4EB7-B2AE-C5D950CD7A67" id="BPMNEdge_sid-608D5E79-D8BE-4EB7-B2AE-C5D950CD7A67"> + <omgdi:waypoint x="1262.4999521347984" y="214.94999798834328"/> + <omgdi:waypoint x="1262.49984553563" y="329.9999901652339"/> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-C180B358-6A35-4378-8CA9-5BAB85FE89F4" id="BPMNEdge_sid-C180B358-6A35-4378-8CA9-5BAB85FE89F4"> <omgdi:waypoint x="189.94999731740805" y="729.9999771515533"/> @@ -270,9 +313,9 @@ <omgdi:waypoint x="319.1602665374066" y="539.9499704957021"/> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-0B45B4F0-4106-4B5E-A8F4-EFC9832072F8" id="BPMNEdge_sid-0B45B4F0-4106-4B5E-A8F4-EFC9832072F8"> - <omgdi:waypoint x="414.94998591697043" y="749.9999691545976"/> - <omgdi:waypoint x="1021.4999617040171" y="749.9999691545976"/> - <omgdi:waypoint x="1021.499961704017" y="214.94999597668658"/> + <omgdi:waypoint x="414.94998591840306" y="749.9999691545976"/> + <omgdi:waypoint x="997.4999617040171" y="749.9999691545976"/> + <omgdi:waypoint x="997.4999617040171" y="214.94999597668658"/> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-A8908233-78BC-453D-B685-D4482C4A844D" id="BPMNEdge_sid-A8908233-78BC-453D-B685-D4482C4A844D"> <omgdi:waypoint x="529.9999853968442" y="49.99999865889553"/> @@ -295,6 +338,10 @@ <omgdi:waypoint x="629.9499853968215" y="69.99999865889552"/> <omgdi:waypoint x="947.4999617040171" y="69.99999865889552"/> <omgdi:waypoint x="947.4999617040171" y="134.99999597668656"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-AB67B72C-CA8D-4B66-9F11-36A7814A94A9" id="BPMNEdge_sid-AB67B72C-CA8D-4B66-9F11-36A7814A94A9"> + <omgdi:waypoint x="1233.8313086495225" y="524.9999843537812"/> + <omgdi:waypoint x="1011.6146073580152" y="214.94999597668658"/> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-4DC80088-03E0-4790-9A32-5F0361EF0583" id="BPMNEdge_sid-4DC80088-03E0-4790-9A32-5F0361EF0583"> <omgdi:waypoint x="897.499951943757" y="629.9999551937474"/> @@ -338,6 +385,11 @@ <omgdi:waypoint x="189.94999731779103" y="499.9999758270059"/> <omgdi:waypoint x="314.99998591840307" y="499.9999720174086"/> </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-43BDB415-52F8-4336-9D02-11EFFFD99E80" id="BPMNEdge_sid-43BDB415-52F8-4336-9D02-11EFFFD99E80"> + <omgdi:waypoint x="1312.449808520097" y="564.9999843537812"/> + <omgdi:waypoint x="1459.999959319831" y="564.9999843537812"/> + <omgdi:waypoint x="1459.999959319831" y="214.9499959766866"/> + </bpmndi:BPMNEdge> </bpmndi:BPMNPlane> </bpmndi:BPMNDiagram> </definitions> \ No newline at end of file diff --git a/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_LFDJ_3LEVEL_V1.bpmn20.xml b/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_JB_ZXPC_V1.bpmn20.xml similarity index 83% rename from dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_LFDJ_3LEVEL_V1.bpmn20.xml rename to dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_JB_ZXPC_V1.bpmn20.xml index 91e5510..ce2d0ed 100644 --- a/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_LFDJ_3LEVEL_V1.bpmn20.xml +++ b/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_JB_ZXPC_V1.bpmn20.xml @@ -1,14 +1,14 @@ <?xml version='1.0' encoding='UTF-8'?> <definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:flowable="http://flowable.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.flowable.org/processdef"> - <process id="GZDYH_LFDJ_3LEVEL_V1" name="GZDYH_LFDJ_3LEVEL_V1" isExecutable="true"> - <documentation>GZDYH_LFDJ_3LEVEL_V1</documentation> + <process id="GZDYH_JB_ZXPC_V1" name="GZDYH_JB_ZXPC_V1" isExecutable="true"> + <documentation>GZDYH_JB_ZXPC_V1</documentation> <startEvent id="START" name="开始"/> <userTask id="ZJ_DFP" name="镇街综治中心待分派"/> <sequenceFlow id="sid-B31A9E23-36FD-4F62-B43A-78565EB5F13C" sourceRef="START" targetRef="ZJ_DFP"/> <userTask id="ZJ_DSL" name="镇街级组织待受理"/> <userTask id="BLFK" name="办理反馈"/> <userTask id="JASQ" name="结案申请"/> - <userTask id="JASH" name="结案审核"/> + <userTask id="JASH" name="本级结案审核"/> <userTask id="ZJ_HTSH" name="镇街交办回退-镇街综治中心待审核"/> <userTask id="QJ_SBSH" name="镇街上报-区综治中心待审核"/> <userTask id="QJ_DFP" name="区综治中心待分派"/> @@ -19,23 +19,12 @@ <userTask id="SJ_DFP" name="市综治中心待分派"/> <userTask id="SJ_HTSH" name="市交办回退-市综治中心待审核"/> <userTask id="SJ_DSL" name="市级组织待受理"/> - <userTask id="DSRPJ" name="当事人评价"/> <userTask id="JAGD" name="结案归档"/> <endEvent id="END" name="结束"/> - <sequenceFlow id="sid-0BE7C326-1F8B-4223-B72C-06000E33D80C" sourceRef="JAGD" targetRef="END"/> <sequenceFlow id="sid-13C1AC7D-ACE2-45AE-8B02-D9A6E5ADF777" name="通过" sourceRef="BLFK" targetRef="JASQ"> <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='forward'}]]></conditionExpression> </sequenceFlow> <sequenceFlow id="sid-97B79C3A-867D-4057-86E1-58626E22F7E3" name="通过" sourceRef="JASQ" targetRef="JASH"> - <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='forward'}]]></conditionExpression> - </sequenceFlow> - <sequenceFlow id="sid-92A3C4E4-5675-4099-BD6C-E0E0D9742620" name="结案审核同意" sourceRef="JASH" targetRef="DSRPJ"> - <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty'}]]></conditionExpression> - </sequenceFlow> - <sequenceFlow id="sid-B38ABFCE-C643-449F-8AE3-058FE0997A12" name="结案审核不同意" sourceRef="JASH" targetRef="BLFK"> - <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_bty'}]]></conditionExpression> - </sequenceFlow> - <sequenceFlow id="sid-27E60A97-AC85-4978-AC3F-3D1A52A2B3A8" name="通过" sourceRef="DSRPJ" targetRef="JAGD"> <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='forward'}]]></conditionExpression> </sequenceFlow> <sequenceFlow id="sid-4E2FBB65-5E57-4536-8F84-A754A1E0A546" name="受理" sourceRef="SJ_DSL" targetRef="BLFK"> @@ -110,9 +99,6 @@ <sequenceFlow id="sid-080C79C3-4D90-407B-8451-F88A2C4D9F7A" name="市交办回退审核同意" sourceRef="SJ_HTSH" targetRef="SJ_DFP"> <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='htsh_ty'}]]></conditionExpression> </sequenceFlow> - <sequenceFlow id="sid-0B45B4F0-4106-4B5E-A8F4-EFC9832072F8" name="受理" sourceRef="SJ_DFP" targetRef="BLFK"> - <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='sl'}]]></conditionExpression> - </sequenceFlow> <sequenceFlow id="sid-5A452188-7F4A-4160-A8E1-7426B2E324E5" name="区交办镇街综治中心回退审核不同意" sourceRef="QJ_HTSH" targetRef="ZJ_DFP"> <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='htsh_bty'}]]></conditionExpression> </sequenceFlow> @@ -125,9 +111,39 @@ <sequenceFlow id="sid-F8079D11-8A61-4AF1-89B4-194FE609610C" name="市交办市级组织回退审核不同意" sourceRef="SJ_HTSH" targetRef="SJ_DSL"> <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='htsh_bty_sj'}]]></conditionExpression> </sequenceFlow> + <userTask id="JASH_YJ" name="一级结案审核"/> + <sequenceFlow id="sid-0BE7C326-1F8B-4223-B72C-06000E33D80C" sourceRef="JAGD" targetRef="END"/> + <userTask id="JASH_EJ" name="二级结案审核"/> + <sequenceFlow id="sid-608D5E79-D8BE-4EB7-B2AE-C5D950CD7A67" name="同意申请上级审核" sourceRef="JASH" targetRef="JASH_YJ"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty_sq'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-0B45B4F0-4106-4B5E-A8F4-EFC9832072F8" name="受理" sourceRef="SJ_DFP" targetRef="BLFK"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='sl'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-B38ABFCE-C643-449F-8AE3-058FE0997A12" name="不同意" sourceRef="JASH" targetRef="BLFK"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_bty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-182D28DC-9E2F-4E19-B83C-88780876884C" name="不同意" sourceRef="JASH_YJ" targetRef="BLFK"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_bty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-AB67B72C-CA8D-4B66-9F11-36A7814A94A9" name="不同意" sourceRef="JASH_EJ" targetRef="BLFK"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_bty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-864EDFD5-BE99-4E33-AD81-C323A98B27EF" name="同意申请上级审核" sourceRef="JASH_YJ" targetRef="JASH_EJ"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty_sq'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-92A3C4E4-5675-4099-BD6C-E0E0D9742620" name="同意" sourceRef="JASH" targetRef="JAGD"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-AEEF70CC-28C1-4EF0-B390-59943771D037" name="同意" sourceRef="JASH_YJ" targetRef="JAGD"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-43BDB415-52F8-4336-9D02-11EFFFD99E80" name="同意" sourceRef="JASH_EJ" targetRef="JAGD"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty'}]]></conditionExpression> + </sequenceFlow> </process> - <bpmndi:BPMNDiagram id="BPMNDiagram_GZDYH_LFDJ_3LEVEL_V1"> - <bpmndi:BPMNPlane bpmnElement="GZDYH_LFDJ_3LEVEL_V1" id="BPMNPlane_GZDYH_LFDJ_3LEVEL_V1"> + <bpmndi:BPMNDiagram id="BPMNDiagram_GZDYH_JB_ZXPC_V1"> + <bpmndi:BPMNPlane bpmnElement="GZDYH_JB_ZXPC_V1" id="BPMNPlane_GZDYH_JB_ZXPC_V1"> <bpmndi:BPMNShape bpmnElement="START" id="BPMNShape_START"> <omgdc:Bounds height="30.0" width="30.0" x="14.999999552965178" y="159.99999560415753"/> </bpmndi:BPMNShape> @@ -173,15 +189,23 @@ <bpmndi:BPMNShape bpmnElement="SJ_DSL" id="BPMNShape_SJ_DSL"> <omgdc:Bounds height="80.0" width="100.0" x="897.499951943757" y="569.9999551475067"/> </bpmndi:BPMNShape> - <bpmndi:BPMNShape bpmnElement="DSRPJ" id="BPMNShape_DSRPJ"> - <omgdc:Bounds height="80.0" width="100.0" x="1212.4999728053817" y="279.99999895691855"/> - </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="JAGD" id="BPMNShape_JAGD"> - <omgdc:Bounds height="79.99999999999994" width="100.0" x="1212.4999542012827" y="419.9999874830249"/> + <omgdc:Bounds height="79.99999999999994" width="100.0" x="1394.9999584257614" y="134.99999396502994"/> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="END" id="BPMNShape_END"> - <omgdc:Bounds height="28.0" width="28.0" x="1248.4999705925593" y="564.9999905377625"/> + <omgdc:Bounds height="28.0" width="28.0" x="1559.9999535083784" y="160.99999319016956"/> </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="JASH_YJ" id="BPMNShape_JASH_YJ"> + <omgdc:Bounds height="79.99999999999994" width="100.0" x="1212.4998085200968" y="329.9999901652339"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="JASH_EJ" id="BPMNShape_JASH_EJ"> + <omgdc:Bounds height="80.0" width="100.0" x="1212.4998085200968" y="524.9999843537812"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNEdge bpmnElement="sid-AEEF70CC-28C1-4EF0-B390-59943771D037" id="BPMNEdge_sid-AEEF70CC-28C1-4EF0-B390-59943771D037"> + <omgdi:waypoint x="1312.449808520097" y="369.9999901652339"/> + <omgdi:waypoint x="1419.9999584257614" y="369.9999901652339"/> + <omgdi:waypoint x="1419.9999584257614" y="214.9499939650299"/> + </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-B31A9E23-36FD-4F62-B43A-78565EB5F13C" id="BPMNEdge_sid-B31A9E23-36FD-4F62-B43A-78565EB5F13C"> <omgdi:waypoint x="44.94999804290022" y="174.99999565478763"/> <omgdi:waypoint x="89.99999731779103" y="174.9999958073552"/> @@ -190,13 +214,13 @@ <omgdi:waypoint x="724.9499861416448" y="589.9999635924936"/> <omgdi:waypoint x="897.499951943757" y="589.9999551937473"/> </bpmndi:BPMNEdge> - <bpmndi:BPMNEdge bpmnElement="sid-92A3C4E4-5675-4099-BD6C-E0E0D9742620" id="BPMNEdge_sid-92A3C4E4-5675-4099-BD6C-E0E0D9742620"> - <omgdi:waypoint x="1262.499984674927" y="214.94999798834328"/> - <omgdi:waypoint x="1262.499977321461" y="279.99999895691855"/> - </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-5A452188-7F4A-4160-A8E1-7426B2E324E5" id="BPMNEdge_sid-5A452188-7F4A-4160-A8E1-7426B2E324E5"> <omgdi:waypoint x="314.9999906122686" y="277.32953442584886"/> <omgdi:waypoint x="189.94999731779103" y="195.62073459326655"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-92A3C4E4-5675-4099-BD6C-E0E0D9742620" id="BPMNEdge_sid-92A3C4E4-5675-4099-BD6C-E0E0D9742620"> + <omgdi:waypoint x="1312.4499891966561" y="174.999996481484"/> + <omgdi:waypoint x="1394.9999583807491" y="174.99999399366024"/> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-A06559C9-EAA5-4878-80EE-8E7BE802E321" id="BPMNEdge_sid-A06559C9-EAA5-4878-80EE-8E7BE802E321"> <omgdi:waypoint x="139.99999851965512" y="459.9999773502357"/> @@ -211,6 +235,14 @@ <omgdi:waypoint x="1262.4999891966586" y="68.00000020861626"/> <omgdi:waypoint x="972.4999617040171" y="68.00000020861626"/> <omgdi:waypoint x="972.4999617040171" y="134.99999597668656"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-182D28DC-9E2F-4E19-B83C-88780876884C" id="BPMNEdge_sid-182D28DC-9E2F-4E19-B83C-88780876884C"> + <omgdi:waypoint x="1212.4998085200968" y="336.37928375289255"/> + <omgdi:waypoint x="1022.4499617040169" y="208.5870816826154"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-864EDFD5-BE99-4E33-AD81-C323A98B27EF" id="BPMNEdge_sid-864EDFD5-BE99-4E33-AD81-C323A98B27EF"> + <omgdi:waypoint x="1262.4998085200968" y="409.9499901652339"/> + <omgdi:waypoint x="1262.4998085200968" y="524.9999843537812"/> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-84E57742-F82B-4B9B-A71B-ABF25770A9CC" id="BPMNEdge_sid-84E57742-F82B-4B9B-A71B-ABF25770A9CC"> <omgdi:waypoint x="367.723736812224" y="539.9499704957021"/> @@ -228,13 +260,13 @@ <omgdi:waypoint x="339.9999862331806" y="689.9999691545975"/> <omgdi:waypoint x="339.999990165234" y="540.6698924348469"/> </bpmndi:BPMNEdge> - <bpmndi:BPMNEdge bpmnElement="sid-27E60A97-AC85-4978-AC3F-3D1A52A2B3A8" id="BPMNEdge_sid-27E60A97-AC85-4978-AC3F-3D1A52A2B3A8"> - <omgdi:waypoint x="1262.4999674899245" y="359.94999895691853"/> - <omgdi:waypoint x="1262.4999595100956" y="419.9999874830249"/> - </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-0BE7C326-1F8B-4223-B72C-06000E33D80C" id="BPMNEdge_sid-0BE7C326-1F8B-4223-B72C-06000E33D80C"> - <omgdi:waypoint x="1262.4999597040683" y="499.94998748302487"/> - <omgdi:waypoint x="1262.4999686641738" y="564.9999905377625"/> + <omgdi:waypoint x="1494.9499569178465" y="174.99999366469643"/> + <omgdi:waypoint x="1559.9999520980195" y="174.99999327396262"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-608D5E79-D8BE-4EB7-B2AE-C5D950CD7A67" id="BPMNEdge_sid-608D5E79-D8BE-4EB7-B2AE-C5D950CD7A67"> + <omgdi:waypoint x="1262.4999521347984" y="214.94999798834328"/> + <omgdi:waypoint x="1262.49984553563" y="329.9999901652339"/> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-C180B358-6A35-4378-8CA9-5BAB85FE89F4" id="BPMNEdge_sid-C180B358-6A35-4378-8CA9-5BAB85FE89F4"> <omgdi:waypoint x="189.94999731740805" y="729.9999771515533"/> @@ -270,9 +302,9 @@ <omgdi:waypoint x="319.1602665374066" y="539.9499704957021"/> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-0B45B4F0-4106-4B5E-A8F4-EFC9832072F8" id="BPMNEdge_sid-0B45B4F0-4106-4B5E-A8F4-EFC9832072F8"> - <omgdi:waypoint x="414.94998591697043" y="749.9999691545976"/> - <omgdi:waypoint x="1021.4999617040171" y="749.9999691545976"/> - <omgdi:waypoint x="1021.499961704017" y="214.94999597668658"/> + <omgdi:waypoint x="414.94998591840306" y="749.9999691545976"/> + <omgdi:waypoint x="997.4999617040171" y="749.9999691545976"/> + <omgdi:waypoint x="997.4999617040171" y="214.94999597668658"/> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-A8908233-78BC-453D-B685-D4482C4A844D" id="BPMNEdge_sid-A8908233-78BC-453D-B685-D4482C4A844D"> <omgdi:waypoint x="529.9999853968442" y="49.99999865889553"/> @@ -295,6 +327,10 @@ <omgdi:waypoint x="629.9499853968215" y="69.99999865889552"/> <omgdi:waypoint x="947.4999617040171" y="69.99999865889552"/> <omgdi:waypoint x="947.4999617040171" y="134.99999597668656"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-AB67B72C-CA8D-4B66-9F11-36A7814A94A9" id="BPMNEdge_sid-AB67B72C-CA8D-4B66-9F11-36A7814A94A9"> + <omgdi:waypoint x="1233.8313086495225" y="524.9999843537812"/> + <omgdi:waypoint x="1011.6146073580152" y="214.94999597668658"/> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-4DC80088-03E0-4790-9A32-5F0361EF0583" id="BPMNEdge_sid-4DC80088-03E0-4790-9A32-5F0361EF0583"> <omgdi:waypoint x="897.499951943757" y="629.9999551937474"/> @@ -338,6 +374,11 @@ <omgdi:waypoint x="189.94999731779103" y="499.9999758270059"/> <omgdi:waypoint x="314.99998591840307" y="499.9999720174086"/> </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-43BDB415-52F8-4336-9D02-11EFFFD99E80" id="BPMNEdge_sid-43BDB415-52F8-4336-9D02-11EFFFD99E80"> + <omgdi:waypoint x="1312.449808520058" y="564.9999843537812"/> + <omgdi:waypoint x="1469.9999584257614" y="564.9999843537812"/> + <omgdi:waypoint x="1469.9999584257614" y="214.9499939650299"/> + </bpmndi:BPMNEdge> </bpmndi:BPMNPlane> </bpmndi:BPMNDiagram> </definitions> \ No newline at end of file diff --git a/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_LHCZ_3LEVEL_V1.bpmn20.xml b/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_LHCZ_V1.bpmn20.xml similarity index 84% rename from dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_LHCZ_3LEVEL_V1.bpmn20.xml rename to dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_LHCZ_V1.bpmn20.xml index 386c8b8..e178fb3 100644 --- a/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_LHCZ_3LEVEL_V1.bpmn20.xml +++ b/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_LHCZ_V1.bpmn20.xml @@ -1,7 +1,7 @@ <?xml version='1.0' encoding='UTF-8'?> <definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:flowable="http://flowable.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.flowable.org/processdef"> - <process id="GZDYH_LHCZ_3LEVEL_V1" name="GZDYH_LHCZ_3LEVEL_V1" isExecutable="true"> - <documentation>GZDYH_LHCZ_3LEVEL_V1</documentation> + <process id="GZDYH_LHCZ_V1" name="GZDYH_LHCZ_V1" isExecutable="true"> + <documentation>GZDYH_LHCZ_V1</documentation> <startEvent id="START" name="开始"/> <userTask id="BLFK" name="办理反馈"/> <endEvent id="END" name="结束"/> @@ -21,15 +21,15 @@ <sequenceFlow id="sid-898E82EA-FC5A-4EAA-AA8C-B5B74B39D826" name="回退申请" sourceRef="DSL" targetRef="HTSH"> <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='htsq'}]]></conditionExpression> </sequenceFlow> - <sequenceFlow id="sid-2B1A0AA4-9560-41A7-9E4D-7C42107ABFCC" name="回退审核同意" sourceRef="HTSH" targetRef="BLFK"> - <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='htsh_ty'}]]></conditionExpression> - </sequenceFlow> <sequenceFlow id="sid-05F6F2B8-9E23-4AAE-82FE-5F33117881D7" name="回退审核不同意" sourceRef="HTSH" targetRef="END"> <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='htsh_bty'}]]></conditionExpression> </sequenceFlow> + <sequenceFlow id="sid-2B1A0AA4-9560-41A7-9E4D-7C42107ABFCC" name="回退审核同意" sourceRef="HTSH" targetRef="BLFK"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='htsh_ty'}]]></conditionExpression> + </sequenceFlow> </process> - <bpmndi:BPMNDiagram id="BPMNDiagram_GZDYH_LHCZ_3LEVEL_V1"> - <bpmndi:BPMNPlane bpmnElement="GZDYH_LHCZ_3LEVEL_V1" id="BPMNPlane_GZDYH_LHCZ_3LEVEL_V1"> + <bpmndi:BPMNDiagram id="BPMNDiagram_GZDYH_LHCZ_V1"> + <bpmndi:BPMNPlane bpmnElement="GZDYH_LHCZ_V1" id="BPMNPlane_GZDYH_LHCZ_V1"> <bpmndi:BPMNShape bpmnElement="START" id="BPMNShape_START"> <omgdc:Bounds height="30.0" width="30.0" x="15.0" y="160.00001244246837"/> </bpmndi:BPMNShape> @@ -46,27 +46,29 @@ <omgdc:Bounds height="80.0" width="100.0" x="135.0" y="135.00001244246837"/> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="HTSH" id="BPMNShape_HTSH"> - <omgdc:Bounds height="80.0" width="100.0" x="330.0" y="270.0"/> + <omgdc:Bounds height="80.0" width="100.0" x="329.99998033046813" y="303.0302910801833"/> </bpmndi:BPMNShape> <bpmndi:BPMNEdge bpmnElement="sid-A0580378-38E0-44D8-981B-9D048ED42E97" id="BPMNEdge_sid-A0580378-38E0-44D8-981B-9D048ED42E97"> <omgdi:waypoint x="594.9499950929594" y="175.00000240740906"/> <omgdi:waypoint x="689.9999834597113" y="175.00001081646118"/> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-05F6F2B8-9E23-4AAE-82FE-5F33117881D7" id="BPMNEdge_sid-05F6F2B8-9E23-4AAE-82FE-5F33117881D7"> - <omgdi:waypoint x="429.94999999999993" y="289.16666746346476"/> - <omgdi:waypoint x="691.0735362274839" y="180.36679574539076"/> + <omgdi:waypoint x="429.94998033023165" y="363.0302910801833"/> + <omgdi:waypoint x="703.9999834597113" y="363.0302910801833"/> + <omgdi:waypoint x="703.9999834597113" y="188.94993684047955"/> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-295E1BEE-52BD-4CA8-A7E9-654AA5DB7A4D" id="BPMNEdge_sid-295E1BEE-52BD-4CA8-A7E9-654AA5DB7A4D"> <omgdi:waypoint x="429.95000000000005" y="175.00000806243034"/> <omgdi:waypoint x="494.9999953061343" y="175.00000236400123"/> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-898E82EA-FC5A-4EAA-AA8C-B5B74B39D826" id="BPMNEdge_sid-898E82EA-FC5A-4EAA-AA8C-B5B74B39D826"> - <omgdi:waypoint x="380.0" y="214.9500124424684"/> - <omgdi:waypoint x="380.0" y="270.0"/> + <omgdi:waypoint x="379.99999531762205" y="214.9500124424684"/> + <omgdi:waypoint x="379.99998500699314" y="303.0302910801833"/> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-2B1A0AA4-9560-41A7-9E4D-7C42107ABFCC" id="BPMNEdge_sid-2B1A0AA4-9560-41A7-9E4D-7C42107ABFCC"> - <omgdi:waypoint x="428.82777566115067" y="270.0"/> - <omgdi:waypoint x="496.11110853652156" y="214.94999798834328"/> + <omgdi:waypoint x="429.9499803304682" y="323.0302910801833"/> + <omgdi:waypoint x="544.9999953061342" y="323.0302910801833"/> + <omgdi:waypoint x="544.9999953061342" y="214.94999798834328"/> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="sid-97FF5E7D-10E2-45EA-86D6-0653C46C77FF" id="BPMNEdge_sid-97FF5E7D-10E2-45EA-86D6-0653C46C77FF"> <omgdi:waypoint x="44.94999923927441" y="175.00001244246837"/> diff --git a/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_ZXSL_3LEVEL_V1.bpmn20.xml b/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_ZXSL_3LEVEL_V1.bpmn20.xml deleted file mode 100644 index ebee147..0000000 --- a/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_ZXSL_3LEVEL_V1.bpmn20.xml +++ /dev/null @@ -1,85 +0,0 @@ -<?xml version='1.0' encoding='UTF-8'?> -<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:flowable="http://flowable.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.flowable.org/processdef"> - <process id="GZDYH_ZXSL_3LEVEL_V1" name="GZDYH_ZXSL_3LEVEL_V1" isExecutable="true"> - <documentation>GZDYH_ZXSL_3LEVEL_V1</documentation> - <startEvent id="START" name="开始"/> - <userTask id="BLFK" name="办理反馈"/> - <userTask id="JAGD" name="结案归档"/> - <userTask id="JASH" name="结案审核"/> - <endEvent id="END" name="结束"/> - <userTask id="JASQ" name="结案申请"/> - <sequenceFlow id="sid-FE66E67A-D6D4-4E68-BB7E-14A17E87B9E5" sourceRef="JAGD" targetRef="END"/> - <sequenceFlow id="sid-0AE3E811-3EBD-4891-B2BD-F2E091E41541" name="通过" sourceRef="JASQ" targetRef="JASH"> - <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='forward'}]]></conditionExpression> - </sequenceFlow> - <sequenceFlow id="sid-A0580378-38E0-44D8-981B-9D048ED42E97" name="通过" sourceRef="BLFK" targetRef="JASQ"> - <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='forward'}]]></conditionExpression> - </sequenceFlow> - <sequenceFlow id="sid-03DCE158-DCD9-4C4F-803A-FA2795072196" name="结案审核不同意不同意" sourceRef="JASH" targetRef="BLFK"> - <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_bty'}]]></conditionExpression> - </sequenceFlow> - <userTask id="DSL" name="待受理"/> - <sequenceFlow id="sid-6435F238-68D1-434F-8830-9130EE87BE4C" name="通过" sourceRef="DSL" targetRef="BLFK"> - <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='forward'}]]></conditionExpression> - </sequenceFlow> - <sequenceFlow id="sid-B9DCA90A-70F1-4D12-90AE-44A0943FA1B3" sourceRef="START" targetRef="DSL"/> - <sequenceFlow id="sid-78554576-20C8-4A98-9A33-92DD5542AA27" name="结案审核同意" sourceRef="JASH" targetRef="JAGD"> - <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty'}]]></conditionExpression> - </sequenceFlow> - </process> - <bpmndi:BPMNDiagram id="BPMNDiagram_GZDYH_ZXSL_3LEVEL_V1"> - <bpmndi:BPMNPlane bpmnElement="GZDYH_ZXSL_3LEVEL_V1" id="BPMNPlane_GZDYH_ZXSL_3LEVEL_V1"> - <bpmndi:BPMNShape bpmnElement="START" id="BPMNShape_START"> - <omgdc:Bounds height="30.0" width="30.0" x="40.0" y="160.00001244246837"/> - </bpmndi:BPMNShape> - <bpmndi:BPMNShape bpmnElement="BLFK" id="BPMNShape_BLFK"> - <omgdc:Bounds height="80.0" width="100.0" x="314.9999953061343" y="134.99999798834327"/> - </bpmndi:BPMNShape> - <bpmndi:BPMNShape bpmnElement="JAGD" id="BPMNShape_JAGD"> - <omgdc:Bounds height="80.0" width="100.0" x="879.9999856948855" y="134.99999798834327"/> - </bpmndi:BPMNShape> - <bpmndi:BPMNShape bpmnElement="JASH" id="BPMNShape_JASH"> - <omgdc:Bounds height="80.0" width="100.0" x="659.9999901652337" y="134.99999798834327"/> - </bpmndi:BPMNShape> - <bpmndi:BPMNShape bpmnElement="END" id="BPMNShape_END"> - <omgdc:Bounds height="28.0" width="28.0" x="1029.9999834597113" y="161.00001205503818"/> - </bpmndi:BPMNShape> - <bpmndi:BPMNShape bpmnElement="JASQ" id="BPMNShape_JASQ"> - <omgdc:Bounds height="80.0" width="100.0" x="479.99999284744274" y="134.99998591840347"/> - </bpmndi:BPMNShape> - <bpmndi:BPMNShape bpmnElement="DSL" id="BPMNShape_DSL"> - <omgdc:Bounds height="80.0" width="100.0" x="135.0" y="135.00001244246837"/> - </bpmndi:BPMNShape> - <bpmndi:BPMNEdge bpmnElement="sid-03DCE158-DCD9-4C4F-803A-FA2795072196" id="BPMNEdge_sid-03DCE158-DCD9-4C4F-803A-FA2795072196"> - <omgdi:waypoint x="684.9999901652337" y="134.99999798834327"/> - <omgdi:waypoint x="684.9999901652337" y="105.00000053644179"/> - <omgdi:waypoint x="389.9999953061343" y="105.00000053644179"/> - <omgdi:waypoint x="389.9999953061343" y="134.99999798834327"/> - </bpmndi:BPMNEdge> - <bpmndi:BPMNEdge bpmnElement="sid-A0580378-38E0-44D8-981B-9D048ED42E97" id="BPMNEdge_sid-A0580378-38E0-44D8-981B-9D048ED42E97"> - <omgdi:waypoint x="414.94999530600165" y="174.9999943307857"/> - <omgdi:waypoint x="479.9999928473666" y="174.99998957230346"/> - </bpmndi:BPMNEdge> - <bpmndi:BPMNEdge bpmnElement="sid-6435F238-68D1-434F-8830-9130EE87BE4C" id="BPMNEdge_sid-6435F238-68D1-434F-8830-9130EE87BE4C"> - <omgdi:waypoint x="234.95000000000002" y="175.0000084274335"/> - <omgdi:waypoint x="314.99999530610273" y="175.0000019993631"/> - </bpmndi:BPMNEdge> - <bpmndi:BPMNEdge bpmnElement="sid-FE66E67A-D6D4-4E68-BB7E-14A17E87B9E5" id="BPMNEdge_sid-FE66E67A-D6D4-4E68-BB7E-14A17E87B9E5"> - <omgdi:waypoint x="979.9499856948854" y="175.00000415177684"/> - <omgdi:waypoint x="1029.999983378599" y="175.0000103275493"/> - </bpmndi:BPMNEdge> - <bpmndi:BPMNEdge bpmnElement="sid-78554576-20C8-4A98-9A33-92DD5542AA27" id="BPMNEdge_sid-78554576-20C8-4A98-9A33-92DD5542AA27"> - <omgdi:waypoint x="759.949990165133" y="174.99999798834327"/> - <omgdi:waypoint x="879.9999856948855" y="174.99999798834327"/> - </bpmndi:BPMNEdge> - <bpmndi:BPMNEdge bpmnElement="sid-0AE3E811-3EBD-4891-B2BD-F2E091E41541" id="BPMNEdge_sid-0AE3E811-3EBD-4891-B2BD-F2E091E41541"> - <omgdi:waypoint x="579.9499928474428" y="174.99998600593358"/> - <omgdi:waypoint x="659.9999901652095" y="174.99999338149593"/> - </bpmndi:BPMNEdge> - <bpmndi:BPMNEdge bpmnElement="sid-B9DCA90A-70F1-4D12-90AE-44A0943FA1B3" id="BPMNEdge_sid-B9DCA90A-70F1-4D12-90AE-44A0943FA1B3"> - <omgdi:waypoint x="69.94999891869115" y="175.00001244246837"/> - <omgdi:waypoint x="134.99999999999022" y="175.00001244246837"/> - </bpmndi:BPMNEdge> - </bpmndi:BPMNPlane> - </bpmndi:BPMNDiagram> -</definitions> \ No newline at end of file diff --git a/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_ZXSL_LFDJ_V1.bpmn20.xml b/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_ZXSL_LFDJ_V1.bpmn20.xml new file mode 100644 index 0000000..a072fd9 --- /dev/null +++ b/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_ZXSL_LFDJ_V1.bpmn20.xml @@ -0,0 +1,150 @@ +<?xml version='1.0' encoding='UTF-8'?> +<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:flowable="http://flowable.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.flowable.org/processdef"> + <process id="GZDYH_ZXSL_LFDJ_V1" name="GZDYH_ZXSL_LFDJ_V1" isExecutable="true"> + <documentation>GZDYH_ZXSL_LFDJ_V1</documentation> + <startEvent id="START" name="开始"/> + <userTask id="BLFK" name="办理反馈"/> + <userTask id="DSRPJ" name="当事人评价"/> + <userTask id="JAGD" name="结案归档"/> + <userTask id="JASH" name="本级结案审核"/> + <endEvent id="END" name="结束"/> + <userTask id="JASQ" name="结案申请"/> + <sequenceFlow id="sid-FE66E67A-D6D4-4E68-BB7E-14A17E87B9E5" sourceRef="JAGD" targetRef="END"/> + <sequenceFlow id="sid-15046AD2-218B-4567-B05A-26B2D0069DE2" name="通过" sourceRef="DSRPJ" targetRef="JAGD"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='forward'}]]></conditionExpression> + </sequenceFlow> + <userTask id="DSL" name="待受理"/> + <sequenceFlow id="sid-6435F238-68D1-434F-8830-9130EE87BE4C" name="通过" sourceRef="DSL" targetRef="BLFK"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='forward'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-B9DCA90A-70F1-4D12-90AE-44A0943FA1B3" sourceRef="START" targetRef="DSL"/> + <userTask id="sid-3721279E-D127-4E4F-AA7F-920932BBA2F6" name="一级结案审核"/> + <userTask id="sid-027E2C4D-7F66-465E-9CED-FA1DB2E077C8" name="二级结案审核"/> + <sequenceFlow id="sid-A0580378-38E0-44D8-981B-9D048ED42E97" name="通过" sourceRef="BLFK" targetRef="JASQ"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='forward'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-0AE3E811-3EBD-4891-B2BD-F2E091E41541" name="通过" sourceRef="JASQ" targetRef="JASH"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='forward'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-03DCE158-DCD9-4C4F-803A-FA2795072196" name="不同意" sourceRef="JASH" targetRef="BLFK"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_bty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-D110DA84-94D5-43CE-82F7-91BB481EFDE3" name="不同意" sourceRef="sid-3721279E-D127-4E4F-AA7F-920932BBA2F6" targetRef="BLFK"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_bty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-159D170B-A7D9-4C2C-874D-E89F10D4AB91" name="不同意" sourceRef="sid-027E2C4D-7F66-465E-9CED-FA1DB2E077C8" targetRef="BLFK"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_bty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-78554576-20C8-4A98-9A33-92DD5542AA27" name="同意" sourceRef="JASH" targetRef="DSRPJ"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-CD53206F-D795-4270-A5EE-2C78658236F4" name="同意" sourceRef="sid-027E2C4D-7F66-465E-9CED-FA1DB2E077C8" targetRef="DSRPJ"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-F83371AF-2CC4-4DFF-80DC-EAE2405870B4" name="同意" sourceRef="sid-3721279E-D127-4E4F-AA7F-920932BBA2F6" targetRef="DSRPJ"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-D1729BD5-C137-4160-BDFF-6ED0487F9ECB" name="同意申请上级审核" sourceRef="JASH" targetRef="sid-3721279E-D127-4E4F-AA7F-920932BBA2F6"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty_sq'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-EF1A16DD-5311-457E-BDC0-1F5531AFF089" name="同意申请上级审核" sourceRef="sid-3721279E-D127-4E4F-AA7F-920932BBA2F6" targetRef="sid-027E2C4D-7F66-465E-9CED-FA1DB2E077C8"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty_sq'}]]></conditionExpression> + </sequenceFlow> + </process> + <bpmndi:BPMNDiagram id="BPMNDiagram_GZDYH_ZXSL_LFDJ_V1"> + <bpmndi:BPMNPlane bpmnElement="GZDYH_ZXSL_LFDJ_V1" id="BPMNPlane_GZDYH_ZXSL_LFDJ_V1"> + <bpmndi:BPMNShape bpmnElement="START" id="BPMNShape_START"> + <omgdc:Bounds height="30.0" width="30.0" x="40.0" y="160.00001244246837"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="BLFK" id="BPMNShape_BLFK"> + <omgdc:Bounds height="80.0" width="100.0" x="314.9999953061343" y="134.99999798834327"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="DSRPJ" id="BPMNShape_DSRPJ"> + <omgdc:Bounds height="80.0" width="100.0" x="814.9999881535771" y="134.99999798834327"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="JAGD" id="BPMNShape_JAGD"> + <omgdc:Bounds height="80.0" width="100.0" x="979.9999856948855" y="134.99999798834327"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="JASH" id="BPMNShape_JASH"> + <omgdc:Bounds height="80.0" width="100.0" x="639.9999901652337" y="134.99999798834327"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="END" id="BPMNShape_END"> + <omgdc:Bounds height="28.0" width="28.0" x="1129.9999834597113" y="161.00001205503818"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="JASQ" id="BPMNShape_JASQ"> + <omgdc:Bounds height="80.0" width="100.0" x="479.99999284744274" y="134.99998591840347"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="DSL" id="BPMNShape_DSL"> + <omgdc:Bounds height="80.0" width="100.0" x="135.0" y="135.00001244246837"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="sid-3721279E-D127-4E4F-AA7F-920932BBA2F6" id="BPMNShape_sid-3721279E-D127-4E4F-AA7F-920932BBA2F6"> + <omgdc:Bounds height="80.0" width="100.0" x="639.9999710917483" y="329.9999919533732"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="sid-027E2C4D-7F66-465E-9CED-FA1DB2E077C8" id="BPMNShape_sid-027E2C4D-7F66-465E-9CED-FA1DB2E077C8"> + <omgdc:Bounds height="80.0" width="100.0" x="639.9999710917483" y="524.9999746680271"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNEdge bpmnElement="sid-6435F238-68D1-434F-8830-9130EE87BE4C" id="BPMNEdge_sid-6435F238-68D1-434F-8830-9130EE87BE4C"> + <omgdi:waypoint x="234.95000000000002" y="175.0000084274335"/> + <omgdi:waypoint x="314.99999530610273" y="175.0000019993631"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-A0580378-38E0-44D8-981B-9D048ED42E97" id="BPMNEdge_sid-A0580378-38E0-44D8-981B-9D048ED42E97"> + <omgdi:waypoint x="414.94999530600165" y="174.9999943307857"/> + <omgdi:waypoint x="479.9999928473666" y="174.99998957230346"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-FE66E67A-D6D4-4E68-BB7E-14A17E87B9E5" id="BPMNEdge_sid-FE66E67A-D6D4-4E68-BB7E-14A17E87B9E5"> + <omgdi:waypoint x="1079.9499856948855" y="175.00000415177684"/> + <omgdi:waypoint x="1129.999983378599" y="175.0000103275493"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-15046AD2-218B-4567-B05A-26B2D0069DE2" id="BPMNEdge_sid-15046AD2-218B-4567-B05A-26B2D0069DE2"> + <omgdi:waypoint x="914.9499881534662" y="174.99999798834327"/> + <omgdi:waypoint x="979.9999856948592" y="174.99999798834327"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-CD53206F-D795-4270-A5EE-2C78658236F4" id="BPMNEdge_sid-CD53206F-D795-4270-A5EE-2C78658236F4"> + <omgdi:waypoint x="739.9499710917482" y="564.9999746680271"/> + <omgdi:waypoint x="889.9999881535771" y="564.9999746680271"/> + <omgdi:waypoint x="889.9999881535771" y="214.94999798834328"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-B9DCA90A-70F1-4D12-90AE-44A0943FA1B3" id="BPMNEdge_sid-B9DCA90A-70F1-4D12-90AE-44A0943FA1B3"> + <omgdi:waypoint x="69.94999891869115" y="175.00001244246837"/> + <omgdi:waypoint x="134.99999999999022" y="175.00001244246837"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-03DCE158-DCD9-4C4F-803A-FA2795072196" id="BPMNEdge_sid-03DCE158-DCD9-4C4F-803A-FA2795072196"> + <omgdi:waypoint x="664.9999901652337" y="134.99999798834327"/> + <omgdi:waypoint x="664.9999901652337" y="85.00000059604643"/> + <omgdi:waypoint x="389.9999953061343" y="85.00000059604643"/> + <omgdi:waypoint x="389.9999953061343" y="134.99999798834327"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-78554576-20C8-4A98-9A33-92DD5542AA27" id="BPMNEdge_sid-78554576-20C8-4A98-9A33-92DD5542AA27"> + <omgdi:waypoint x="739.9499901651817" y="174.99999798834327"/> + <omgdi:waypoint x="814.9999881535771" y="174.99999798834327"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-F83371AF-2CC4-4DFF-80DC-EAE2405870B4" id="BPMNEdge_sid-F83371AF-2CC4-4DFF-80DC-EAE2405870B4"> + <omgdi:waypoint x="739.9499710917482" y="369.9999919533732"/> + <omgdi:waypoint x="839.9999881535771" y="369.9999919533732"/> + <omgdi:waypoint x="839.9999881535771" y="214.94999798834328"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-D110DA84-94D5-43CE-82F7-91BB481EFDE3" id="BPMNEdge_sid-D110DA84-94D5-43CE-82F7-91BB481EFDE3"> + <omgdi:waypoint x="639.9999710917483" y="369.9999919533732"/> + <omgdi:waypoint x="389.9999953061343" y="369.9999919533732"/> + <omgdi:waypoint x="389.9999953061343" y="214.94999798834328"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-159D170B-A7D9-4C2C-874D-E89F10D4AB91" id="BPMNEdge_sid-159D170B-A7D9-4C2C-874D-E89F10D4AB91"> + <omgdi:waypoint x="639.9999710917483" y="564.9999746680271"/> + <omgdi:waypoint x="339.99999530613434" y="564.9999746680271"/> + <omgdi:waypoint x="339.9999953061343" y="214.94999798834328"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-D1729BD5-C137-4160-BDFF-6ED0487F9ECB" id="BPMNEdge_sid-D1729BD5-C137-4160-BDFF-6ED0487F9ECB"> + <omgdi:waypoint x="689.9999862527238" y="214.94999798834328"/> + <omgdi:waypoint x="689.9999749993676" y="329.9999919533732"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-0AE3E811-3EBD-4891-B2BD-F2E091E41541" id="BPMNEdge_sid-0AE3E811-3EBD-4891-B2BD-F2E091E41541"> + <omgdi:waypoint x="579.9499925881876" y="174.99998602170473"/> + <omgdi:waypoint x="639.9999898334285" y="174.99999255143328"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-EF1A16DD-5311-457E-BDC0-1F5531AFF089" id="BPMNEdge_sid-EF1A16DD-5311-457E-BDC0-1F5531AFF089"> + <omgdi:waypoint x="689.9999710917483" y="409.9499919533732"/> + <omgdi:waypoint x="689.9999710917483" y="524.9999746680271"/> + </bpmndi:BPMNEdge> + </bpmndi:BPMNPlane> + </bpmndi:BPMNDiagram> +</definitions> \ No newline at end of file diff --git a/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_ZXSL_ZXPC_V1.bpmn20.xml b/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_ZXSL_ZXPC_V1.bpmn20.xml new file mode 100644 index 0000000..562fb37 --- /dev/null +++ b/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_ZXSL_ZXPC_V1.bpmn20.xml @@ -0,0 +1,139 @@ +<?xml version='1.0' encoding='UTF-8'?> +<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:flowable="http://flowable.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.flowable.org/processdef"> + <process id="GZDYH_ZXSL_ZXPC_V1" name="GZDYH_ZXSL_ZXPC_V1" isExecutable="true"> + <documentation>GZDYH_ZXSL_ZXPC_V1</documentation> + <startEvent id="START" name="开始"/> + <userTask id="BLFK" name="办理反馈"/> + <userTask id="JAGD" name="结案归档"/> + <userTask id="JASH" name="本级结案审核"/> + <endEvent id="END" name="结束"/> + <userTask id="JASQ" name="结案申请"/> + <sequenceFlow id="sid-FE66E67A-D6D4-4E68-BB7E-14A17E87B9E5" sourceRef="JAGD" targetRef="END"/> + <userTask id="DSL" name="待受理"/> + <sequenceFlow id="sid-6435F238-68D1-434F-8830-9130EE87BE4C" name="通过" sourceRef="DSL" targetRef="BLFK"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='forward'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-B9DCA90A-70F1-4D12-90AE-44A0943FA1B3" sourceRef="START" targetRef="DSL"/> + <userTask id="sid-3721279E-D127-4E4F-AA7F-920932BBA2F6" name="一级结案审核"/> + <userTask id="sid-027E2C4D-7F66-465E-9CED-FA1DB2E077C8" name="二级结案审核"/> + <sequenceFlow id="sid-A0580378-38E0-44D8-981B-9D048ED42E97" name="通过" sourceRef="BLFK" targetRef="JASQ"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='forward'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-0AE3E811-3EBD-4891-B2BD-F2E091E41541" name="通过" sourceRef="JASQ" targetRef="JASH"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='forward'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-03DCE158-DCD9-4C4F-803A-FA2795072196" name="不同意" sourceRef="JASH" targetRef="BLFK"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_bty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-D110DA84-94D5-43CE-82F7-91BB481EFDE3" name="不同意" sourceRef="sid-3721279E-D127-4E4F-AA7F-920932BBA2F6" targetRef="BLFK"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_bty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-159D170B-A7D9-4C2C-874D-E89F10D4AB91" name="不同意" sourceRef="sid-027E2C4D-7F66-465E-9CED-FA1DB2E077C8" targetRef="BLFK"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_bty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-CD53206F-D795-4270-A5EE-2C78658236F4" name="同意" sourceRef="sid-027E2C4D-7F66-465E-9CED-FA1DB2E077C8" targetRef="JAGD"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-F83371AF-2CC4-4DFF-80DC-EAE2405870B4" name="同意" sourceRef="sid-3721279E-D127-4E4F-AA7F-920932BBA2F6" targetRef="JAGD"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-D1729BD5-C137-4160-BDFF-6ED0487F9ECB" name="同意申请上级审核" sourceRef="JASH" targetRef="sid-3721279E-D127-4E4F-AA7F-920932BBA2F6"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty_sq'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-EF1A16DD-5311-457E-BDC0-1F5531AFF089" name="同意申请上级审核" sourceRef="sid-3721279E-D127-4E4F-AA7F-920932BBA2F6" targetRef="sid-027E2C4D-7F66-465E-9CED-FA1DB2E077C8"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty_sq'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-78554576-20C8-4A98-9A33-92DD5542AA27" name="同意" sourceRef="JASH" targetRef="JAGD"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jash_ty'}]]></conditionExpression> + </sequenceFlow> + </process> + <bpmndi:BPMNDiagram id="BPMNDiagram_GZDYH_ZXSL_ZXPC_V1"> + <bpmndi:BPMNPlane bpmnElement="GZDYH_ZXSL_ZXPC_V1" id="BPMNPlane_GZDYH_ZXSL_ZXPC_V1"> + <bpmndi:BPMNShape bpmnElement="START" id="BPMNShape_START"> + <omgdc:Bounds height="30.0" width="30.0" x="40.0" y="160.00001244246837"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="BLFK" id="BPMNShape_BLFK"> + <omgdc:Bounds height="80.0" width="100.0" x="314.9999953061343" y="134.99999798834327"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="JAGD" id="BPMNShape_JAGD"> + <omgdc:Bounds height="80.0" width="100.0" x="809.9999758601195" y="135.0000084191546"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="JASH" id="BPMNShape_JASH"> + <omgdc:Bounds height="80.0" width="100.0" x="639.9999901652337" y="134.99999798834327"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="END" id="BPMNShape_END"> + <omgdc:Bounds height="28.0" width="28.0" x="959.9999736249454" y="161.0000224858495"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="JASQ" id="BPMNShape_JASQ"> + <omgdc:Bounds height="80.0" width="100.0" x="479.99999284744274" y="134.99998591840347"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="DSL" id="BPMNShape_DSL"> + <omgdc:Bounds height="80.0" width="100.0" x="135.0" y="135.00001244246837"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="sid-3721279E-D127-4E4F-AA7F-920932BBA2F6" id="BPMNShape_sid-3721279E-D127-4E4F-AA7F-920932BBA2F6"> + <omgdc:Bounds height="80.0" width="100.0" x="639.9999710917483" y="329.9999919533732"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="sid-027E2C4D-7F66-465E-9CED-FA1DB2E077C8" id="BPMNShape_sid-027E2C4D-7F66-465E-9CED-FA1DB2E077C8"> + <omgdc:Bounds height="80.0" width="100.0" x="639.9999710917483" y="524.9999746680271"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNEdge bpmnElement="sid-6435F238-68D1-434F-8830-9130EE87BE4C" id="BPMNEdge_sid-6435F238-68D1-434F-8830-9130EE87BE4C"> + <omgdi:waypoint x="234.95000000000002" y="175.0000084274335"/> + <omgdi:waypoint x="314.99999530610273" y="175.0000019993631"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-A0580378-38E0-44D8-981B-9D048ED42E97" id="BPMNEdge_sid-A0580378-38E0-44D8-981B-9D048ED42E97"> + <omgdi:waypoint x="414.94999530600165" y="174.9999943307857"/> + <omgdi:waypoint x="479.9999928473666" y="174.99998957230346"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-FE66E67A-D6D4-4E68-BB7E-14A17E87B9E5" id="BPMNEdge_sid-FE66E67A-D6D4-4E68-BB7E-14A17E87B9E5"> + <omgdi:waypoint x="909.9499757645256" y="175.00001458258814"/> + <omgdi:waypoint x="959.999973543833" y="175.00002075836062"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-CD53206F-D795-4270-A5EE-2C78658236F4" id="BPMNEdge_sid-CD53206F-D795-4270-A5EE-2C78658236F4"> + <omgdi:waypoint x="739.9499710917073" y="564.9999746680271"/> + <omgdi:waypoint x="884.9999758601195" y="564.9999746680271"/> + <omgdi:waypoint x="884.9999758601195" y="214.9500084191546"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-B9DCA90A-70F1-4D12-90AE-44A0943FA1B3" id="BPMNEdge_sid-B9DCA90A-70F1-4D12-90AE-44A0943FA1B3"> + <omgdi:waypoint x="69.94999891869115" y="175.00001244246837"/> + <omgdi:waypoint x="134.99999999999022" y="175.00001244246837"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-03DCE158-DCD9-4C4F-803A-FA2795072196" id="BPMNEdge_sid-03DCE158-DCD9-4C4F-803A-FA2795072196"> + <omgdi:waypoint x="664.9999901652337" y="134.99999798834327"/> + <omgdi:waypoint x="664.9999901652337" y="85.00000059604643"/> + <omgdi:waypoint x="389.9999953061343" y="85.00000059604643"/> + <omgdi:waypoint x="389.9999953061343" y="134.99999798834327"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-78554576-20C8-4A98-9A33-92DD5542AA27" id="BPMNEdge_sid-78554576-20C8-4A98-9A33-92DD5542AA27"> + <omgdi:waypoint x="739.949989804752" y="175.00000194545115"/> + <omgdi:waypoint x="809.9999756888376" y="175.00000749490766"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-F83371AF-2CC4-4DFF-80DC-EAE2405870B4" id="BPMNEdge_sid-F83371AF-2CC4-4DFF-80DC-EAE2405870B4"> + <omgdi:waypoint x="739.9499710917482" y="369.9999919533732"/> + <omgdi:waypoint x="834.9999758601195" y="369.9999919533732"/> + <omgdi:waypoint x="834.9999758601195" y="214.9500084191546"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-D110DA84-94D5-43CE-82F7-91BB481EFDE3" id="BPMNEdge_sid-D110DA84-94D5-43CE-82F7-91BB481EFDE3"> + <omgdi:waypoint x="639.9999710917483" y="369.9999919533732"/> + <omgdi:waypoint x="389.9999953061343" y="369.9999919533732"/> + <omgdi:waypoint x="389.9999953061343" y="214.94999798834328"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-159D170B-A7D9-4C2C-874D-E89F10D4AB91" id="BPMNEdge_sid-159D170B-A7D9-4C2C-874D-E89F10D4AB91"> + <omgdi:waypoint x="639.9999710917483" y="564.9999746680271"/> + <omgdi:waypoint x="339.99999530613434" y="564.9999746680271"/> + <omgdi:waypoint x="339.9999953061343" y="214.94999798834328"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-D1729BD5-C137-4160-BDFF-6ED0487F9ECB" id="BPMNEdge_sid-D1729BD5-C137-4160-BDFF-6ED0487F9ECB"> + <omgdi:waypoint x="689.9999862527238" y="214.94999798834328"/> + <omgdi:waypoint x="689.9999749993676" y="329.9999919533732"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-0AE3E811-3EBD-4891-B2BD-F2E091E41541" id="BPMNEdge_sid-0AE3E811-3EBD-4891-B2BD-F2E091E41541"> + <omgdi:waypoint x="579.9499925881876" y="174.99998602170473"/> + <omgdi:waypoint x="639.9999898334285" y="174.99999255143328"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-EF1A16DD-5311-457E-BDC0-1F5531AFF089" id="BPMNEdge_sid-EF1A16DD-5311-457E-BDC0-1F5531AFF089"> + <omgdi:waypoint x="689.9999710917483" y="409.9499919533732"/> + <omgdi:waypoint x="689.9999710917483" y="524.9999746680271"/> + </bpmndi:BPMNEdge> + </bpmndi:BPMNPlane> + </bpmndi:BPMNDiagram> +</definitions> \ No newline at end of file -- Gitblit v1.8.0