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; } 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; } } } 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(); } } } 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)){ 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> 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"/> 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 */ 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; } 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") 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; 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"); 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_------------------- 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(); } } } 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) { 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> 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> 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 */ dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/AcceptTaskDTO.java
New file @@ -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; } 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; 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; dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/SignTaskDTO.java
New file @@ -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; } 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") @@ -75,6 +75,18 @@ private String mediatorMobile; /** * 配合组织,多个用,隔开 */ @TableField(value = "assist_unit_id") private String assistUnitId; /** * 配合组织名称,多个用、隔开 */ @TableField(value = "assist_unit_name") private String assistUnitName; /** * 调解开始时间 */ @TableField(value = "medi_start_time") 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; 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; } 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()); } // 新增纠纷信息 this.save(caseInfo); // 新增纠纷信息扩展表 CaseInfoUnfold caseInfoUnfold = new CaseInfoUnfold(); caseInfoUnfold.setId(caseInfo.getId()); caseInfoUnfold.setCreateTime(nowDate); caseInfoUnfold.setUpdateTime(nowDate); caseInfoUnfoldService.save(caseInfoUnfold); // 启动工作流 //判断是否自行受理 if(1 == registerSaveDTO.getIsSelfAccept()){ //todo 流程接口修改status、status_name、process、process_name caseInfoUnfold.setMediateUnitId(loginUser.getUnitId()); caseInfoUnfold.setMediateUnitName(loginUser.getUnitName()); // 自行受理流程 caseTaskService.webStartFlowZXSL(caseInfo, loginUser); }else { // 自动调度流程 caseTaskService.webStartFlowLFDJ(caseInfo); } this.save(caseInfo); caseInfoUnfoldService.save(caseInfoUnfold); }else if(1 == registerSaveDTO.getOperateType()){ this.updateById(caseInfo); } 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); } } } 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); 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); } 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 条件 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); } } } 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 dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/consts/FlowNodeEnum.java
File was renamed from dyh-service/dyh-base/src/main/java/cn/huge/module/mediate/constant/FlowNodeBaseEnum.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; dyh-service/dyh-mediate/src/main/java/cn/huge/module/flow/consts/FlowableConsts.java
New file @@ -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---------- */ 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)){ 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"); 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 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 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> 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 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 */ 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 */ 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; } 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:已删除 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); } } } 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); } } 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 dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_LFDJ_3LEVEL_V1.bpmn20.xml
New file @@ -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> dyh-service/dyh-mediate/src/main/resources/processes/GZDYH_ZXSL_3LEVEL_V1.bpmn20.xml
New file @@ -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> 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); } 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); }