From 9b540b646aa7171d3d3ba707457b86445dc71dc7 Mon Sep 17 00:00:00 2001 From: liyj <1003249715@qq.com> Date: Mon, 09 Sep 2024 20:04:23 +0800 Subject: [PATCH] 1、事件流转相关接口优化 --- dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CasePageDTO.java | 2 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/SignTaskDTO.java | 29 dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/consts/FlowableConsts.java | 71 + dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/dao/mapper/xml/CaseDispMapper.xml | 16 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java | 823 +++++++++++++++++++++ dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/AssignTaskDTO.java | 6 dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_LFDJ_3LEVEL_V1.bpmn20.xml | 343 +++++++++ dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java | 31 dyh-service/dyh-mediate/src/test/java/cn/huge/module/BuildCodeServiceTest.java | 3 dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/impl/SysClientImpl.java | 27 dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/controller/web/CaseDispWebController.java | 14 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseTaskMapper.xml | 15 dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/SysClient.java | 11 dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/service/FlowInfoService.java | 144 +++ dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/CustClient.java | 9 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/bo/CaseInfoUnfoldBO.java | 4 dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/dao/mapper/FlowNodeMapper.java | 2 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseWindupApplyService.java | 13 dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_ZXSL_3LEVEL_V1.bpmn20.xml | 96 ++ dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseWindupApply.java | 8 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseInfoUnfold.java | 24 dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/controller/web/FlowNodeWebController.java | 12 dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/dao/mapper/xml/DispNormCauseMapper.xml | 2 dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/impl/CustClientImpl.java | 25 dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/domain/bo/FlowableNodeBO.java | 2 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/consts/CaseTaskConsts.java | 5 dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/dao/mapper/xml/FlowableNodeMapper.xml | 26 dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/dao/mapper/xml/FlowNodeMapper.xml | 14 dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/consts/FlowNodeEnum.java | 20 dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/domain/po/CaseDisp.java | 14 dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/domain/po/FlowNode.java | 26 dyh-service/dyh-base/src/main/java/cn/huge/module/cust/dto/CtUnitDTO.java | 25 dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/domain/dto/ZzzxUnitDTO.java | 10 dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/controller/web/FlowableNodeWebController.java | 22 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoUnfoldWebController.java | 74 - dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoUnfoldMapper.xml | 52 dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/service/FlowableNodeService.java | 2 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/AcceptTaskDTO.java | 26 dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/service/SysDispService.java | 2 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java | 71 + dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseTask.java | 18 dyh-service/dyh-base/src/main/java/cn/huge/module/mediate/constant/CaseProcessBaseConstsEnum.java | 32 dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/controller/client/CtUnitClientController.java | 27 dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/domain/po/FlowableNode.java | 26 dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/domain/bo/CaseDispBO.java | 2 dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/service/FlowNodeService.java | 15 dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/domain/bo/FlowNodeBO.java | 2 dyh-service/dyh-mediate/src/main/java/cn/huge/module/buildcode/service/BuildCodeService.java | 8 dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/dao/mapper/FlowableNodeMapper.java | 2 dyh-service/dyh-sys/src/test/java/cn/huge/module/BuildCodeServiceTest.java | 5 50 files changed, 2,017 insertions(+), 241 deletions(-) diff --git a/dyh-service/dyh-base/src/main/java/cn/huge/module/cust/dto/CtUnitDTO.java b/dyh-service/dyh-base/src/main/java/cn/huge/module/cust/dto/CtUnitDTO.java index 84bee4e..95d6bab 100644 --- a/dyh-service/dyh-base/src/main/java/cn/huge/module/cust/dto/CtUnitDTO.java +++ b/dyh-service/dyh-base/src/main/java/cn/huge/module/cust/dto/CtUnitDTO.java @@ -195,5 +195,30 @@ */ private Date updateTime; + /** + * 邮政编码 + */ + private String postalCode; + + /** + * 联系电话 + */ + private String telephone; + + /** + * 办公时间,周 + */ + private String workTimeWeek; + + /** + * 办公时间,上午 + */ + private String workTimeAm; + + /** + * 办公时间,下午 + */ + private String workTimePm; + } diff --git a/dyh-service/dyh-base/src/main/java/cn/huge/module/mediate/constant/CaseProcessBaseConstsEnum.java b/dyh-service/dyh-base/src/main/java/cn/huge/module/mediate/constant/CaseProcessBaseConstsEnum.java index 7c50ae0..61ce4ff 100644 --- a/dyh-service/dyh-base/src/main/java/cn/huge/module/mediate/constant/CaseProcessBaseConstsEnum.java +++ b/dyh-service/dyh-base/src/main/java/cn/huge/module/mediate/constant/CaseProcessBaseConstsEnum.java @@ -85,4 +85,36 @@ return 0; } + /** + * 根据事项状态获取事项进度 + * @param caseStatus 事项状态 + * @return + */ + public static CaseProcessBaseConstsEnum getByStatus(int caseStatus) { + if (CaseStatusBaseConstsEnum.CASE_STATUS_1.getIndex() == caseStatus){ + return CaseProcessBaseConstsEnum.CASE_PROCESS_2; + + }else if (CaseStatusBaseConstsEnum.CASE_STATUS_2.getIndex() == caseStatus){ + return CaseProcessBaseConstsEnum.CASE_PROCESS_2; + + }if (CaseStatusBaseConstsEnum.CASE_STATUS_3.getIndex() == caseStatus){ + return CaseProcessBaseConstsEnum.CASE_PROCESS_2; + + }if (CaseStatusBaseConstsEnum.CASE_STATUS_4.getIndex() == caseStatus){ + return CaseProcessBaseConstsEnum.CASE_PROCESS_3; + + }if (CaseStatusBaseConstsEnum.CASE_STATUS_5.getIndex() == caseStatus){ + return CaseProcessBaseConstsEnum.CASE_PROCESS_4; + + }if (CaseStatusBaseConstsEnum.CASE_STATUS_6.getIndex() == caseStatus){ + return CaseProcessBaseConstsEnum.CASE_PROCESS_5; + + }if (CaseStatusBaseConstsEnum.CASE_STATUS_7.getIndex() == caseStatus){ + return CaseProcessBaseConstsEnum.CASE_PROCESS_6; + + }else { + return null; + } + } + } 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 a25a9fe..64837de 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 @@ -1,11 +1,16 @@ package cn.huge.module.ctuser.controller.client; +import cn.huge.base.common.utils.ObjectUtils; import cn.huge.base.common.utils.ReturnFailUtils; import cn.huge.base.common.utils.ReturnSucUtils; import cn.huge.module.ctuser.domain.po.CtUnit; +import cn.huge.module.ctuser.domain.po.CtUser; import cn.huge.module.ctuser.service.CtUnitService; import cn.huge.module.ctuser.service.CtUserService; +import cn.huge.module.cust.dto.CtUnitDTO; +import cn.huge.module.cust.dto.CtUserDTO; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -48,4 +53,26 @@ return ReturnFailUtils.getRepInfo(); } } + + /** + * 根据id查询组织信息 + * @url {ctx}/api/client/ctUnit/getUnitById + * @param unitId 组织编号 + * @return Object + */ + @GetMapping("/getUnitById") + public Object getUnitById(@RequestParam(value = "unitId") String unitId) { + try { + CtUnit ctUnit = service.getById(unitId); + if (ObjectUtils.isNotEmpty(ctUnit)){ + CtUnitDTO ctUnitDTO = new CtUnitDTO(); + BeanUtils.copyProperties(ctUnit, ctUnitDTO); + return ReturnSucUtils.getRepInfo(ctUnitDTO); + }else { + return ReturnFailUtils.getRepInfo("查询组织不存在!"); + } + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(); + } + } } diff --git a/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/controller/web/CaseDispWebController.java b/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/controller/web/CaseDispWebController.java index aab61b7..8bf8d8a 100644 --- a/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/controller/web/CaseDispWebController.java +++ b/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/controller/web/CaseDispWebController.java @@ -15,13 +15,15 @@ import javax.servlet.http.HttpServletRequest; import java.util.Map; +import java.util.stream.Collectors; +import java.util.stream.Stream; /** * @title: 纠纷调度单表接口api-web端 * @description: 纠纷调度单表接口api-web端 * @company: hugeinfo * @author: liyj - * @time: 2024-09-03 10:20:49 + * @time: 2024-09-08 15:33:39 * @version: 1.0.0 */ @Slf4j @@ -111,6 +113,16 @@ if (StringUtils.isNotBlank(targetName)){ terms.put("targetName", targetName); } + // 调度目标组织级别,1:市级,2:区级,3:镇街级,4:村居级 + String targetUnitGrade = request.getParameter("targetUnitGrade"); + if (StringUtils.isNotBlank(targetUnitGrade)){ + terms.put("targetUnitGrade", targetUnitGrade); + } + // 调度目标组织类型,0:政法委,1:综治中心,2:直属部门,3:法院,4:行专业调委会,5:企事业调委会,6:演示测试,9:其他 + String targetUnitType = request.getParameter("targetUnitType"); + if (StringUtils.isNotBlank(targetUnitType)){ + terms.put("targetUnitType", targetUnitType); + } // 调度时间 String dispTime = request.getParameter("dispTime"); if (StringUtils.isNotBlank(dispTime)){ diff --git a/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/dao/mapper/xml/CaseDispMapper.xml b/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/dao/mapper/xml/CaseDispMapper.xml index 35044aa..e4edf22 100644 --- a/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/dao/mapper/xml/CaseDispMapper.xml +++ b/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/dao/mapper/xml/CaseDispMapper.xml @@ -5,10 +5,10 @@ * @description: 自定义sql,请自行实现业务逻辑 * @company: hugeinfo * @author: liyj - * @time:2024-09-03 10:20:49 + * @time:2024-09-08 15:33:39 * @version 1.0.0 --> -<mapper namespace="cn.huge.module.disp.dao.mapper.CaseDispMapper"> +<mapper namespace="cn.huge.module.casedisp.dao.mapper.CaseDispMapper"> <!-- 结果集 --> <resultMap id="dataResult" type="cn.huge.module.casedisp.domain.po.CaseDisp"> <result property="id" column="id"/> @@ -25,6 +25,8 @@ <result property="targetTypeName" column="target_type_name"/> <result property="targetId" column="target_id"/> <result property="targetName" column="target_name"/> + <result property="targetUnitGrade" column="target_unit_grade"/> + <result property="targetUnitType" column="target_unit_type"/> <result property="dispTime" column="disp_time"/> <result property="dispStatus" column="disp_status"/> <result property="custId" column="cust_id"/> @@ -50,6 +52,8 @@ target_type_name, target_id, target_name, + target_unit_grade, + target_unit_type, disp_time, disp_status, cust_id, @@ -72,6 +76,8 @@ <if test="entity.targetTypeName != null">target_type_name = #{entity.targetTypeName},</if> <if test="entity.targetId != null">target_id = #{entity.targetId},</if> <if test="entity.targetName != null">target_name = #{entity.targetName},</if> + <if test="entity.targetUnitGrade != null">target_unit_grade = #{entity.targetUnitGrade},</if> + <if test="entity.targetUnitType != null">target_unit_type = #{entity.targetUnitType},</if> <if test="entity.dispTime != null">disp_time = #{entity.dispTime},</if> <if test="entity.dispStatus != null">disp_status = #{entity.dispStatus},</if> <if test="entity.custId != null">cust_id = #{entity.custId},</if> @@ -125,6 +131,12 @@ <if test="terms.targetName != null and terms.targetName !=''"> and target_name = #{terms.targetName} </if> + <if test="terms.targetUnitGrade != null and terms.targetUnitGrade !=''"> + and target_unit_grade = #{terms.targetUnitGrade} + </if> + <if test="terms.targetUnitType != null and terms.targetUnitType !=''"> + and target_unit_type = #{terms.targetUnitType} + </if> <if test="terms.dispTime != null and terms.dispTime !=''"> and disp_time = #{terms.dispTime} </if> diff --git a/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/dao/mapper/xml/DispNormCauseMapper.xml b/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/dao/mapper/xml/DispNormCauseMapper.xml index 4aca136..dfdad1d 100644 --- a/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/dao/mapper/xml/DispNormCauseMapper.xml +++ b/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/dao/mapper/xml/DispNormCauseMapper.xml @@ -164,7 +164,7 @@ <!-- 根据条件获取对应综治中心组织 --> <select id="getZzzxUnitByTerms" resultType="cn.huge.module.casedisp.domain.dto.ZzzxUnitDTO"> SELECT - id as 'unitId', unit_name as 'unitName' + id as unitId, unit_name as unitName, unit_grade as unitGrade, unit_type as unitType FROM dyh_ct_unit where unit_type = 1 <include refid="getZzzxUnitByTerms-where-part"/> diff --git a/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/domain/bo/CaseDispBO.java b/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/domain/bo/CaseDispBO.java index 68ba1dc..cc66460 100644 --- a/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/domain/bo/CaseDispBO.java +++ b/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/domain/bo/CaseDispBO.java @@ -7,7 +7,7 @@ * @description: 纠纷调度单表业务扩展类 * @company: hugeinfo * @author: liyj - * @time: 2024-09-03 10:20:49 + * @time: 2024-09-08 15:33:39 * @version: 1.0.0 * @see cn.huge.module.casedisp.domain.po.CaseDisp */ diff --git a/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/domain/dto/ZzzxUnitDTO.java b/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/domain/dto/ZzzxUnitDTO.java index c88b2d9..6d699b0 100644 --- a/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/domain/dto/ZzzxUnitDTO.java +++ b/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/domain/dto/ZzzxUnitDTO.java @@ -26,4 +26,14 @@ */ private String unitName; + /** + * 组织级别 + */ + private Integer unitGrade; + + /** + * 组织类型 + */ + private Integer unitType; + } diff --git a/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/domain/po/CaseDisp.java b/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/domain/po/CaseDisp.java index 41b41a6..03c9704 100644 --- a/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/domain/po/CaseDisp.java +++ b/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/domain/po/CaseDisp.java @@ -13,7 +13,7 @@ * @description: PO中的属性与数据表是一一对应关系,如需根据业务处理不同,请使用BO对象。 * @company:hugeinfo * @author: liyj - * @time: 2024-09-03 10:20:49 + * @time: 2024-09-08 15:35:07 * @version 1.0.0 */ @TableName(value = "dyh_case_disp") @@ -105,6 +105,18 @@ private String targetName; /** + * 调度目标组织级别,1:市级,2:区级,3:镇街级,4:村居级 + */ + @TableField(value = "target_unit_grade") + private Integer targetUnitGrade; + + /** + * 调度目标组织类型,0:政法委,1:综治中心,2:直属部门,3:法院,4:行专业调委会,5:企事业调委会,6:演示测试,9:其他 + */ + @TableField(value = "target_unit_type") + private Integer targetUnitType; + + /** * 调度时间 */ @TableField(value = "disp_time") diff --git a/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/service/SysDispService.java b/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/service/SysDispService.java index 6e98c3f..8311cfd 100644 --- a/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/service/SysDispService.java +++ b/dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/service/SysDispService.java @@ -193,6 +193,8 @@ caseDisp.setTargetTypeName(DispBaseConstsEnum.TARGET_TYPE_1.getDes()); caseDisp.setTargetId(zzzxUnitDTO.getUnitId()); caseDisp.setTargetName(zzzxUnitDTO.getUnitName()); + caseDisp.setTargetUnitGrade(zzzxUnitDTO.getUnitGrade()); + caseDisp.setTargetUnitType(zzzxUnitDTO.getUnitType()); } caseDispService.save(caseDisp); return caseDisp; diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/buildcode/service/BuildCodeService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/buildcode/service/BuildCodeService.java index 79cc023..79fa234 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/buildcode/service/BuildCodeService.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/buildcode/service/BuildCodeService.java @@ -111,13 +111,13 @@ // 必须 this.buildPo(tplData); this.buildBo(tplData); - this.buildDaoMapper(tplData); +// this.buildDaoMapper(tplData); this.buildDaoMapperXml(tplData); - this.buildService(tplData); +// this.buildService(tplData); this.buildWebController(tplData); // 可选 - this.buildWechatController(tplData); - this.buildJson(tplData); +// this.buildWechatController(tplData); +// this.buildJson(tplData); // this.buildJsForm(tplData); } catch (TemplateNotFoundException e) { log.error("TemplateNotFoundException"); 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 0c35092..d0fa312 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,7 +11,7 @@ public class CaseTaskConsts { /** - * 任务类型,1:正常任务,2:回退审核任务,3:上报审核任务 + * 任务类型,1:正常流转,2:回退申请,3:上报申请 */ public static final int TASK_TYPE_1 = 1; public static final int TASK_TYPE_2 = 2; @@ -45,11 +45,10 @@ public static final int TASK_STATUS_2 = 2; /** - * 处理结果,1:通过,2:回退,3:上报 + * 处理结果,1:通过,2:不通过 */ public static final int HANDLE_RESULT_1 = 1; public static final int HANDLE_RESULT_2 = 2; - public static final int HANDLE_RESULT_3 = 3; } /** * -------------------_ooOoo_------------------- diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoUnfoldWebController.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoUnfoldWebController.java index e181220..d920290 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoUnfoldWebController.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoUnfoldWebController.java @@ -2,7 +2,6 @@ import cn.huge.base.common.utils.ReturnFailUtils; import cn.huge.base.common.utils.ReturnSucUtils; -import cn.huge.base.config.CurrentUser; import cn.huge.module.cases.domain.po.CaseInfoUnfold; import cn.huge.module.cases.service.CaseInfoUnfoldService; import com.google.common.collect.Maps; @@ -23,8 +22,8 @@ * @title: 纠纷信息扩展表接口api-web端 * @description: 纠纷信息扩展表接口api-web端 * @company: hugeinfo - * @author: wangwh - * @time: 2024-08-27 20:36:04 + * @author: liyj + * @time: 2024-09-09 19:58:25 * @version: 1.0.0 */ @Slf4j @@ -44,15 +43,15 @@ */ private Map<String, Object> getParameter(){ Map<String, Object> terms = Maps.newHashMap(); - // 主键编号 + // 纠纷编号 String id = request.getParameter("id"); if (StringUtils.isNotBlank(id)){ terms.put("id", id); } - // 纠纷编号 - String caseId = request.getParameter("caseId"); - if (StringUtils.isNotBlank(caseId)){ - terms.put("caseId", caseId); + // 受理时间 + String acceptTime = request.getParameter("acceptTime"); + if (StringUtils.isNotBlank(acceptTime)){ + terms.put("acceptTime", acceptTime); } // 实际调解组织编号 String mediateUnitId = request.getParameter("mediateUnitId"); @@ -88,6 +87,16 @@ String mediatorMobile = request.getParameter("mediatorMobile"); if (StringUtils.isNotBlank(mediatorMobile)){ terms.put("mediatorMobile", mediatorMobile); + } + // 配合组织,多个用,隔开 + String assistUnitId = request.getParameter("assistUnitId"); + if (StringUtils.isNotBlank(assistUnitId)){ + terms.put("assistUnitId", assistUnitId); + } + // 配合组织名称,多个用、隔开 + String assistUnitName = request.getParameter("assistUnitName"); + if (StringUtils.isNotBlank(assistUnitName)){ + terms.put("assistUnitName", assistUnitName); } // 调解开始时间 String mediStartTime = request.getParameter("mediStartTime"); @@ -153,6 +162,11 @@ String courtName = request.getParameter("courtName"); if (StringUtils.isNotBlank(courtName)){ terms.put("courtName", courtName); + } + // 办结时间 + String closeTime = request.getParameter("closeTime"); + if (StringUtils.isNotBlank(closeTime)){ + terms.put("closeTime", closeTime); } // 是否申请司法确认,0:未申请,1:已申请 String judicApply = request.getParameter("judicApply"); @@ -268,20 +282,6 @@ terms.put("updateStart", updateStart); terms.put("updateEnd", updateEnd); } - // 更新时间区间 - String acceptTimeStart = request.getParameter("acceptTimeStart"); - String acceptTimeEnd = request.getParameter("acceptTimeEnd"); - if(StringUtils.isNotBlank(acceptTimeStart) && StringUtils.isNotBlank(acceptTimeEnd)) { - terms.put("acceptTimeStart", acceptTimeStart); - terms.put("acceptTimeEnd", acceptTimeEnd); - } - // 更新时间区间 - String closeTimeStart = request.getParameter("closeTimeStart"); - String closeTimeEnd = request.getParameter("closeTimeEnd"); - if(StringUtils.isNotBlank(closeTimeStart) && StringUtils.isNotBlank(closeTimeEnd)) { - terms.put("closeTimeStart", closeTimeStart); - terms.put("closeTimeEnd", closeTimeEnd); - } return terms; } @@ -367,34 +367,4 @@ } } - /** - * PC端-选择经办人 - * @url {ctx}/api/web/caseInfoUnfold/choosePrincipal? - * @param caseId 纠纷编号 - * @return Object - */ - @GetMapping("/choosePrincipal") - public Object choosePrincipal(@RequestParam(value = "caseId") String caseId, @RequestParam(value = "userId") String userId) { - try { - service.choosePrincipal(caseId, userId); - return ReturnSucUtils.getRepInfo(); - } catch (Exception e) { - return ReturnFailUtils.getRepInfo(e.getMessage()); - } - } - - /** - * 查询办理结果 - * @url {ctx}/api/web/caseInfoUnfold/getTransactResult - * @param caseId 事项ID - * @return Object - */ - @GetMapping("/getTransactResult") - public Object getTransactResult(@RequestParam(value = "caseId") String caseId) { - try { - return ReturnSucUtils.getRepInfo(service.getTransactResult(caseId)); - } catch (Exception e) { - return ReturnFailUtils.getRepInfo(); - } - } } diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java index 2b86a93..53aeb99 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java @@ -1,9 +1,12 @@ package cn.huge.module.cases.controller.web; +import cn.huge.base.common.utils.ObjectUtils; import cn.huge.base.common.utils.ReturnFailUtils; import cn.huge.base.common.utils.ReturnSucUtils; import cn.huge.base.config.CurrentUser; +import cn.huge.module.cases.domain.dto.AcceptTaskDTO; import cn.huge.module.cases.domain.dto.AssignTaskDTO; +import cn.huge.module.cases.domain.dto.SignTaskDTO; import cn.huge.module.cases.domain.po.CaseAppear; import cn.huge.module.cases.domain.po.CaseReturn; import cn.huge.module.cases.domain.po.CaseTask; @@ -75,6 +78,54 @@ } /** + * web端-交办 + * @url {ctx}/api/web/caseTask/assign + * @param assignTaskDTO 交办表单 + * @return Object + */ + @PostMapping("/assign") + public Object assign(@RequestBody AssignTaskDTO assignTaskDTO, @CurrentUser String userId) { + try { + service.webAssign(assignTaskDTO, userId); + return ReturnSucUtils.getRepInfo(); + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(); + } + } + + /** + * web端-签收 + * @url {ctx}/api/web/caseTask/sign + * @param signTaskDTO 签收表单 + * @return Object + */ + @PostMapping("/sign") + public Object sign(@RequestBody SignTaskDTO signTaskDTO, @CurrentUser String userId) { + try { + service.webSign(signTaskDTO, userId); + return ReturnSucUtils.getRepInfo(); + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(); + } + } + + /** + * web端-受理 + * @url {ctx}/api/web/caseTask/accept + * @param acceptTaskDTO 受理表单 + * @return Object + */ + @PostMapping("/accept") + public Object accept(@RequestBody AcceptTaskDTO acceptTaskDTO, @CurrentUser String userId) { + try { + service.webAccept(acceptTaskDTO, userId); + return ReturnSucUtils.getRepInfo(); + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(); + } + } + + /** * web端-结案申请 * @url {ctx}/api/web/caseTask/windupApply * @param caseWindupApply 结案申请表单 @@ -83,6 +134,7 @@ @PostMapping("/windupApply") public Object windupApply(@RequestBody CaseWindupApply caseWindupApply, @CurrentUser String userId) { try { + service.webWindupApply(caseWindupApply, userId); return ReturnSucUtils.getRepInfo(); } catch (Exception e) { return ReturnFailUtils.getRepInfo(); @@ -98,7 +150,8 @@ @GetMapping("/getWindupApplyInfo") public Object getWindupApplyInfo(@RequestParam(value = "caseTaskId") String caseTaskId, @CurrentUser String userId) { try { - return ReturnSucUtils.getRepInfo(caseWindupApplyService.getByCaseTaskId(caseTaskId)); + CaseWindupApply caseWindupApply = caseWindupApplyService.getByCaseTaskId(caseTaskId); + return ReturnSucUtils.getRepInfo(caseWindupApply); } catch (Exception e) { return ReturnFailUtils.getRepInfo(); } @@ -113,6 +166,7 @@ @PostMapping("/windupAudit") public Object windupAudit(@RequestBody CaseWindupApply caseWindupApply, @CurrentUser String userId) { try { + service.webWindupAudit(caseWindupApply, userId); return ReturnSucUtils.getRepInfo(); } catch (Exception e) { return ReturnFailUtils.getRepInfo(); @@ -210,21 +264,6 @@ */ @PostMapping("/appearAudit") public Object appearAudit(@RequestBody CaseAppear caseAppear, @CurrentUser String userId) { - try { - return ReturnSucUtils.getRepInfo(); - } catch (Exception e) { - return ReturnFailUtils.getRepInfo(); - } - } - - /** - * web端-交办 - * @url {ctx}/api/web/caseTask/assign - * @param assignTaskDTO 交办表单 - * @return Object - */ - @PostMapping("/assign") - public Object assign(@RequestBody AssignTaskDTO assignTaskDTO, @CurrentUser String userId) { try { return ReturnSucUtils.getRepInfo(); } catch (Exception e) { diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoUnfoldMapper.xml b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoUnfoldMapper.xml index 0899569..1704778 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoUnfoldMapper.xml +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoUnfoldMapper.xml @@ -4,14 +4,15 @@ * @title: 纠纷信息扩展表 * @description: 自定义sql,请自行实现业务逻辑 * @company: hugeinfo - * @author: wangwh - * @time:2024-08-27 20:36:04 + * @author: liyj + * @time:2024-09-09 19:58:25 * @version 1.0.0 --> <mapper namespace="cn.huge.module.cases.dao.mapper.CaseInfoUnfoldMapper"> <!-- 结果集 --> <resultMap id="dataResult" type="cn.huge.module.cases.domain.po.CaseInfoUnfold"> <result property="id" column="id"/> + <result property="acceptTime" column="accept_time"/> <result property="mediateUnitId" column="mediate_unit_id"/> <result property="mediateUnitName" column="mediate_unit_name"/> <result property="mediateDeptId" column="mediate_dept_id"/> @@ -19,6 +20,8 @@ <result property="mediatorId" column="mediator_id"/> <result property="mediator" column="mediator"/> <result property="mediatorMobile" column="mediator_mobile"/> + <result property="assistUnitId" column="assist_unit_id"/> + <result property="assistUnitName" column="assist_unit_name"/> <result property="mediStartTime" column="medi_start_time"/> <result property="mediEndTime" column="medi_end_time"/> <result property="mediResult" column="medi_result"/> @@ -32,6 +35,7 @@ <result property="civilStatus" column="civil_status"/> <result property="courtId" column="court_id"/> <result property="courtName" column="court_name"/> + <result property="closeTime" column="close_time"/> <result property="judicApply" column="judic_apply"/> <result property="judicResult" column="judic_result"/> <result property="judicResultName" column="judic_result_name"/> @@ -54,14 +58,13 @@ <result property="custId" column="cust_id"/> <result property="createTime" column="create_time"/> <result property="updateTime" column="update_time"/> - <result property="acceptTime" column="accept_time"/> - <result property="closeTime" column="close_time"/> </resultMap> <!-- 表 --> <sql id='table-name'>dyh_case_info_unfold</sql> <!-- 字段 --> <sql id="column-part"> id, + accept_time, mediate_unit_id, mediate_unit_name, mediate_dept_id, @@ -69,6 +72,8 @@ mediator_id, mediator, mediator_mobile, + assist_unit_id, + assist_unit_name, medi_start_time, medi_end_time, medi_result, @@ -82,6 +87,7 @@ civil_status, court_id, court_name, + close_time, judic_apply, judic_result, judic_result_name, @@ -103,12 +109,11 @@ party_joy, cust_id, create_time, - update_time, - accept_time, - close_time + update_time </sql> <!-- 更新实体字段 --> <sql id="set-part"> + <if test="entity.acceptTime != null">accept_time = #{entity.acceptTime},</if> <if test="entity.mediateUnitId != null">mediate_unit_id = #{entity.mediateUnitId},</if> <if test="entity.mediateUnitName != null">mediate_unit_name = #{entity.mediateUnitName},</if> <if test="entity.mediateDeptId != null">mediate_dept_id = #{entity.mediateDeptId},</if> @@ -116,6 +121,8 @@ <if test="entity.mediatorId != null">mediator_id = #{entity.mediatorId},</if> <if test="entity.mediator != null">mediator = #{entity.mediator},</if> <if test="entity.mediatorMobile != null">mediator_mobile = #{entity.mediatorMobile},</if> + <if test="entity.assistUnitId != null">assist_unit_id = #{entity.assistUnitId},</if> + <if test="entity.assistUnitName != null">assist_unit_name = #{entity.assistUnitName},</if> <if test="entity.mediStartTime != null">medi_start_time = #{entity.mediStartTime},</if> <if test="entity.mediEndTime != null">medi_end_time = #{entity.mediEndTime},</if> <if test="entity.mediResult != null">medi_result = #{entity.mediResult},</if> @@ -129,6 +136,7 @@ <if test="entity.civilStatus != null">civil_status = #{entity.civilStatus},</if> <if test="entity.courtId != null">court_id = #{entity.courtId},</if> <if test="entity.courtName != null">court_name = #{entity.courtName},</if> + <if test="entity.closeTime != null">close_time = #{entity.closeTime},</if> <if test="entity.judicApply != null">judic_apply = #{entity.judicApply},</if> <if test="entity.judicResult != null">judic_result = #{entity.judicResult},</if> <if test="entity.judicResultName != null">judic_result_name = #{entity.judicResultName},</if> @@ -150,9 +158,7 @@ <if test="entity.partyJoy != null">party_joy = #{entity.partyJoy},</if> <if test="entity.custId != null">cust_id = #{entity.custId},</if> <if test="entity.createTime != null">create_time = #{entity.createTime},</if> - <if test="entity.updateTime != null">update_time = #{entity.updateTime},</if> - <if test="entity.acceptTime != null">accept_time = #{entity.acceptTime},</if> - <if test="entity.closeTime != null">close_time = #{entity.closeTime},</if> + <if test="entity.updateTime != null">update_time = #{entity.updateTime}</if> </sql> <!-- 条件 --> <sql id="where-part"> @@ -160,6 +166,9 @@ <where> <if test="terms.id != null and terms.id !=''"> and id = #{terms.id} + </if> + <if test="terms.acceptTime != null and terms.acceptTime !=''"> + and accept_time = #{terms.acceptTime} </if> <if test="terms.mediateUnitId != null and terms.mediateUnitId !=''"> and mediate_unit_id = #{terms.mediateUnitId} @@ -181,6 +190,12 @@ </if> <if test="terms.mediatorMobile != null and terms.mediatorMobile !=''"> and mediator_mobile = #{terms.mediatorMobile} + </if> + <if test="terms.assistUnitId != null and terms.assistUnitId !=''"> + and assist_unit_id = #{terms.assistUnitId} + </if> + <if test="terms.assistUnitName != null and terms.assistUnitName !=''"> + and assist_unit_name = #{terms.assistUnitName} </if> <if test="terms.mediStartTime != null and terms.mediStartTime !=''"> and medi_start_time = #{terms.mediStartTime} @@ -220,6 +235,9 @@ </if> <if test="terms.courtName != null and terms.courtName !=''"> and court_name = #{terms.courtName} + </if> + <if test="terms.closeTime != null and terms.closeTime !=''"> + and close_time = #{terms.closeTime} </if> <if test="terms.judicApply != null and terms.judicApply !=''"> and judic_apply = #{terms.judicApply} @@ -294,20 +312,6 @@ <if test="terms.updateStart != null and terms.updateStart !='' and terms.updateEnd != null and terms.updateEnd !=''"> and (DATE_FORMAT(update_time,'%Y-%m-%d') <![CDATA[ >= ]]> #{terms.updateStart} and DATE_FORMAT(update_time,'%Y-%m-%d') <![CDATA[ <= ]]> #{terms.updateEnd}) - </if> - <if test="terms.acceptTime != null and terms.acceptTime !=''"> - and DATE_FORMAT(accept_time,'%Y-%m-%d') = #{terms.acceptTime} - </if> - <if test="terms.acceptTimeStart != null and terms.acceptTimeStart !='' and terms.acceptTimeEnd != null and terms.acceptTimeEnd !=''"> - and (DATE_FORMAT(accept_time,'%Y-%m-%d') <![CDATA[ >= ]]> #{terms.acceptTimeStart} - and DATE_FORMAT(accept_time,'%Y-%m-%d') <![CDATA[ <= ]]> #{terms.acceptTimeEnd}) - </if> - <if test="terms.closeTime != null and terms.closeTime !=''"> - and DATE_FORMAT(close_time,'%Y-%m-%d') = #{terms.closeTime} - </if> - <if test="terms.closeTimeStart != null and terms.closeTimeStart !='' and terms.closeTimeEnd != null and terms.closeTimeEnd !=''"> - and (DATE_FORMAT(close_time,'%Y-%m-%d') <![CDATA[ >= ]]> #{terms.closeTimeStart} - and DATE_FORMAT(close_time,'%Y-%m-%d') <![CDATA[ <= ]]> #{terms.closeTimeEnd}) </if> </where> </if> 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 a4ccf2c..1072d59 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-06 15:50:06 + * @time:2024-09-08 18:27:35 * @version 1.0.0 --> <mapper namespace="cn.huge.module.cases.dao.mapper.CaseTaskMapper"> @@ -39,6 +39,8 @@ <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="handleUserId" column="handle_user_id"/> <result property="handleUserName" column="handle_user_name"/> <result property="handleResult" column="handle_result"/> @@ -81,6 +83,8 @@ sign_user_name, expire_time, status, + handle_unit_id, + handle_unit_name, handle_user_id, handle_user_name, handle_result, @@ -120,6 +124,8 @@ <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.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> @@ -217,6 +223,12 @@ </if> <if test="terms.status != null and terms.status !=''"> and status = #{terms.status} + </if> + <if test="terms.handleUnitId != null and terms.handleUnitId !=''"> + and handle_unit_id = #{terms.handleUnitId} + </if> + <if test="terms.handleUnitName != null and terms.handleUnitName !=''"> + and handle_unit_name = #{terms.handleUnitName} </if> <if test="terms.handleUserId != null and terms.handleUserId !=''"> and handle_user_id = #{terms.handleUserId} @@ -339,4 +351,5 @@ and delete_status = '0' and status = '1' </select> + </mapper> \ No newline at end of file diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/bo/CaseInfoUnfoldBO.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/bo/CaseInfoUnfoldBO.java index d22aa8c..d133db5 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/bo/CaseInfoUnfoldBO.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/bo/CaseInfoUnfoldBO.java @@ -6,8 +6,8 @@ * @title: 纠纷信息扩展表业务扩展类 * @description: 纠纷信息扩展表业务扩展类 * @company: hugeinfo - * @author: wangwh - * @time: 2024-08-27 20:36:04 + * @author: liyj + * @time: 2024-09-09 19:58:25 * @version: 1.0.0 * @see cn.huge.module.cases.domain.po.CaseInfoUnfold */ diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/AcceptTaskDTO.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/AcceptTaskDTO.java new file mode 100644 index 0000000..03ec5da --- /dev/null +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/AcceptTaskDTO.java @@ -0,0 +1,26 @@ +package cn.huge.module.cases.domain.dto; + +import cn.huge.module.cases.domain.po.CaseInfo; +import lombok.Data; + +import java.util.List; + +/** + * @title: 受理任务传输对象 + * @description: 受理任务传输对象 + * @company: hugeinfo + * @author: liyj + * @time: 2022-03-11 11:43:25 + * @version: 1.0.0 + * @see CaseInfo + */ +@Data +public class AcceptTaskDTO { + + /** + * 上报审核纠纷任务编号 + */ + private String caseTaskId; + + +} diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/AssignTaskDTO.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/AssignTaskDTO.java index f7cfdaf..6c55d6a 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/AssignTaskDTO.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/AssignTaskDTO.java @@ -4,6 +4,7 @@ import cn.huge.module.cases.domain.po.CaseInfo; import cn.huge.module.cases.domain.po.CasePerson; import cn.huge.module.sys.dto.FileTypeInfoBaseDTO; +import com.baomidou.mybatisplus.annotation.TableField; import lombok.Data; import java.util.List; @@ -21,6 +22,11 @@ public class AssignTaskDTO { /** + * 上报审核纠纷任务编号 + */ + private String caseTaskId; + + /** * 承办部门编号 */ private String handleUnitId; diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CasePageDTO.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CasePageDTO.java index a77bca0..9ec3a88 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CasePageDTO.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CasePageDTO.java @@ -16,7 +16,7 @@ */ private String id; /** - * 事项状态,1:待签收,2:待受理,3:办理中,4:结案审核,5:待评价,6:已归档 + * 事项状态,1:待分派,2:待签收,3:待受理,:4:办理中,5:结案审核,6:待评价,7:已归档 */ private Integer status; diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/SignTaskDTO.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/SignTaskDTO.java new file mode 100644 index 0000000..7721103 --- /dev/null +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/SignTaskDTO.java @@ -0,0 +1,29 @@ +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 SignTaskDTO { + + /** + * 纠纷信息编号 + */ + private String caseId; + + /** + * 上报审核纠纷任务编号 + */ + private String caseTaskId; + + +} diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseInfoUnfold.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseInfoUnfold.java index b300dd5..f69440a 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseInfoUnfold.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/po/CaseInfoUnfold.java @@ -12,8 +12,8 @@ * @title: 纠纷信息扩展表数据库对应关系类 * @description: PO中的属性与数据表是一一对应关系,如需根据业务处理不同,请使用BO对象。 * @company:hugeinfo - * @author: wangwh - * @time: 2024-08-27 20:36:04 + * @author: liyj + * @time: 2024-09-09 19:58:25 * @version 1.0.0 */ @TableName(value = "dyh_case_info_unfold") @@ -27,8 +27,8 @@ private String id; /** - * 受理时间 - */ + * 受理时间 + */ @TableField(value = "accept_time") private Date acceptTime; @@ -73,6 +73,18 @@ */ @TableField(value = "mediator_mobile") private String mediatorMobile; + + /** + * 配合组织,多个用,隔开 + */ + @TableField(value = "assist_unit_id") + private String assistUnitId; + + /** + * 配合组织名称,多个用、隔开 + */ + @TableField(value = "assist_unit_name") + private String assistUnitName; /** * 调解开始时间 @@ -153,8 +165,8 @@ private String courtName; /** - * 办结时间 - */ + * 办结时间 + */ @TableField(value = "close_time") private Date closeTime; 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 6183d04..b0902a1 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-06 15:50:06 + * @time: 2024-09-08 18:27:35 * @version 1.0.0 */ @TableName(value = "dyh_case_task") @@ -51,7 +51,7 @@ private String processTaskId; /** - * 工作流任务类型,1:正常任务,2:退回任务;3:上报任务 + * 任务类型,1:正常流转,2:回退申请,3:上报申请 */ @TableField(value = "task_type") private Integer taskType; @@ -189,6 +189,18 @@ private Integer status; /** + * 任务处理单位编号 + */ + @TableField(value = "handle_unit_id") + private String handleUnitId; + + /** + * 任务处理单位名称 + */ + @TableField(value = "handle_unit_name") + private String handleUnitName; + + /** * 任务处理人编号 */ @TableField(value = "handle_user_id") @@ -201,7 +213,7 @@ private String handleUserName; /** - * 处理结果,1:通过,2:退回,3:终止流程 + * 处理结果,1:通过,2:不通过 */ @TableField(value = "handle_result") private Integer handleResult; 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 2d61a54..86f3d23 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 @@ -144,7 +144,7 @@ * 结案审核时间 */ @TableField(value = "audit_time") - private String auditTime; + private Date auditTime; /** * 结案审核结果 @@ -189,4 +189,10 @@ @TableField(value = "update_time") private Date updateTime; + /** + * 事项等级 + */ + @TableField(exist = false) + private Integer caseLevel; + } 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 4bbb026..da5f4a4 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 @@ -75,6 +75,9 @@ @Autowired private SysClientImpl sysClient; + @Autowired + private CaseTaskService caseTaskService; + /** * 更新对象 * @param entity 对象 @@ -204,25 +207,27 @@ caseInfo.setInputWay(CaseBaseConsts.INPUT_WAY_1); caseInfo.setCreateTime(nowDate); caseInfo.setDeleteStatus(BaseConsts.DELETE_STATUS_0); - - CaseInfoUnfold caseInfoUnfold = new CaseInfoUnfold(); - caseInfoUnfold.setId(caseInfo.getId()); - caseInfoUnfold.setCreateTime(nowDate); - caseInfoUnfold.setUpdateTime(nowDate); - // 删除草稿案件 if(1 == registerSaveDTO.getIsDraft() ){ draftInfoService.removeDraftInfo(registerSaveDTO.getId()); } - - //判断是否自行受理 - if(1 == registerSaveDTO.getIsSelfAccept()){ - //todo 流程接口修改status、status_name、process、process_name - caseInfoUnfold.setMediateUnitId(loginUser.getUnitId()); - caseInfoUnfold.setMediateUnitName(loginUser.getUnitName()); - } + // 新增纠纷信息 this.save(caseInfo); + // 新增纠纷信息扩展表 + CaseInfoUnfold caseInfoUnfold = new CaseInfoUnfold(); + caseInfoUnfold.setId(caseInfo.getId()); + caseInfoUnfold.setCreateTime(nowDate); + caseInfoUnfold.setUpdateTime(nowDate); caseInfoUnfoldService.save(caseInfoUnfold); + // 启动工作流 + // 判断是否自行受理 + if(1 == registerSaveDTO.getIsSelfAccept()){ + // 自行受理流程 + caseTaskService.webStartFlowZXSL(caseInfo, loginUser); + }else { + // 自动调度流程 + caseTaskService.webStartFlowLFDJ(caseInfo); + } }else if(1 == registerSaveDTO.getOperateType()){ this.updateById(caseInfo); } 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 a362a4f..ad778e5 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 @@ -4,30 +4,45 @@ 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.CaseFlowDTO; -import cn.huge.module.cases.domain.dto.TabButtonDTO; -import cn.huge.module.cases.domain.dto.TabButtonInfoDTO; +import cn.huge.module.cases.domain.dto.*; +import cn.huge.module.cases.domain.po.CaseInfo; +import cn.huge.module.cases.domain.po.CaseInfoUnfold; +import cn.huge.module.cases.domain.po.CaseWindupApply; import cn.huge.module.client.api.impl.CustClientImpl; +import cn.huge.module.client.api.impl.DispClientImpl; +import cn.huge.module.client.api.impl.SysClientImpl; import cn.huge.module.client.api.impl.UtilsClientImpl; import cn.huge.module.cases.dao.mapper.CaseTaskMapper; import cn.huge.module.cases.domain.po.CaseTask; +import cn.huge.module.constant.BaseConsts; +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.mediate.constant.CaseBaseConsts; +import cn.huge.module.disp.constant.DispBaseConstsEnum; +import cn.huge.module.disp.dto.CaseDispBaseDTO; +import cn.huge.module.disp.dto.DispCaseBaseDTO; +import cn.huge.module.cases.consts.CaseTaskConsts; +import cn.huge.module.flow.consts.FlowNodeEnum; +import cn.huge.module.flow.consts.FlowableConsts; +import cn.huge.module.flow.domain.po.FlowNode; +import cn.huge.module.flow.service.FlowInfoService; +import cn.huge.module.mediate.constant.*; +import cn.huge.module.sys.constant.SyTimeEnum; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.google.common.collect.Maps; +import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Page; import org.springframework.data.domain.PageImpl; import org.springframework.data.domain.PageRequest; import org.springframework.transaction.annotation.Transactional; -import javax.annotation.PostConstruct; import java.util.*; +import java.util.stream.Collectors; /** * @title: 纠纷任务表业务逻辑处理 @@ -46,13 +61,23 @@ private CaseTaskMapper mapper; @Autowired + private CaseSuperviseService superviseService; + @Autowired private UtilsClientImpl utilsClient; - @Autowired private CustClientImpl custClient; - @Autowired - private CaseSuperviseService superviseService; + private DispClientImpl dispClient; + @Autowired + private FlowInfoService flowInfoService; + @Autowired + private CaseInfoService caseInfoService; + @Autowired + private SysClientImpl sysClient; + @Autowired + private CaseInfoUnfoldService caseInfoUnfoldService; + @Autowired + private CaseWindupApplyService caseWindupApplyService; /** * 更新对象 @@ -385,4 +410,784 @@ throw new ServiceException("CaseTaskService.wechatListCaseFlow", e); } } + + /** + * web端大厅来访登记-提交纠纷事件-通过自动调度启动工作流 + * @param caseInfo + */ + public void webStartFlowLFDJ(CaseInfo caseInfo){ + try{ + DispCaseBaseDTO dispCaseBaseDTO = new DispCaseBaseDTO(); + BeanUtils.copyProperties(caseInfo, dispCaseBaseDTO); + dispCaseBaseDTO.setCaseId(caseInfo.getId()); + CaseDispBaseDTO caseDispBaseDTO = dispClient.sysDisp(dispCaseBaseDTO); + // 目前平台只能调度给组织 + if (DispBaseConstsEnum.TARGET_TYPE_1.getIndex().equals(caseDispBaseDTO.getTargetType())) { + // 目前平台只做镇街、村居级别的调度, + if (UserBaseConsts.UNIT_GRADE_3 == caseDispBaseDTO.getTargetUnitGrade()) { + // 启动来访登记工作流 + FlowNode firstFlowNode = flowInfoService.startFlow(FlowableConsts.FLOWABLE_ID_LFDJ, caseInfo.getId()); + if (UserBaseConsts.UNIT_TYPE_1 == caseDispBaseDTO.getTargetUnitType()){ + // 调度给镇街综治中心,进入第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); + dfpCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + dfpCaseTask.setCustId(caseInfo.getCustId()); + dfpCaseTask.setCreateTime(caseInfo.getCreateTime()); + dfpCaseTask.setUpdateTime(caseInfo.getUpdateTime()); + mapper.insert(dfpCaseTask); + // 更新纠纷信息 + CaseInfo caseInfoPO = new CaseInfo(); + caseInfoPO.setId(caseInfo.getId()); + caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_1.getIndex()); + caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_1.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()); + caseInfoService.updateCaseInfo(caseInfoPO); + }else { + // 调度给调解组织,默认通过第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.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); + dfpCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); + dfpCaseTask.setHandleUnitName("系统派单"); + dfpCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); + dfpCaseTask.setHandleContent("派单至:"+caseDispBaseDTO.getTargetName()); + dfpCaseTask.setHandleTime(caseInfo.getCreateTime()); + dfpCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + dfpCaseTask.setCustId(caseInfo.getCustId()); + dfpCaseTask.setCreateTime(caseInfo.getCreateTime()); + dfpCaseTask.setUpdateTime(caseInfo.getCreateTime()); + mapper.insert(dfpCaseTask); + // 完成第1个节点任务 + FlowNode secondFlowNode = flowInfoService.completeTask(dfpCaseTask.getFlowableId(), dfpCaseTask.getProcessTaskId(), + FlowableConsts.OPERATION_jb_zszz, "系统派单"); + // 进入第2个节点-镇街级组织待受理 + CaseTask sdlCaseTask = new CaseTask(); + sdlCaseTask.setId(utilsClient.getNewTimeId()); + sdlCaseTask.setCaseId(caseInfo.getId()); + sdlCaseTask.setFlowableId(secondFlowNode.getFlowableId()); + sdlCaseTask.setProcessInstanceId(secondFlowNode.getProcessInstanceId()); + sdlCaseTask.setProcessTaskId(secondFlowNode.getProcessTaskId()); + sdlCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); + sdlCaseTask.setNodeType(secondFlowNode.getNodeType()); + sdlCaseTask.setNodeId(secondFlowNode.getNodeId()); + sdlCaseTask.setNodeName(secondFlowNode.getNodeName()); + sdlCaseTask.setFlowId(secondFlowNode.getFlowId()); + sdlCaseTask.setNodeShowName(secondFlowNode.getNodeShowName()); + sdlCaseTask.setCaseTaskType(dfpCaseTask.getCaseTaskType()); + // 通过调度的,任务候选执行者类型是上一步骤选择 + sdlCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + sdlCaseTask.setCandeUnitId(caseDispBaseDTO.getTargetId()); + sdlCaseTask.setCandeUnitName(caseDispBaseDTO.getTargetName()); + // 系统调度给调解组织,需要签收 + sdlCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_1); + sdlCaseTask.setSignExpireTime(sysClient.getExpireTime(caseInfo.getCreateTime(), SyTimeEnum.SY_TIME_2.getIndex())); + sdlCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); + sdlCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + sdlCaseTask.setCustId(caseInfo.getCustId()); + sdlCaseTask.setCreateTime(caseInfo.getCreateTime()); + sdlCaseTask.setUpdateTime(caseInfo.getUpdateTime()); + mapper.insert(sdlCaseTask); + // 更新纠纷信息 + CaseInfo caseInfoPO = new CaseInfo(); + caseInfoPO.setId(caseInfo.getId()); + caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_2.getIndex()); + caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_2.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()); + caseInfoService.updateCaseInfo(caseInfoPO); + } + } + } + }catch (Exception e){ + log.error("[CaseTaskService.webStartFlowLFDJ]调用失败,异常信息:"+e, e); + throw new ServiceException("CaseTaskService.webStartFlowLFDJ", e); + } + } + + /** + * web端大厅来访登记-自行受理-启动自行受理流程 + * @param caseInfo + * @param loginUser + */ + public void webStartFlowZXSL(CaseInfo caseInfo, CtUserDTO loginUser){ + try{ + + }catch (Exception e){ + log.error("[CaseTaskService.webStartFlowZXSL]调用失败,异常信息:"+e, e); + throw new ServiceException("CaseTaskService.webStartFlowZXSL", e); + } + } + + /** + * web端任务处理-交办 + * @param assignTaskDTO 交办任务表单 + * @param userId 当前登录用户 + */ + public void webAssign(AssignTaskDTO assignTaskDTO, String userId){ + try{ + Date nowDate = DateUtils.getNowDate(); + // 获取当前登录用户 + CtUserDTO loginUser = custClient.clientGetUserAll(userId); + // 查询当前待分派任务 + 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.setHandleUserId(loginUser.getId()); + dfpCaseTaskPO.setHandleUserName(loginUser.getTrueName()); + dfpCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); + dfpCaseTaskPO.setHandleTime(nowDate); + dfpCaseTaskPO.setUpdateTime(nowDate); + 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 { + flowOperation = FlowableConsts.OPERATION_jb_zzzx; + } + + } + // 市综治中心待分派 + if (FlowNodeEnum.FLOW_NODE_SJ_DFP.getIndex().equals(dfpCaseTask.getNodeId())){ + if (UserBaseConsts.UNIT_GRADE_1 == dslUnitDTO.getUnitGrade()) { + flowOperation = FlowableConsts.OPERATION_jb_zszz; + }else { + flowOperation = FlowableConsts.OPERATION_jb_zzzx; + } + + } + // 完成当前待分派工作流任务 + FlowNode newFlowNode = flowInfoService.completeTask(dfpCaseTask.getFlowableId(), dfpCaseTask.getProcessTaskId(), + flowOperation, userId); + // 新建待受理任务 + CaseTask blfkCaseTask = new CaseTask(); + blfkCaseTask.setId(utilsClient.getNewTimeId()); + blfkCaseTask.setCaseId(dfpCaseTask.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(CaseTaskConsts.CASE_TASK_TYPE_1); + // 受理任务,任务候选执行者类型是上一步骤选择 + blfkCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + blfkCaseTask.setCandeUnitId(dslUnitDTO.getId()); + blfkCaseTask.setCandeUnitName(dslUnitDTO.getUnitName()); + // 分派的任务,需要签收 + blfkCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_1); + blfkCaseTask.setSignExpireTime(sysClient.getExpireTime(nowDate, SyTimeEnum.SY_TIME_2.getIndex())); + blfkCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); + blfkCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + blfkCaseTask.setCustId(dfpCaseTask.getCustId()); + blfkCaseTask.setCreateTime(nowDate); + blfkCaseTask.setUpdateTime(nowDate); + mapper.insert(blfkCaseTask); + // 更新纠纷信息 + CaseInfo caseInfoPO = new CaseInfo(); + caseInfoPO.setId(blfkCaseTask.getCaseId()); + caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_3.getIndex()); + caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_3.getDes()); + caseInfoPO.setProcess(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getIndex()); + caseInfoPO.setProcessName(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getDes()); + caseInfoPO.setInfoProcess(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getIndex()); + caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes()); + caseInfoService.updateCaseInfo(caseInfoPO); + // 分派配合组织 + if (CollectionUtils.isNotEmpty(assignTaskDTO.getAssistUnitList())){ + for (AssignAssistUnitDTO assignAssistUnitDTO: assignTaskDTO.getAssistUnitList()){ + // 创建配合组织任务 + CaseTask assistCaseTask = new CaseTask(); + assistCaseTask.setId(utilsClient.getNewTimeId()); + assistCaseTask.setCaseId(dfpCaseTask.getCaseId()); + assistCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); + assistCaseTask.setNodeId(FlowNodeEnum.FLOW_NODE_BLFK.getIndex()); + assistCaseTask.setNodeName(FlowNodeEnum.FLOW_NODE_BLFK.getIndex()); + assistCaseTask.setFlowId(newFlowNode.getFlowId()); + assistCaseTask.setNodeShowName(FlowNodeEnum.FLOW_NODE_BLFK.getIndex()); + assistCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_2); + // 配合任务,任务候选执行者类型是上一步骤选择 + assistCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + assistCaseTask.setCandeUnitId(assignAssistUnitDTO.getUitId()); + assistCaseTask.setCandeUnitName(assignAssistUnitDTO.getUitName()); + // 分派的任务,需要签收 + assistCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_1); + assistCaseTask.setSignExpireTime(sysClient.getExpireTime(nowDate, SyTimeEnum.SY_TIME_2.getIndex())); + assistCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); + assistCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + assistCaseTask.setCustId(dfpCaseTask.getCustId()); + assistCaseTask.setCreateTime(nowDate); + assistCaseTask.setUpdateTime(nowDate); + mapper.insert(assistCaseTask); + } + // 拼接配合组织编号和名称 + String assistUnitId = assignTaskDTO.getAssistUnitList().stream().map(AssignAssistUnitDTO::getUitId). + collect(Collectors.joining(BaseConsts.COMMA)); + String assistUnitName = assignTaskDTO.getAssistUnitList().stream().map(AssignAssistUnitDTO::getUitId). + collect(Collectors.joining(BaseConsts.COMMA)); + + } + }catch (Exception e){ + log.error("[CaseTaskService.webAssign]调用失败,异常信息:"+e, e); + throw new ServiceException("CaseTaskService.webAssign", e); + } + } + + /** + * web端任务处理-签收 + * @param signTaskDTO 签收任务表单 + * @param userId 当前登录用户 + */ + public void webSign(SignTaskDTO signTaskDTO, String userId){ + try{ + Date nowDate = DateUtils.getNowDate(); + // 获取当前登录用户 + CtUserDTO loginUser = custClient.clientGetUserAll(userId); + // 更新纠纷任务信息 + CaseTask caseTaskPO = new CaseTask(); + caseTaskPO.setId(signTaskDTO.getCaseTaskId()); + caseTaskPO.setSignStatus(CaseTaskConsts.SIGN_STATUS_2); + caseTaskPO.setSignTime(nowDate); + caseTaskPO.setSignUserId(loginUser.getId()); + caseTaskPO.setSignUserName(loginUser.getTrueName()); + caseTaskPO.setUpdateTime(nowDate); + mapper.updateCaseTask(caseTaskPO); + // 更新纠纷信息 + CaseInfo caseInfoPO = new CaseInfo(); + caseInfoPO.setId(signTaskDTO.getCaseId()); + caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_3.getIndex()); + caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_3.getDes()); + caseInfoPO.setProcess(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getIndex()); + caseInfoPO.setProcessName(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getDes()); + caseInfoPO.setInfoProcess(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getIndex()); + caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes()); + caseInfoPO.setUpdateTime(nowDate); + caseInfoService.updateCaseInfo(caseInfoPO); + }catch (Exception e){ + log.error("[CaseTaskService.webSign]调用失败,异常信息:"+e, e); + throw new ServiceException("CaseTaskService.webSign", e); + } + } + + /** + * web端任务处理-受理 + * @param acceptTaskDTO 受理任务表单 + * @param userId 当前登录用户 + */ + public void webAccept(AcceptTaskDTO acceptTaskDTO, String userId){ + try{ + 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.setHandleUserName(loginUser.getTrueName()); + dslCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); + dslCaseTaskPO.setHandleTime(nowDate); + dslCaseTaskPO.setUpdateTime(nowDate); + mapper.updateCaseTask(dslCaseTaskPO); + // 完成当前待受理工作流任务 + FlowNode newFlowNode = flowInfoService.completeTask(dslCaseTask.getFlowableId(), dslCaseTask.getProcessTaskId(), + FlowableConsts.OPERATION_sl, 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(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); + blfkCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + blfkCaseTask.setCustId(dslCaseTask.getCustId()); + blfkCaseTask.setCreateTime(nowDate); + blfkCaseTask.setUpdateTime(nowDate); + mapper.insert(blfkCaseTask); + // 更新纠纷信息 + CaseInfo caseInfoPO = new CaseInfo(); + caseInfoPO.setId(blfkCaseTask.getCaseId()); + caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_4.getIndex()); + caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_4.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()); + caseInfoService.updateCaseInfo(caseInfoPO); + // 更新纠纷扩展信息 + CaseInfoUnfold caseInfoUnfoldPO = new CaseInfoUnfold(); + caseInfoUnfoldPO.setId(blfkCaseTask.getCaseId()); + caseInfoUnfoldPO.setAcceptTime(nowDate); + caseInfoUnfoldPO.setMediateUnitId(blfkCaseTask.getCandeUnitId()); + caseInfoUnfoldPO.setMediateUnitName(blfkCaseTask.getCandeUnitName()); + caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); + }catch (Exception e){ + log.error("[CaseTaskService.webAccept]调用失败,异常信息:"+e, e); + throw new ServiceException("CaseTaskService.webAccept", e); + } + } + + /** + * web端任务处理-结案申请 + * @param caseWindupApply 结案申请表单 + * @param userId 当前登录用户 + */ + public void webWindupApply(CaseWindupApply caseWindupApply, String userId){ + try{ + Date nowDate = DateUtils.getNowDate(); + // 获取当前登录用户 + CtUserDTO loginUser = custClient.clientGetUserAll(userId); + // 新增结案申请信息 + caseWindupApply.setApplyUnitId(loginUser.getUnitId()); + caseWindupApply.setApplyUnitName(loginUser.getUnitName()); + caseWindupApply.setApplyUserId(loginUser.getTrueName()); + caseWindupApply.setApplyTime(nowDate); + 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.setHandleUserId(loginUser.getId()); + blfkCaseTaskPO.setHandleUserName(loginUser.getTrueName()); + blfkCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); + blfkCaseTaskPO.setHandleTime(nowDate); + blfkCaseTaskPO.setUpdateTime(nowDate); + 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); + jasqCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); + jasqCaseTask.setHandleUnitId(loginUser.getUnitId()); + jasqCaseTask.setHandleUnitName(loginUser.getUnitName()); + jasqCaseTask.setHandleUserId(loginUser.getId()); + jasqCaseTask.setHandleUserName(loginUser.getTrueName()); + jasqCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); + jasqCaseTask.setHandleTime(nowDate); + jasqCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + jasqCaseTask.setCustId(blfkCaseTask.getCustId()); + jasqCaseTask.setCreateTime(nowDate); + jasqCaseTask.setUpdateTime(nowDate); + mapper.insert(jasqCaseTask); + // 化解成功,自动结案审核通过 + if (MediResultBaseConstsEnum.MEDI_RESULT_1.getIndex().equals(caseWindupApply.getMediResult())){ + // 完成当前结案申请工作流任务,走结案审核任务 + 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_2); + jashCaseTask.setHandleUnitId(loginUser.getUnitId()); + jashCaseTask.setHandleUnitName(loginUser.getUnitName()); + jashCaseTask.setHandleUserId(loginUser.getId()); + jashCaseTask.setHandleUserName(loginUser.getTrueName()); + jashCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); + jashCaseTask.setHandleTime(nowDate); + jashCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + jashCaseTask.setCustId(jasqCaseTask.getCustId()); + jashCaseTask.setCreateTime(nowDate); + jashCaseTask.setUpdateTime(nowDate); + mapper.insert(jashCaseTask); + // 完成当前结案审核工作流任务,走当事人评价任务 + FlowNode dsrpjFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), + FlowableConsts.OPERATION_jash_ty, userId); + // 新建当事人评价任务 + CaseTask dsrpjCaseTask = new CaseTask(); + dsrpjCaseTask.setId(utilsClient.getNewTimeId()); + dsrpjCaseTask.setCaseId(jashCaseTask.getCaseId()); + dsrpjCaseTask.setFlowableId(dsrpjFlowNode.getFlowableId()); + dsrpjCaseTask.setProcessInstanceId(dsrpjFlowNode.getProcessInstanceId()); + dsrpjCaseTask.setProcessTaskId(dsrpjFlowNode.getProcessTaskId()); + dsrpjCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); + dsrpjCaseTask.setNodeType(dsrpjFlowNode.getNodeType()); + dsrpjCaseTask.setNodeId(dsrpjFlowNode.getNodeId()); + dsrpjCaseTask.setNodeName(dsrpjFlowNode.getNodeName()); + dsrpjCaseTask.setFlowId(dsrpjFlowNode.getFlowId()); + dsrpjCaseTask.setNodeShowName(dsrpjFlowNode.getNodeShowName()); + dsrpjCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); + // 受理任务,任务候选执行者类型是上一步骤选择 + dsrpjCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + dsrpjCaseTask.setCandeUnitId(loginUser.getUnitId()); + dsrpjCaseTask.setCandeUnitName(loginUser.getUnitName()); + // 受理后的任务,不需要签收 + dsrpjCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); + dsrpjCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); + dsrpjCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + dsrpjCaseTask.setCustId(blfkCaseTaskPO.getCustId()); + dsrpjCaseTask.setCreateTime(nowDate); + dsrpjCaseTask.setUpdateTime(nowDate); + mapper.insert(dsrpjCaseTask); + // 更新结案申请信息 + 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); + // 更新纠纷信息 + CaseInfo caseInfoPO = new CaseInfo(); + caseInfoPO.setId(dsrpjCaseTask.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); + // 更新纠纷扩展信息 + CaseInfoUnfold caseInfoUnfoldPO = new CaseInfoUnfold(); + caseInfoUnfoldPO.setId(dsrpjCaseTask.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 {// 化解不成功,走结案审核流程 + // 完成当前结案申请工作流任务,走结案审核任务 + FlowNode jashFlowNode = flowInfoService.completeTask(jasqCaseTask.getFlowableId(), jasqCaseTask.getProcessTaskId(), + FlowableConsts.OPERATION_forward, userId); + // 新建结案审核任务 + CaseTask jashCaseTask = new CaseTask(); + jashCaseTask.setId(utilsClient.getNewTimeId()); + jashCaseTask.setCaseId(blfkCaseTaskPO.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); + jashCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + jashCaseTask.setCustId(blfkCaseTaskPO.getCustId()); + jashCaseTask.setCreateTime(nowDate); + jashCaseTask.setUpdateTime(nowDate); + mapper.insert(jashCaseTask); + // 更新结案申请信息 + caseWindupApply.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_0); + caseWindupApply.setCaseTaskId(jashCaseTask.getId()); + caseWindupApply.setAuditUnitId(jashCaseTask.getHandleUnitId()); + caseWindupApply.setAuditUnitName(jashCaseTask.getHandleUnitName()); + 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.setCloseTime(nowDate); + caseInfoUnfoldPO.setUpdateTime(nowDate); + caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); + } + }catch (Exception e){ + log.error("[CaseTaskService.webWindupApply]调用失败,异常信息:"+e, e); + throw new ServiceException("CaseTaskService.webWindupApply", e); + } + } + + /** + * web端任务处理-结案审核 + * @param caseWindupApply 结案审核表单 + * @param userId 当前登录用户 + */ + public void webWindupAudit(CaseWindupApply caseWindupApply, String userId){ + try{ + Date nowDate = DateUtils.getNowDate(); + // 获取当前登录用户 + CtUserDTO loginUser = custClient.clientGetUserAll(userId); + // 更新结案申请信息 + caseWindupApply.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_1); + caseWindupApply.setAuditUserId(loginUser.getId()); + caseWindupApply.setAuditUserName(loginUser.getTrueName()); + caseWindupApply.setAuditTime(nowDate); + caseWindupApply.setUpdateTime(nowDate); + caseWindupApplyService.saveCaseWindupApply(caseWindupApply); + // 查询结案审核任务 + 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.setHandleUserId(loginUser.getId()); + jashCaseTaskPO.setHandleUserName(loginUser.getTrueName()); + jashCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); + jashCaseTaskPO.setHandleTime(nowDate); + jashCaseTaskPO.setUpdateTime(nowDate); + mapper.updateCaseTask(jashCaseTaskPO); + // 完成当前结案审核工作流任务,走当事人评价任务 + FlowNode dsrpjFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), + FlowableConsts.OPERATION_jash_ty, userId); + // 新建当事人评价任务 + CaseTask dsrpjCaseTask = new CaseTask(); + dsrpjCaseTask.setId(utilsClient.getNewTimeId()); + dsrpjCaseTask.setCaseId(jashCaseTask.getCaseId()); + dsrpjCaseTask.setFlowableId(dsrpjFlowNode.getFlowableId()); + dsrpjCaseTask.setProcessInstanceId(dsrpjFlowNode.getProcessInstanceId()); + dsrpjCaseTask.setProcessTaskId(dsrpjFlowNode.getProcessTaskId()); + dsrpjCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); + dsrpjCaseTask.setNodeType(dsrpjFlowNode.getNodeType()); + dsrpjCaseTask.setNodeId(dsrpjFlowNode.getNodeId()); + dsrpjCaseTask.setNodeName(dsrpjFlowNode.getNodeName()); + dsrpjCaseTask.setFlowId(dsrpjFlowNode.getFlowId()); + dsrpjCaseTask.setNodeShowName(dsrpjFlowNode.getNodeShowName()); + dsrpjCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); + // 受理任务,任务候选执行者类型是上一步骤选择 + dsrpjCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + dsrpjCaseTask.setCandeUnitId(loginUser.getUnitId()); + dsrpjCaseTask.setCandeUnitName(loginUser.getUnitName()); + // 受理后的任务,不需要签收 + dsrpjCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); + dsrpjCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); + dsrpjCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + dsrpjCaseTask.setCustId(jashCaseTask.getCustId()); + dsrpjCaseTask.setCreateTime(nowDate); + dsrpjCaseTask.setUpdateTime(nowDate); + mapper.insert(dsrpjCaseTask); + // 更新纠纷信息 + CaseInfo caseInfoPO = new CaseInfo(); + caseInfoPO.setId(dsrpjCaseTask.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); + // 更新纠纷扩展信息 + CaseInfoUnfold caseInfoUnfoldPO = new CaseInfoUnfold(); + caseInfoUnfoldPO.setId(dsrpjCaseTask.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 jashCaseTaskPO = new CaseTask(); + jashCaseTaskPO.setId(caseWindupApply.getCaseTaskId()); + jashCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); + jashCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); + jashCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); + jashCaseTaskPO.setHandleUserId(loginUser.getId()); + jashCaseTaskPO.setHandleUserName(loginUser.getTrueName()); + jashCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_2); + jashCaseTaskPO.setHandleTime(nowDate); + jashCaseTaskPO.setUpdateTime(nowDate); + 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.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); + blfkCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); + blfkCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + blfkCaseTask.setCustId(jashCaseTask.getCustId()); + blfkCaseTask.setCreateTime(nowDate); + blfkCaseTask.setUpdateTime(nowDate); + mapper.insert(blfkCaseTask); + // 更新纠纷信息 + CaseInfo caseInfoPO = new CaseInfo(); + caseInfoPO.setId(blfkCaseTask.getCaseId()); + caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_4.getIndex()); + caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_4.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(blfkCaseTask.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); + } + }catch (Exception e){ + log.error("[CaseTaskService.webWindupApply]调用失败,异常信息:"+e, e); + throw new ServiceException("CaseTaskService.webWindupApply", e); + } + } + } diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseWindupApplyService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseWindupApplyService.java index 1289d14..3b6f423 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseWindupApplyService.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseWindupApplyService.java @@ -3,6 +3,8 @@ import cn.huge.base.common.exception.ServiceException; 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.po.CaseInfo; import cn.huge.module.client.api.impl.UtilsClientImpl; import cn.huge.module.cases.dao.mapper.CaseWindupApplyMapper; import cn.huge.module.cases.domain.po.CaseWindupApply; @@ -40,6 +42,8 @@ @Autowired private UtilsClientImpl utilsClient; + @Autowired + private CaseInfoService caseInfoService; /** * 更新对象 @@ -140,7 +144,14 @@ try{ QueryWrapper<CaseWindupApply> caseWindupApplyQueryWrapper = new QueryWrapper<>(); caseWindupApplyQueryWrapper.eq("case_task_id", caseTaskId); - return mapper.selectOne(caseWindupApplyQueryWrapper); + CaseWindupApply caseWindupApply = mapper.selectOne(caseWindupApplyQueryWrapper); + if (ObjectUtils.isNotEmpty(caseWindupApply)) { + QueryWrapper<CaseInfo> caseInfoQueryWrapper =new QueryWrapper<>(); + caseInfoQueryWrapper.eq("id", caseWindupApply.getCaseId()).select("case_level"); + CaseInfo caseInfo = caseInfoService.getOne(caseInfoQueryWrapper); + caseWindupApply.setCaseLevel(caseInfo.getCaseLevel()); + } + return caseWindupApply; }catch (Exception e){ log.error("[CaseWindupApplyService.getByCaseTaskId]调用失败,异常信息:"+e, e); throw new ServiceException("CaseWindupApplyService.getByCaseTaskId", e); 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 28ab532..199bd24 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 @@ -56,4 +56,13 @@ @PostMapping("/api/wechat/paUser/bindGetUserId") ReturnBO bindGetUserId(@RequestBody WechatBindCaseDTO wechatBindCaseDTO); + /** + * 根据id查询组织信息 + * @url {ctx}/api/client/ctUnit/getById + * @param unitId 组织编号 + * @return Object + */ + @GetMapping("/api/client/ctUnit/getUnitById") + ReturnBO getUnitById(@RequestParam("unitId") String unitId); + } diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/SysClient.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/SysClient.java index 97748da..50e903a 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/SysClient.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/SysClient.java @@ -5,6 +5,7 @@ import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.*; +import java.util.Date; import java.util.List; import java.util.Map; @@ -47,6 +48,16 @@ ReturnBO getTimeLimit(@RequestParam String limitTable, @RequestParam(value = "limitType") String limitType); /** + * 获取时限 + * @url {ctx}/api/client/syTimeLimit/getExpireTime?ownerIds= + * @param computeTime + * @param limitType + * @return + */ + @GetMapping("/api/client/syTimeLimit/getExpireTime") + ReturnBO getExpireTime(@RequestParam(value = "computeTime") Date computeTime, @RequestParam(value = "limitType") String limitType); + + /** * 根据条件删除附件关系 * @url {ctx}/api/v1/fileRelate/removeFileRelate * @param fileTypeTermsDTO 条件 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 1907587..879c4c5 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 @@ -6,6 +6,7 @@ import cn.huge.base.common.exception.ClientException; import cn.huge.base.common.exception.ServiceException; import cn.huge.module.client.api.CustClient; +import cn.huge.module.cust.dto.CtUnitDTO; import cn.huge.module.cust.dto.CtUserDTO; import cn.huge.module.cust.dto.PaUserDTO; import cn.huge.module.mediate.dto.WechatBindCaseDTO; @@ -86,8 +87,6 @@ } } - - /** * 当事人-获取登录用户-所有信息 * @param userId 用户编号 @@ -128,4 +127,26 @@ } return userId; } + + /** + * 根据id查询组织信息 + * @url {ctx}/api/client/ctUnit/getUnitById + * @param unitId 组织编号 + * @return Object + */ + public CtUnitDTO getUnitById(String unitId){ + try{ + ReturnBO returnBo = custClient.getUnitById(unitId); + if (ReturnConsts.OK == returnBo.getCode()){ + CtUnitDTO ctUnitDTO = objectMapper.convertValue(returnBo.getData(), CtUnitDTO.class); + return ctUnitDTO; + }else{ + log.error("Client外服务接口[CustClientImpl.getUnitById]请求异常:" + returnBo.getMsg(), returnBo.getMsg()); + throw new ClientException("CustClientImpl.getUnitById", returnBo.getMsg()); + } + }catch (Exception e){ + log.error("service方法[CustClientImpl.getUnitById]调用异常:"+e, e); + throw new ServiceException("CustClientImpl.getUnitById", e); + } + } } diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/impl/SysClientImpl.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/impl/SysClientImpl.java index 2f0fbfa..459cb2b 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/impl/SysClientImpl.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/impl/SysClientImpl.java @@ -14,10 +14,7 @@ import org.springframework.stereotype.Component; import org.springframework.web.bind.annotation.RequestBody; -import java.util.ArrayList; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Map; +import java.util.*; /** * @title: 系统公共服务微服务调用接口 @@ -113,6 +110,28 @@ } /** + * 获取时限 + * @url {ctx}/api/web/syTimeLimit/getExpireTime + * @param computeTime + * @param limitType + * @return + */ + public Date getExpireTime(Date computeTime, String limitType){ + Date expireTime = null; + try{ + ReturnBO returnBo = sysClient.getExpireTime(computeTime, limitType); + if (ReturnConsts.OK == returnBo.getCode()){ + if (ObjectUtils.isNotEmpty(returnBo.getData())){ + expireTime = (Date) returnBo.getData(); + } + } + }catch (Exception e){ + log.error("service方法[SysClientImpl.getExpireTime]调用异常:"+e, e); + } + return expireTime; + } + + /** * 根据条件删除附件关系 * @param fileTypeTermsDTO 条件 * @return Object diff --git a/dyh-service/dyh-base/src/main/java/cn/huge/module/mediate/constant/FlowNodeBaseEnum.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/consts/FlowNodeEnum.java similarity index 85% rename from dyh-service/dyh-base/src/main/java/cn/huge/module/mediate/constant/FlowNodeBaseEnum.java rename to dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/consts/FlowNodeEnum.java index 74738a5..7564edc 100644 --- a/dyh-service/dyh-base/src/main/java/cn/huge/module/mediate/constant/FlowNodeBaseEnum.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/consts/FlowNodeEnum.java @@ -1,4 +1,4 @@ -package cn.huge.module.mediate.constant; +package cn.huge.module.flow.consts; /** * @title": 工作流节点枚举类 @@ -8,7 +8,7 @@ * @time": 2021-11-05 16":51":48 * @version": 1.0.0 */ -public enum FlowNodeBaseEnum { +public enum FlowNodeEnum { /** * 节点 @@ -60,7 +60,7 @@ this.des = des; } - FlowNodeBaseEnum(String index, String des) { + FlowNodeEnum(String index, String des) { this.index = index; this.des = des; } @@ -71,9 +71,9 @@ * @return */ public static String getDes(String index) { - for (FlowNodeBaseEnum flowNodeBaseEnum : FlowNodeBaseEnum.values()) { - if (flowNodeBaseEnum.getIndex().equals(index)) { - return flowNodeBaseEnum.des; + for (FlowNodeEnum flowNodeEnum : FlowNodeEnum.values()) { + if (flowNodeEnum.getIndex().equals(index)) { + return flowNodeEnum.des; } } return null; @@ -85,9 +85,9 @@ * @return */ public static String getIndex(String des) { - for (FlowNodeBaseEnum flowNodeBaseEnum : FlowNodeBaseEnum.values()) { - if (flowNodeBaseEnum.getDes().equals(des)) { - return flowNodeBaseEnum.index; + for (FlowNodeEnum flowNodeEnum : FlowNodeEnum.values()) { + if (flowNodeEnum.getDes().equals(des)) { + return flowNodeEnum.index; } } return null; @@ -98,7 +98,7 @@ * @param index * @return */ - public static FlowNodeBaseEnum getByIndex(final String index) { + public static FlowNodeEnum getByIndex(final String index) { switch (index) { case "ZXSL": return FLOW_NODE_ZXSL; 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 new file mode 100644 index 0000000..1886d47 --- /dev/null +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/consts/FlowableConsts.java @@ -0,0 +1,71 @@ +package cn.huge.module.flow.consts; + +/** + * @title: 用户相关常量类 + * @description: 用户相关常量 + * @company: hugeinfo + * @author: liyj + * @time: 2021-11-05 16:51:48 + * @version: 1.0.0 + */ +public class FlowableConsts { + /** + * 两个默认流程定义编号 + * 自行受理:GZDYH_ZXSL_3LEVEL_V1 + * 来访登记:GZDYH_LFDJ_3LEVEL_V1 + */ + public static final String FLOWABLE_ID_LFDJ = "GZDYH_LFDJ_3LEVEL_V1"; + public static final String FLOWABLE_ID_ZXSL = "GZDYH_ZXSL_3LEVEL_V1"; + + /** + * 工作流通用任务条件, + * 前进:forward,退回:back, + */ + public static final String OPERATION_forward = "forward"; + public static final String OPERATION_back = "back"; + + /** + * 工作流业务任务条件, + * 自行受理:zxsl + * 交办给直属组织:jb_zszz,交办给综治中心:jb_zzzx + * 受理:sl + * 回退申请:htsq,回退审核同意:htsh_ty,回退审核不同意:htsh_bty + * 上报:sb,上报审核同意:htsq_ty,上报审核不同意:htsq_bty + * 结案审核同意:jash_ty,结案审核不同意:jash_bty,htsh_bty_zj,htsh_bty_qj + */ + public static final String OPERATION_jb_zszz = "jb_zszz"; + public static final String OPERATION_jb_zzzx = "jb_zzzx"; + public static final String OPERATION_sl = "sl"; + public static final String OPERATION_htsq = "htsq"; + public static final String OPERATION_htsh_ty = "htsh_ty"; + public static final String OPERATION_htsh_bty = "htsh_bty"; + public static final String OPERATION_htsh_bty_zj = "htsh_bty_zj"; + public static final String OPERATION_htsh_bty_qj = "htsh_bty_qj"; + public static final String OPERATION_sb = "sb"; + 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_bty = "jash_bty"; +} +/** + * -------------------_ooOoo_------------------- + * ------------------o8888888o------------------ + * ------------------88" . "88------------------ + * ------------------(| -_- |)------------------ + * ------------------O\ = /O------------------ + * ---------------____/`---'\____--------------- + * -------------.' \\| |// `.------------- + * ------------/ \\||| : |||// \------------ + * -----------/ _||||| -:- |||||- \----------- + * -----------| | \\\ - /// | |----------- + * -----------| \_| ''\---/'' | |----------- + * -----------\ .-\__ `-` ___/-. /----------- + * ---------___`. .' /--.--\ `. . __---------- + * ------."" '< `.___\_<|>_/___.' >'"".------- + * -----| | : `- \`.;`\ _ /`;.`/ - ` : | |----- + * -----\ \ `-. \_ __\ /__ _/ .-` / /----- + * ======`-.____`-.___\_____/___.-`____.-'====== + * -------------------`=---=' + * ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + * ---------佛祖保佑---hugeinfo---永无BUG---------- + */ diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/controller/web/FlowNodeWebController.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/controller/web/FlowNodeWebController.java index a7d9cab..668d7d3 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/controller/web/FlowNodeWebController.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/controller/web/FlowNodeWebController.java @@ -23,7 +23,7 @@ * @description: 业务流程节点表接口api-web端 * @company: hugeinfo * @author: liyj - * @time: 2024-09-06 15:50:06 + * @time: 2024-09-08 15:09:08 * @version: 1.0.0 */ @Slf4j @@ -98,6 +98,16 @@ if (StringUtils.isNotBlank(api)){ terms.put("api", api); } + // 对应纠纷进度 + String caseProcess = request.getParameter("caseProcess"); + if (StringUtils.isNotBlank(caseProcess)){ + terms.put("caseProcess", caseProcess); + } + // 对应纠纷进度名称 + String caseProcessName = request.getParameter("caseProcessName"); + if (StringUtils.isNotBlank(caseProcessName)){ + terms.put("caseProcessName", caseProcessName); + } // 节点处理时限,单位:天 String expire = request.getParameter("expire"); if (StringUtils.isNotBlank(expire)){ diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/controller/web/FlowableNodeWebController.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/controller/web/FlowableNodeWebController.java index aeaedf5..dede60a 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/controller/web/FlowableNodeWebController.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/controller/web/FlowableNodeWebController.java @@ -23,7 +23,7 @@ * @description: 工作流流程节点信息表接口api-web端 * @company: hugeinfo * @author: liyj - * @time: 2024-09-06 15:50:06 + * @time: 2024-09-08 15:09:07 * @version: 1.0.0 */ @Slf4j @@ -62,26 +62,6 @@ String icon = request.getParameter("icon"); if (StringUtils.isNotBlank(icon)){ terms.put("icon", icon); - } - // 对应请求接口方式,POST:post请求,GET:get请求,PUT:put请求,DELETE:delete请求 - String apiType = request.getParameter("apiType"); - if (StringUtils.isNotBlank(apiType)){ - terms.put("apiType", apiType); - } - // 对应请求接口 - String api = request.getParameter("api"); - if (StringUtils.isNotBlank(api)){ - terms.put("api", api); - } - // 对应纠纷进度 - String caseProcess = request.getParameter("caseProcess"); - if (StringUtils.isNotBlank(caseProcess)){ - terms.put("caseProcess", caseProcess); - } - // 对应纠纷进度名称 - String caseProcessName = request.getParameter("caseProcessName"); - if (StringUtils.isNotBlank(caseProcessName)){ - terms.put("caseProcessName", caseProcessName); } // 删除状态,0:未删除,1:已删除 String deleteStatus = request.getParameter("deleteStatus"); diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/dao/mapper/FlowNodeMapper.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/dao/mapper/FlowNodeMapper.java index a5835e0..e07c2cb 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/dao/mapper/FlowNodeMapper.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/dao/mapper/FlowNodeMapper.java @@ -14,7 +14,7 @@ * @Description 此处仅涉及复杂SQL操作,务必不要在此再次写单表的CRUD操作,因为mybatisPlus已经实现。 * @company: hugeinfo * @author: liyj -* @time: 2024-09-06 15:50:06 +* @time: 2024-09-08 15:09:08 * @version 1.0.0 */ @Repository diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/dao/mapper/FlowableNodeMapper.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/dao/mapper/FlowableNodeMapper.java index 34d1c10..31768f4 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/dao/mapper/FlowableNodeMapper.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/dao/mapper/FlowableNodeMapper.java @@ -14,7 +14,7 @@ * @Description 此处仅涉及复杂SQL操作,务必不要在此再次写单表的CRUD操作,因为mybatisPlus已经实现。 * @company: hugeinfo * @author: liyj -* @time: 2024-09-06 15:50:06 +* @time: 2024-09-08 15:09:07 * @version 1.0.0 */ @Repository diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/dao/mapper/xml/FlowNodeMapper.xml b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/dao/mapper/xml/FlowNodeMapper.xml index 351cdd4..ab4d572 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/dao/mapper/xml/FlowNodeMapper.xml +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/dao/mapper/xml/FlowNodeMapper.xml @@ -5,7 +5,7 @@ * @description: 自定义sql,请自行实现业务逻辑 * @company: hugeinfo * @author: liyj - * @time:2024-09-06 15:50:06 + * @time:2024-09-08 15:09:08 * @version 1.0.0 --> <mapper namespace="cn.huge.module.flow.dao.mapper.FlowNodeMapper"> @@ -22,6 +22,8 @@ <result property="nodeIcon" column="node_icon"/> <result property="apiType" column="api_type"/> <result property="api" column="api"/> + <result property="caseProcess" column="case_process"/> + <result property="caseProcessName" column="case_process_name"/> <result property="expire" column="expire"/> <result property="candeType" column="cande_type"/> <result property="candeUnitId" column="cande_unit_id"/> @@ -55,6 +57,8 @@ node_icon, api_type, api, + case_process, + case_process_name, expire, cande_type, cande_unit_id, @@ -85,6 +89,8 @@ <if test="entity.nodeIcon != null">node_icon = #{entity.nodeIcon},</if> <if test="entity.apiType != null">api_type = #{entity.apiType},</if> <if test="entity.api != null">api = #{entity.api},</if> + <if test="entity.caseProcess != null">case_process = #{entity.caseProcess},</if> + <if test="entity.caseProcessName != null">case_process_name = #{entity.caseProcessName},</if> <if test="entity.expire != null">expire = #{entity.expire},</if> <if test="entity.candeType != null">cande_type = #{entity.candeType},</if> <if test="entity.candeUnitId != null">cande_unit_id = #{entity.candeUnitId},</if> @@ -140,6 +146,12 @@ <if test="terms.api != null and terms.api !=''"> and api = #{terms.api} </if> + <if test="terms.caseProcess != null and terms.caseProcess !=''"> + and case_process = #{terms.caseProcess} + </if> + <if test="terms.caseProcessName != null and terms.caseProcessName !=''"> + and case_process_name = #{terms.caseProcessName} + </if> <if test="terms.expire != null and terms.expire !=''"> and expire = #{terms.expire} </if> diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/dao/mapper/xml/FlowableNodeMapper.xml b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/dao/mapper/xml/FlowableNodeMapper.xml index b0c3436..ada8645 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/dao/mapper/xml/FlowableNodeMapper.xml +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/dao/mapper/xml/FlowableNodeMapper.xml @@ -5,7 +5,7 @@ * @description: 自定义sql,请自行实现业务逻辑 * @company: hugeinfo * @author: liyj - * @time:2024-09-06 15:50:06 + * @time:2024-09-08 15:09:07 * @version 1.0.0 --> <mapper namespace="cn.huge.module.flow.dao.mapper.FlowableNodeMapper"> @@ -15,10 +15,6 @@ <result property="name" column="name"/> <result property="des" column="des"/> <result property="icon" column="icon"/> - <result property="apiType" column="api_type"/> - <result property="api" column="api"/> - <result property="caseProcess" column="case_process"/> - <result property="caseProcessName" column="case_process_name"/> <result property="deleteStatus" column="delete_status"/> <result property="custId" column="cust_id"/> <result property="createTime" column="create_time"/> @@ -32,10 +28,6 @@ name, des, icon, - api_type, - api, - case_process, - case_process_name, delete_status, cust_id, create_time, @@ -46,10 +38,6 @@ <if test="entity.name != null">name = #{entity.name},</if> <if test="entity.des != null">des = #{entity.des},</if> <if test="entity.icon != null">icon = #{entity.icon},</if> - <if test="entity.apiType != null">api_type = #{entity.apiType},</if> - <if test="entity.api != null">api = #{entity.api},</if> - <if test="entity.caseProcess != null">case_process = #{entity.caseProcess},</if> - <if test="entity.caseProcessName != null">case_process_name = #{entity.caseProcessName},</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> @@ -70,18 +58,6 @@ </if> <if test="terms.icon != null and terms.icon !=''"> and icon = #{terms.icon} - </if> - <if test="terms.apiType != null and terms.apiType !=''"> - and api_type = #{terms.apiType} - </if> - <if test="terms.api != null and terms.api !=''"> - and api = #{terms.api} - </if> - <if test="terms.caseProcess != null and terms.caseProcess !=''"> - and case_process = #{terms.caseProcess} - </if> - <if test="terms.caseProcessName != null and terms.caseProcessName !=''"> - and case_process_name = #{terms.caseProcessName} </if> <if test="terms.deleteStatus = null and terms.deleteStatus =''"> and delete_status = 0 diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/domain/bo/FlowNodeBO.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/domain/bo/FlowNodeBO.java index 9a39eb4..7e77ad5 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/domain/bo/FlowNodeBO.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/domain/bo/FlowNodeBO.java @@ -7,7 +7,7 @@ * @description: 业务流程节点表业务扩展类 * @company: hugeinfo * @author: liyj - * @time: 2024-09-06 15:50:06 + * @time: 2024-09-08 15:09:08 * @version: 1.0.0 * @see cn.huge.module.flow.domain.po.FlowNode */ diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/domain/bo/FlowableNodeBO.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/domain/bo/FlowableNodeBO.java index 40265fc..563a0c7 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/domain/bo/FlowableNodeBO.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/domain/bo/FlowableNodeBO.java @@ -7,7 +7,7 @@ * @description: 工作流流程节点信息表业务扩展类 * @company: hugeinfo * @author: liyj - * @time: 2024-09-06 15:50:06 + * @time: 2024-09-08 15:09:07 * @version: 1.0.0 * @see cn.huge.module.flow.domain.po.FlowableNode */ diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/domain/po/FlowNode.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/domain/po/FlowNode.java index 6fe1a8c..473d43e 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/domain/po/FlowNode.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/domain/po/FlowNode.java @@ -13,7 +13,7 @@ * @description: PO中的属性与数据表是一一对应关系,如需根据业务处理不同,请使用BO对象。 * @company:hugeinfo * @author: liyj - * @time: 2024-09-06 15:50:06 + * @time: 2024-09-08 15:09:08 * @version 1.0.0 */ @TableName(value = "dyh_flow_node") @@ -85,6 +85,18 @@ */ @TableField(value = "api") private String api; + + /** + * 对应纠纷进度 + */ + @TableField(value = "case_process") + private String caseProcess; + + /** + * 对应纠纷进度名称 + */ + @TableField(value = "case_process_name") + private String caseProcessName; /** * 节点处理时限,单位:天 @@ -189,4 +201,16 @@ @TableField(value = "update_time") private Date updateTime; + /** + * 流程实例编号 + */ + @TableField(exist = false) + private String processInstanceId; + + /** + * 流程实例任务编号 + */ + @TableField(exist = false) + private String processTaskId; + } diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/domain/po/FlowableNode.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/domain/po/FlowableNode.java index bb6b456..7b1be77 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/domain/po/FlowableNode.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/domain/po/FlowableNode.java @@ -13,7 +13,7 @@ * @description: PO中的属性与数据表是一一对应关系,如需根据业务处理不同,请使用BO对象。 * @company:hugeinfo * @author: liyj - * @time: 2024-09-06 15:50:06 + * @time: 2024-09-08 15:09:07 * @version 1.0.0 */ @TableName(value = "dyh_flowable_node") @@ -43,30 +43,6 @@ */ @TableField(value = "icon") private String icon; - - /** - * 对应请求接口方式,POST:post请求,GET:get请求,PUT:put请求,DELETE:delete请求 - */ - @TableField(value = "api_type") - private String apiType; - - /** - * 对应请求接口 - */ - @TableField(value = "api") - private String api; - - /** - * 对应纠纷进度 - */ - @TableField(value = "case_process") - private String caseProcess; - - /** - * 对应纠纷进度名称 - */ - @TableField(value = "case_process_name") - private String caseProcessName; /** * 删除状态,0:未删除,1:已删除 diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/service/FlowInfoService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/service/FlowInfoService.java index 7cb9355..4ea5a47 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/service/FlowInfoService.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/service/FlowInfoService.java @@ -2,11 +2,24 @@ import cn.huge.base.common.exception.ServiceException; import cn.huge.base.common.utils.DateUtils; +import cn.huge.base.common.utils.FieldUtils; import cn.huge.base.common.utils.IdUtils; +import cn.huge.base.common.utils.ObjectUtils; import cn.huge.module.client.api.impl.UtilsClientImpl; import cn.huge.module.flow.dao.mapper.FlowInfoMapper; import cn.huge.module.flow.domain.po.FlowInfo; +import cn.huge.module.flow.domain.po.FlowNode; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.google.common.collect.Maps; +import org.apache.commons.collections.CollectionUtils; +import org.flowable.engine.HistoryService; +import org.flowable.engine.RepositoryService; +import org.flowable.engine.RuntimeService; +import org.flowable.engine.TaskService; +import org.flowable.engine.runtime.ProcessInstance; +import org.flowable.task.api.Task; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import lombok.extern.slf4j.Slf4j; @@ -38,7 +51,18 @@ private FlowInfoMapper mapper; @Autowired + private FlowNodeService flowNodeService; + @Autowired private UtilsClientImpl utilsClient; + + @Autowired + private RuntimeService runtimeService; + @Autowired + private TaskService taskService; + @Autowired + private HistoryService historyService; + @Autowired + private RepositoryService repositoryService; /** * 更新对象 @@ -130,4 +154,124 @@ } } + /** + * 封装任务节点 + * @param flowableId 流程定义编号 + * @param task 流程任务 + * @return FlowNodeBaseDTO + */ + public FlowNode getFlowNode(String flowableId, Task task){ + // 封装任务节点 + FlowNode flowNode = null; + if (ObjectUtils.isNotEmpty(task)) { + flowNode = flowNodeService.listByFlowAndNode(flowableId, task.getTaskDefinitionKey()); + if (ObjectUtils.isNotEmpty(flowNode)) { + flowNode.setProcessInstanceId(task.getProcessInstanceId()); + flowNode.setProcessTaskId(task.getId()); + } + } + return flowNode; + } + + /** + * 单节点业务操作-根据流程编号启动流程 + * @param flowableId 流程定义编号 + * @param businessId 业务编号 + * @return FlowNodeBaseDTO + */ + public FlowNode startFlow(String flowableId, String businessId) { + try { + // 启动任务 + ProcessInstance processInstance = runtimeService.startProcessInstanceByKey(flowableId, businessId); + Task nextTask = getTaskByProcdefId(processInstance.getId()); + // 封装任务节点 + FlowNode flowNode = this.getFlowNode(flowableId, nextTask); + return flowNode; + }catch (Exception e){ + log.error("service方法[FlowInfoService.startFlow]调用异常:"+e, e); + throw new ServiceException("FlowInfoService.startFlow", e); + } + } + + /** + * 单节点业务操作-通过当前任务编号完成当前任务 + * @param flowableId 流程定义编号 + * @param taskId 任务编号 + * @param operation 操作调解 + * @param handlerUserId 任务执行者 + * @return FlowNodeBaseDTO + */ + public FlowNode completeTask(String flowableId, String taskId, String operation, String handlerUserId) { + try{ + Task task = findTaskById(taskId); + task.setAssignee(handlerUserId); + Map flowParam = Maps.newHashMap(); + flowParam.put("operation", operation); + taskService.complete(task.getId(), flowParam); + Task nextTask = getTaskByProcdefId(task.getProcessInstanceId()); + FlowNode flowNode = this.getFlowNode(flowableId, nextTask); + return flowNode; + }catch (Exception e){ + log.error("service方法[FlowInfoService.completeByTaskId]调用异常:"+e, e); + throw new ServiceException("FlowInfoService.completeByTaskId", e); + } + } + + /** + * 单节点业务操作-任务指定人员 + * @param taskId 任务编号 + * @param handlerUserId 任务候选人 + */ + public void appointTaskOwner(String taskId, String handlerUserId) { + try{ + Task task = findTaskById(taskId); + taskService.addCandidateUser(task.getId(), handlerUserId); + }catch (Exception e){ + log.error("service方法[FlowInfoService.appointTaskOwner]调用异常:"+e, e); + throw new ServiceException("FlowInfoService.appointTaskOwner", e); + } + } + + /** + * 根据流程实例Id获取任务 + * @param processInstanceId 流程实例Id + * @return Task + */ + public Task getTaskByProcdefId(String processInstanceId){ + Task task = taskService.createTaskQuery().processInstanceId(processInstanceId).singleResult(); + return task; + } + + /** + * 根据任务ID,获取任务 + * @param taskId 任务ID + * @return Task + */ + public Task findTaskById(String taskId) { + return taskService.createTaskQuery().taskId(taskId).singleResult(); + } + + /** + * 根据流程实例Id获取当前所有任务 + * @param processInstanceId 流程示例编号 + * @return List<Task> + */ + public List<Task> getTaskByProcdefIds(String processInstanceId){ + List<Task> tasks = taskService.createTaskQuery().processInstanceId(processInstanceId).list(); + return tasks; + } + + /** + * 结束流程 + * @param processInstanceId 流程示例编号 + */ + public void endFlow(String processInstanceId) { + try{ + runtimeService.deleteProcessInstance(processInstanceId,""); + }catch (Exception e){ + log.error("service方法[FlowInfoService.endFlow]调用异常:"+e, e); + throw new ServiceException("FlowInfoService.endFlow", e); + } + } + } diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/service/FlowNodeService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/service/FlowNodeService.java index 75f1b0b..0445025 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/service/FlowNodeService.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/service/FlowNodeService.java @@ -6,6 +6,7 @@ import cn.huge.module.client.api.impl.UtilsClientImpl; import cn.huge.module.flow.dao.mapper.FlowNodeMapper; import cn.huge.module.flow.domain.po.FlowNode; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -26,7 +27,7 @@ * @Description 业务流程节点表业务逻辑处理 * @company hugeinfo * @author liyj - * @Time 2024-09-06 15:50:06 + * @Time 2024-09-08 15:09:08 * @version 1.0.0 */ @Slf4j @@ -130,4 +131,16 @@ } } + /** + * 根据流程定义编号和节点编号查询 + * @param flowableId 流程定义编号 + * @param nodeId 节点编号 + * @return FlowNode + */ + public FlowNode listByFlowAndNode(String flowableId, String nodeId){ + QueryWrapper<FlowNode> flowNodeQueryWrapper = new QueryWrapper<>(); + flowNodeQueryWrapper.eq("flowable_id", flowableId).eq("node_id", nodeId); + return mapper.selectOne(flowNodeQueryWrapper); + } + } diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/service/FlowableNodeService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/service/FlowableNodeService.java index 7468be9..d4ec4ce 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/service/FlowableNodeService.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/service/FlowableNodeService.java @@ -26,7 +26,7 @@ * @Description 工作流流程节点信息表业务逻辑处理 * @company hugeinfo * @author liyj - * @Time 2024-09-06 15:50:06 + * @Time 2024-09-08 15:09:07 * @version 1.0.0 */ @Slf4j 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_LFDJ_3LEVEL_V1.bpmn20.xml new file mode 100644 index 0000000..68072e6 --- /dev/null +++ b/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_LFDJ_3LEVEL_V1.bpmn20.xml @@ -0,0 +1,343 @@ +<?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> + <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="ZJ_HTSH" name="镇街交办回退-镇街综治中心待审核"/> + <userTask id="QJ_SBSH" name="镇街上报-区综治中心待审核"/> + <userTask id="QJ_DFP" name="区综治中心待分派"/> + <userTask id="QJ_DSL" name="区级组织待受理"/> + <userTask id="QJ_HTSH" name="区交办回退-区综治中心待审核"/> + <sequenceFlow id="sid-BB5A459C-B054-420A-923C-066CEB37F080" name="受理" sourceRef="QJ_DSL" targetRef="BLFK"/> + <userTask id="SJ_SBSH" name="区上报-市综治中心待审核"/> + <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"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='sl'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-7D5F25D3-BFF5-4CCC-BBEE-988340FDBBDC" name="区交办区级组织回退申请" sourceRef="QJ_DSL" targetRef="QJ_HTSH"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='htsq'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-C180B358-6A35-4378-8CA9-5BAB85FE89F4" name="区上报审核同意" sourceRef="SJ_SBSH" targetRef="SJ_DFP"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='sbsh_ty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-0DE15696-ADC0-4E8B-A261-B5B5645FF355" name="市交办区综治中心" sourceRef="SJ_DFP" targetRef="QJ_DFP"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jb_zzzx'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-8719B46B-46EE-4612-95D2-3BEF182D783A" name="受理" sourceRef="QJ_DFP" targetRef="BLFK"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='sl'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-A4FC5FA9-BF8D-473C-A082-3C57FE12D4F8" name="受理" sourceRef="ZJ_DFP" targetRef="BLFK"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='sl'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-B67F098E-0836-4721-890A-F97A5261D9E7" name="镇街交办镇街级组织" sourceRef="ZJ_DFP" targetRef="ZJ_DSL"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jb_zszz'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-8652BBA6-729E-43BC-BF51-236C28FF0941" name="镇街交办回退审核不同意" sourceRef="ZJ_HTSH" targetRef="ZJ_DSL"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='htsh_bty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-A8908233-78BC-453D-B685-D4482C4A844D" name="镇街交办回退申请" sourceRef="ZJ_DSL" targetRef="ZJ_HTSH"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='htsq'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-98415952-9130-4812-85B7-7AAAFEA61B08" name="镇街交办回退审核同意" sourceRef="ZJ_HTSH" targetRef="ZJ_DFP"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='htsh_ty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-D4784E91-83A1-4B03-8A65-218763D689D9" name="受理" sourceRef="ZJ_DSL" targetRef="BLFK"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='sl'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-8A779264-9E58-495C-A1E3-118D4099F5FB" name="镇街上报" sourceRef="ZJ_DFP" targetRef="QJ_SBSH"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='sb'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-A06559C9-EAA5-4878-80EE-8E7BE802E321" name="镇街上报审核不同意" sourceRef="QJ_SBSH" targetRef="ZJ_DFP"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='sbsh_bty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-B4976622-2E0D-4FB5-8DDC-077B9B556183" name="区交办镇街综治中心回退申请" sourceRef="ZJ_DFP" targetRef="QJ_HTSH"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='htsq'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-8E3D0F8C-693B-4AE9-9D12-A97EC477C082" name="区交办回退审核同意" sourceRef="QJ_HTSH" targetRef="QJ_DFP"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='htsh_ty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-3009265B-2E06-4F4D-9C49-E09F706A8E23" name="区交办区级组织回退审核不同意" sourceRef="QJ_HTSH" targetRef="QJ_DSL"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='htsh_bty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-0553BC77-9DD8-4E22-857A-7ECD4C467398" name="镇街上报审核同意" sourceRef="QJ_SBSH" targetRef="QJ_DFP"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='sbsh_ty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-E5D28687-1705-499F-B14D-93BE28258667" name="区上报审核不同意" sourceRef="SJ_SBSH" targetRef="QJ_DFP"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='sbsh_bty'}]]></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_zj'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-84E57742-F82B-4B9B-A71B-ABF25770A9CC" name="市交办区综治中心回退申请" sourceRef="QJ_DFP" targetRef="SJ_HTSH"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='htsq'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-6F8353BD-DBF4-405E-9CAD-B2CFFD70804C" name="区交办镇街综治中心" sourceRef="QJ_DFP" targetRef="ZJ_DFP"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jb_zzzx'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-9E45208D-BE9B-4656-887D-DD5B989C8072" name="区交办区级组织" sourceRef="QJ_DFP" targetRef="QJ_DSL"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jb_zszz'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-4CA7C483-75FE-48C0-90C3-7FB895B04DC7" name="区上报" sourceRef="QJ_DFP" targetRef="SJ_SBSH"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='sb'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-04A5C662-116F-469A-B85F-4947C7330970" name="市交办区综治中心回退审核不同意" sourceRef="SJ_HTSH" targetRef="QJ_DFP"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='htsh_bty_qj'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-F8079D11-8A61-4AF1-89B4-194FE609610C" name="市交办市级组织回退审核不同意" sourceRef="SJ_HTSH" targetRef="SJ_DSL"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='htsh_bty'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-4DC80088-03E0-4790-9A32-5F0361EF0583" name="市交办市级组织回退申请" sourceRef="SJ_DSL" targetRef="SJ_HTSH"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='htsq'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-E51C86AA-C90E-4CB1-8D6E-776DADCBFE49" name="市交办市级组织" sourceRef="SJ_DFP" targetRef="SJ_DSL"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='jb_zszz'}]]></conditionExpression> + </sequenceFlow> + <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> + </process> + <bpmndi:BPMNDiagram id="BPMNDiagram_GZDYH_LFDJ_3LEVEL_V1"> + <bpmndi:BPMNPlane bpmnElement="GZDYH_LFDJ_3LEVEL_V1" id="BPMNPlane_GZDYH_LFDJ_3LEVEL_V1"> + <bpmndi:BPMNShape bpmnElement="START" id="BPMNShape_START"> + <omgdc:Bounds height="30.0" width="30.0" x="14.999999552965178" y="159.99999560415753"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="ZJ_DFP" id="BPMNShape_ZJ_DFP"> + <omgdc:Bounds height="80.0" width="100.00000000000001" x="89.99999731779103" y="134.99999597668656"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="ZJ_DSL" id="BPMNShape_ZJ_DSL"> + <omgdc:Bounds height="80.0" width="100.0" x="529.9999853968624" y="29.999998658895528"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="BLFK" id="BPMNShape_BLFK"> + <omgdc:Bounds height="80.0" width="99.99999999999977" x="922.4999754503378" y="134.99999597668656"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="JASQ" id="BPMNShape_JASQ"> + <omgdc:Bounds height="80.0" width="100.0" x="1067.4999891966586" y="134.99999798834327"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="JASH" id="BPMNShape_JASH"> + <omgdc:Bounds height="80.0" width="100.0" x="1212.4999891966586" y="134.99999798834327"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="ZJ_HTSH" id="BPMNShape_ZJ_HTSH"> + <omgdc:Bounds height="80.0" width="100.00000000000009" x="239.999978542329" y="29.999998658895528"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="QJ_SBSH" id="BPMNShape_QJ_SBSH"> + <omgdc:Bounds height="80.00000000000006" width="99.99999999999996" x="89.99999731779103" y="459.99998420476953"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="QJ_DFP" id="BPMNShape_QJ_DFP"> + <omgdc:Bounds height="80.00000000000006" width="100.0" x="314.99998591840307" y="459.9999773502357"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="QJ_DSL" id="BPMNShape_QJ_DSL"> + <omgdc:Bounds height="80.0" width="100.0" x="539.9999839067463" y="269.9999879300598"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="QJ_HTSH" id="BPMNShape_QJ_HTSH"> + <omgdc:Bounds height="80.0" width="99.99999999999994" x="314.9999906122686" y="269.9999879300598"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="SJ_SBSH" id="BPMNShape_SJ_SBSH"> + <omgdc:Bounds height="80.00000000000011" width="99.99999999999999" x="89.9999986588955" y="689.9999897181989"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="SJ_DFP" id="BPMNShape_SJ_DFP"> + <omgdc:Bounds height="80.00000000000011" width="100.0" x="314.9999906122686" y="689.9999794363981"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="SJ_HTSH" id="BPMNShape_SJ_HTSH"> + <omgdc:Bounds height="80.0" width="99.99999999999989" x="624.9999861419203" y="569.9999636411679"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="SJ_DSL" id="BPMNShape_SJ_DSL"> + <omgdc:Bounds height="80.0" width="100.0" x="897.4999653175485" 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"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="END" id="BPMNShape_END"> + <omgdc:Bounds height="28.0" width="28.0" x="1248.4999705925593" y="564.9999905377625"/> + </bpmndi:BPMNShape> + <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"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-F8079D11-8A61-4AF1-89B4-194FE609610C" id="BPMNEdge_sid-F8079D11-8A61-4AF1-89B4-194FE609610C"> + <omgdi:waypoint x="724.9499861417911" y="589.9999635924937"/> + <omgdi:waypoint x="897.4999653175485" 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-A06559C9-EAA5-4878-80EE-8E7BE802E321" id="BPMNEdge_sid-A06559C9-EAA5-4878-80EE-8E7BE802E321"> + <omgdi:waypoint x="139.9999985196551" y="459.99998420476953"/> + <omgdi:waypoint x="139.9999973224324" y="214.94999597668658"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-97B79C3A-867D-4057-86E1-58626E22F7E3" id="BPMNEdge_sid-97B79C3A-867D-4057-86E1-58626E22F7E3"> + <omgdi:waypoint x="1167.4499891966586" y="174.99999798834327"/> + <omgdi:waypoint x="1212.4999891966393" y="174.99999798834327"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-B38ABFCE-C643-449F-8AE3-058FE0997A12" id="BPMNEdge_sid-B38ABFCE-C643-449F-8AE3-058FE0997A12"> + <omgdi:waypoint x="1262.4999891966586" y="134.99999798834327"/> + <omgdi:waypoint x="1262.4999891966586" y="68.00000020861626"/> + <omgdi:waypoint x="972.4999754503377" y="68.00000020861626"/> + <omgdi:waypoint x="972.4999754503377" y="134.99999597668656"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-84E57742-F82B-4B9B-A71B-ABF25770A9CC" id="BPMNEdge_sid-84E57742-F82B-4B9B-A71B-ABF25770A9CC"> + <omgdi:waypoint x="367.7237370172767" y="539.9499773502358"/> + <omgdi:waypoint x="624.9999861419203" y="629.6513046901603"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-7D5F25D3-BFF5-4CCC-BBEE-988340FDBBDC" id="BPMNEdge_sid-7D5F25D3-BFF5-4CCC-BBEE-988340FDBBDC"> + <omgdi:waypoint x="539.9999839066169" y="329.99998483066406"/> + <omgdi:waypoint x="414.9499906122686" y="329.99998790547113"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-3009265B-2E06-4F4D-9C49-E09F706A8E23" id="BPMNEdge_sid-3009265B-2E06-4F4D-9C49-E09F706A8E23"> + <omgdi:waypoint x="414.9499906122686" y="289.9999879300598"/> + <omgdi:waypoint x="539.9999839066215" y="289.9999879300598"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-0DE15696-ADC0-4E8B-A261-B5B5645FF355" id="BPMNEdge_sid-0DE15696-ADC0-4E8B-A261-B5B5645FF355"> + <omgdi:waypoint x="339.9999903617707" y="689.9999794363981"/> + <omgdi:waypoint x="339.999990165234" y="540.6698992893806"/> + </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"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-C180B358-6A35-4378-8CA9-5BAB85FE89F4" id="BPMNEdge_sid-C180B358-6A35-4378-8CA9-5BAB85FE89F4"> + <omgdi:waypoint x="189.94999724572128" y="729.9999874333544"/> + <omgdi:waypoint x="314.99998880685246" y="729.9999817189581"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-6F8353BD-DBF4-405E-9CAD-B2CFFD70804C" id="BPMNEdge_sid-6F8353BD-DBF4-405E-9CAD-B2CFFD70804C"> + <omgdi:waypoint x="337.0279577189482" y="459.9999773502357"/> + <omgdi:waypoint x="165.6643329875281" y="214.94999597668658"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-BB5A459C-B054-420A-923C-066CEB37F080" id="BPMNEdge_sid-BB5A459C-B054-420A-923C-066CEB37F080"> + <omgdi:waypoint x="639.9499839067461" y="292.35292976823126"/> + <omgdi:waypoint x="922.4999754503378" y="192.62940708035316"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-04A5C662-116F-469A-B85F-4947C7330970" id="BPMNEdge_sid-04A5C662-116F-469A-B85F-4947C7330970"> + <omgdi:waypoint x="624.9999861419201" y="592.2580303812292"/> + <omgdi:waypoint x="414.94998591840306" y="517.7241686769145"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-E51C86AA-C90E-4CB1-8D6E-776DADCBFE49" id="BPMNEdge_sid-E51C86AA-C90E-4CB1-8D6E-776DADCBFE49"> + <omgdi:waypoint x="414.94999061226815" y="722.1286382139056"/> + <omgdi:waypoint x="897.4999653175482" y="646.1623280576964"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-8719B46B-46EE-4612-95D2-3BEF182D783A" id="BPMNEdge_sid-8719B46B-46EE-4612-95D2-3BEF182D783A"> + <omgdi:waypoint x="414.9499859180182" y="499.9999773502358"/> + <omgdi:waypoint x="947.4999754503378" y="499.9999773502358"/> + <omgdi:waypoint x="947.4999754503378" y="214.94999597668658"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-13C1AC7D-ACE2-45AE-8B02-D9A6E5ADF777" id="BPMNEdge_sid-13C1AC7D-ACE2-45AE-8B02-D9A6E5ADF777"> + <omgdi:waypoint x="1022.4499754503375" y="174.99999666966758"/> + <omgdi:waypoint x="1067.4999891966297" y="174.99999729466862"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-E5D28687-1705-499F-B14D-93BE28258667" id="BPMNEdge_sid-E5D28687-1705-499F-B14D-93BE28258667"> + <omgdi:waypoint x="177.67079992478847" y="689.9999897181989"/> + <omgdi:waypoint x="319.1602666546586" y="539.9499773502358"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-0B45B4F0-4106-4B5E-A8F4-EFC9832072F8" id="BPMNEdge_sid-0B45B4F0-4106-4B5E-A8F4-EFC9832072F8"> + <omgdi:waypoint x="414.9499906111769" y="749.9999794363982"/> + <omgdi:waypoint x="1021.4999754503376" y="749.9999794363982"/> + <omgdi:waypoint x="1021.4999754503376" 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"/> + <omgdi:waypoint x="339.9499785422963" y="49.99999865889553"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-4CA7C483-75FE-48C0-90C3-7FB895B04DC7" id="BPMNEdge_sid-4CA7C483-75FE-48C0-90C3-7FB895B04DC7"> + <omgdi:waypoint x="314.99998591840307" y="520.8081864151441"/> + <omgdi:waypoint x="116.11666517401628" y="689.9999897181989"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-080C79C3-4D90-407B-8451-F88A2C4D9F7A" id="BPMNEdge_sid-080C79C3-4D90-407B-8451-F88A2C4D9F7A"> + <omgdi:waypoint x="645.1884919069653" y="649.9499636411679"/> + <omgdi:waypoint x="414.94999061226855" y="697.8413389092494"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-9E45208D-BE9B-4656-887D-DD5B989C8072" id="BPMNEdge_sid-9E45208D-BE9B-4656-887D-DD5B989C8072"> + <omgdi:waypoint x="414.94998591840306" y="479.9999773502357"/> + <omgdi:waypoint x="589.9999839067463" y="479.9999773502357"/> + <omgdi:waypoint x="589.9999839067463" y="349.9499879300598"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-D4784E91-83A1-4B03-8A65-218763D689D9" id="BPMNEdge_sid-D4784E91-83A1-4B03-8A65-218763D689D9"> + <omgdi:waypoint x="629.9499853968623" y="69.99999865889552"/> + <omgdi:waypoint x="947.4999754503378" y="69.99999865889552"/> + <omgdi:waypoint x="947.4999754503378" y="134.99999597668656"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-4DC80088-03E0-4790-9A32-5F0361EF0583" id="BPMNEdge_sid-4DC80088-03E0-4790-9A32-5F0361EF0583"> + <omgdi:waypoint x="897.4999653170802" y="629.9999551937474"/> + <omgdi:waypoint x="724.9499830196238" y="629.9999635924936"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-4E2FBB65-5E57-4536-8F84-A754A1E0A546" id="BPMNEdge_sid-4E2FBB65-5E57-4536-8F84-A754A1E0A546"> + <omgdi:waypoint x="972.4999653418569" y="569.9999551475067"/> + <omgdi:waypoint x="972.4999744268235" y="214.94999597668658"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-8E3D0F8C-693B-4AE9-9D12-A97EC477C082" id="BPMNEdge_sid-8E3D0F8C-693B-4AE9-9D12-A97EC477C082"> + <omgdi:waypoint x="364.9999896240863" y="349.9499879300598"/> + <omgdi:waypoint x="364.9999869053501" y="459.9999773502357"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-B4976622-2E0D-4FB5-8DDC-077B9B556183" id="BPMNEdge_sid-B4976622-2E0D-4FB5-8DDC-077B9B556183"> + <omgdi:waypoint x="186.64687813794717" y="214.94999597668658"/> + <omgdi:waypoint x="314.9999906122685" y="329.110560222979"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-8652BBA6-729E-43BC-BF51-236C28FF0941" id="BPMNEdge_sid-8652BBA6-729E-43BC-BF51-236C28FF0941"> + <omgdi:waypoint x="339.94997854232906" y="89.99999865889554"/> + <omgdi:waypoint x="529.9999853968624" y="89.99999865889552"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-B67F098E-0836-4721-890A-F97A5261D9E7" id="BPMNEdge_sid-B67F098E-0836-4721-890A-F97A5261D9E7"> + <omgdi:waypoint x="189.94999731779103" y="154.99999597668656"/> + <omgdi:waypoint x="554.9999853968624" y="154.99999597668656"/> + <omgdi:waypoint x="554.9999853968624" y="109.94999865889554"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-98415952-9130-4812-85B7-7AAAFEA61B08" id="BPMNEdge_sid-98415952-9130-4812-85B7-7AAAFEA61B08"> + <omgdi:waypoint x="239.999978542329" y="69.99999865889552"/> + <omgdi:waypoint x="139.999997317791" y="69.99999865889552"/> + <omgdi:waypoint x="139.99999731779104" y="134.99999597668656"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-8A779264-9E58-495C-A1E3-118D4099F5FB" id="BPMNEdge_sid-8A779264-9E58-495C-A1E3-118D4099F5FB"> + <omgdi:waypoint x="114.99999731779104" y="214.94999597668658"/> + <omgdi:waypoint x="114.99999731779101" y="459.99998420476953"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-A4FC5FA9-BF8D-473C-A082-3C57FE12D4F8" id="BPMNEdge_sid-A4FC5FA9-BF8D-473C-A082-3C57FE12D4F8"> + <omgdi:waypoint x="189.94999731771603" y="174.99999597668656"/> + <omgdi:waypoint x="922.499975450157" y="174.99999597668656"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-0553BC77-9DD8-4E22-857A-7ECD4C467398" id="BPMNEdge_sid-0553BC77-9DD8-4E22-857A-7ECD4C467398"> + <omgdi:waypoint x="189.94999731779097" y="499.99998268153973"/> + <omgdi:waypoint x="314.99998591792496" y="499.99997887194235"/> + </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_3LEVEL_V1.bpmn20.xml b/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_ZXSL_3LEVEL_V1.bpmn20.xml new file mode 100644 index 0000000..c39f0e3 --- /dev/null +++ b/dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_ZXSL_3LEVEL_V1.bpmn20.xml @@ -0,0 +1,96 @@ +<?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="ZXSL_START" name="开始"/> + <userTask id="ZXSL" name="自行受理"/> + <userTask id="BLFK" name="办理反馈"/> + <userTask id="DSRPJ" name="当事人评价"/> + <userTask id="JAGD" name="结案归档"/> + <userTask id="JASH" name="结案审核"/> + <endEvent id="ZXSL_END" name="结束"/> + <userTask id="JASQ" name="结案申请"/> + <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-E2A63ACD-76CD-4419-A771-C082334A3A11" sourceRef="ZXSL_START" targetRef="ZXSL"/> + <sequenceFlow id="sid-6032A3F4-92DC-4CFE-BCE7-404BB56C66C5" name="通过" sourceRef="ZXSL" targetRef="BLFK"> + <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-0AE3E811-3EBD-4891-B2BD-F2E091E41541" name="通过" sourceRef="JASQ" targetRef="JASH"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='forward'}]]></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-15046AD2-218B-4567-B05A-26B2D0069DE2" name="通过" sourceRef="DSRPJ" targetRef="JAGD"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${operation=='forward'}]]></conditionExpression> + </sequenceFlow> + <sequenceFlow id="sid-FE66E67A-D6D4-4E68-BB7E-14A17E87B9E5" sourceRef="JAGD" targetRef="ZXSL_END"/> + </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="ZXSL_START" id="BPMNShape_ZXSL_START"> + <omgdc:Bounds height="30.0" width="30.0" x="75.0" y="160.00001244246837"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="ZXSL" id="BPMNShape_ZXSL"> + <omgdc:Bounds height="80.0" width="99.99999999999997" x="150.0" y="134.99998591840347"/> + </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="794.9999881535771" y="134.99999798834327"/> + </bpmndi:BPMNShape> + <bpmndi:BPMNShape bpmnElement="JAGD" id="BPMNShape_JAGD"> + <omgdc:Bounds height="80.0" width="100.0" x="959.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="ZXSL_END" id="BPMNShape_ZXSL_END"> + <omgdc:Bounds height="28.0" width="28.0" x="1109.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: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-E2A63ACD-76CD-4419-A771-C082334A3A11" id="BPMNEdge_sid-E2A63ACD-76CD-4419-A771-C082334A3A11"> + <omgdi:waypoint x="104.94999849155933" y="175.00000882555042"/> + <omgdi:waypoint x="150.0" y="174.99999796274022"/> + </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-78554576-20C8-4A98-9A33-92DD5542AA27" id="BPMNEdge_sid-78554576-20C8-4A98-9A33-92DD5542AA27"> + <omgdi:waypoint x="759.9499901651751" y="174.99999798834327"/> + <omgdi:waypoint x="794.9999881535146" y="174.99999798834327"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-FE66E67A-D6D4-4E68-BB7E-14A17E87B9E5" id="BPMNEdge_sid-FE66E67A-D6D4-4E68-BB7E-14A17E87B9E5"> + <omgdi:waypoint x="1059.9499856948855" y="175.00000415177684"/> + <omgdi:waypoint x="1109.999983378599" y="175.0000103275493"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-6032A3F4-92DC-4CFE-BCE7-404BB56C66C5" id="BPMNEdge_sid-6032A3F4-92DC-4CFE-BCE7-404BB56C66C5"> + <omgdi:waypoint x="249.94999986861848" y="174.99998957230352"/> + <omgdi:waypoint x="314.9999953060815" y="174.99999433078568"/> + </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="sid-15046AD2-218B-4567-B05A-26B2D0069DE2" id="BPMNEdge_sid-15046AD2-218B-4567-B05A-26B2D0069DE2"> + <omgdi:waypoint x="894.9499881534662" y="174.99999798834327"/> + <omgdi:waypoint x="959.9999856948592" 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:BPMNPlane> + </bpmndi:BPMNDiagram> +</definitions> \ No newline at end of file diff --git a/dyh-service/dyh-mediate/src/test/java/cn/huge/module/BuildCodeServiceTest.java b/dyh-service/dyh-mediate/src/test/java/cn/huge/module/BuildCodeServiceTest.java index 609f262..924c0bd 100644 --- a/dyh-service/dyh-mediate/src/test/java/cn/huge/module/BuildCodeServiceTest.java +++ b/dyh-service/dyh-mediate/src/test/java/cn/huge/module/BuildCodeServiceTest.java @@ -21,8 +21,7 @@ @Test public void buildAllTest() { - service.buildAll(basePackage, packageName, "CaseReturn", tableSchema, "dyh_case_return", author, version); - service.buildAll(basePackage, packageName, "CaseAppear", tableSchema, "dyh_case_appear", author, version); + service.buildAll(basePackage, packageName, "CaseInfoUnfold", tableSchema, "dyh_case_info_unfold", author, version); } diff --git a/dyh-service/dyh-sys/src/test/java/cn/huge/module/BuildCodeServiceTest.java b/dyh-service/dyh-sys/src/test/java/cn/huge/module/BuildCodeServiceTest.java index 5e60de0..b9114f9 100644 --- a/dyh-service/dyh-sys/src/test/java/cn/huge/module/BuildCodeServiceTest.java +++ b/dyh-service/dyh-sys/src/test/java/cn/huge/module/BuildCodeServiceTest.java @@ -21,7 +21,10 @@ @Test public void buildAllTest() { - service.buildAll(basePackage, packageName, className, tableSchema, tableName, author, version); + service.buildAll(basePackage, "kind", "SyCause", tableSchema, "dyh_sy_cause", author, version); + service.buildAll(basePackage, "kind", "SyCauseThird", tableSchema, "dyh_sy_cause_third", author, version); + service.buildAll(basePackage, "kind", "SyIssue", tableSchema, "dyh_sy_issue", author, version); + service.buildAll(basePackage, "kind", "SyRegion", tableSchema, "dyh_sy_region", author, version); } -- Gitblit v1.8.0