dyh-service/dyh-base/src/main/java/cn/huge/module/mediate/constant/CaseBaseConstsEnum.java
@@ -17,7 +17,7 @@ CASE_CANAL_2("22_00001-2", "线上来访"), /** * 事项来源,22_00001-1:大厅来访,22_00001-2:线上来访 * 来访形式,24_00002-1:来访,22_024_000020001-2:线上 */ VISIT_WAY_1("24_00002-1", "来访"), VISIT_WAY_2("24_00002-2", "线上"), dyh-service/dyh-base/src/main/java/cn/huge/module/sys/constant/TimeUnitConsts.java
File was renamed from dyh-service/dyh-sys/src/main/java/cn/huge/module/sy/consts/TimeUnitConsts.java @@ -1,4 +1,4 @@ package cn.huge.module.sy.consts; package cn.huge.module.sys.constant; /** * @title: 时间单位常量类 dyh-service/dyh-base/src/main/java/cn/huge/module/sys/dto/SyTimeLimitDTO.java
New file @@ -0,0 +1,78 @@ package cn.huge.module.sys.dto; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableLogic; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import java.util.Date; /** * @title: 系统时限配置表数据库对应关系类 * @description: PO中的属性与数据表是一一对应关系,如需根据业务处理不同,请使用BO对象。 * @company:hugeinfo * @author: wangwh * @time: 2024-09-04 16:48:57 * @version 1.0.0 */ @Data public class SyTimeLimitDTO { /** * 主键编号 */ private String id; /** * 时限类型 */ private String limitType; /** * 时限名称 */ private String limitTypeName; /** * 时限对应表 */ private String limitTable; /** * 期限 */ private Integer timeTerm; /** * 期限单位 */ private String termUnit; /** * 操作人编号 */ private String operUserId; /** * 操作人名称 */ private String operUserName; /** * 删除状态,0:未删除,1:已删除 */ @TableLogic private Integer deleteStatus; /** * 创建时间 */ private Date createTime; /** * 状态时间 */ private Date updateTime; } dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/controller/web/CtUnitWebController.java
@@ -368,7 +368,7 @@ } /** * 选择组织 * 交办-选择组织 * @url {ctx}/api/web/ctUnit/unitChoose * @return Object */ dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/controller/web/CtUserWebController.java
@@ -388,7 +388,7 @@ public Object userChoose(@CurrentUser String userId) { try { String roleCode = request.getParameter("roleCode"); SelectTermDTO unitSelectTerms = service.userChoose(userId, roleCode); List<SelectTermDTO> unitSelectTerms = service.userChoose(userId, roleCode); return ReturnSucUtils.getRepInfo(unitSelectTerms); } catch (Exception e) { return ReturnFailUtils.getRepInfo(e.getMessage()); dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUnitService.java
@@ -15,6 +15,7 @@ import cn.huge.module.ctuser.domain.po.CtUserole; import cn.huge.module.ctuser.dto.CtUnitWeChatCountDTO; import cn.huge.module.cust.constant.RoleBaseEnum; import cn.huge.module.cust.constant.UserBaseConsts; import cn.huge.module.cust.dto.CtUserDTO; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -303,47 +304,167 @@ } /** * 按条件分页查询 * * @param userId 分页对象 * @return Page * 交办-选择组织 * @param userId * @return */ public List<SelectTermDTO> unitChoose(String userId) { // 获取当前登录用户 CtUserDTO loginUser = ctUserService.clientGetUserAll(userId); // 组织条件 List<CtUnit> ctUnitList = mapper.listAllChild(loginUser.getUnitId()); List<SelectTermDTO> unitSelectTerms = new ArrayList<>(); // 部门条件 QueryWrapper<CtDept> ctDeptQueryWrapper = new QueryWrapper<>(); ctDeptQueryWrapper.eq("unit_id", loginUser.getUnitId()).select("id", "unit_id", "name", "parent_id"); List<CtDept> ctDeptList = ctDeptService.list(ctDeptQueryWrapper); // 获取当前登录用户的部门 CtUnit loginUnit = mapper.selectById(loginUser.getUnitId()); // 市级交办 if (UserBaseConsts.UNIT_GRADE_1 == loginUnit.getUnitGrade()){ QueryWrapper<CtUnit> ctUnitQueryWrapper = new QueryWrapper<>(); ctUnitQueryWrapper.eq("parent_id", loginUnit.getId()); List<CtUnit> ctUnitList = mapper.selectList(ctUnitQueryWrapper); // 定义市直部门数组 List<SelectTermDTO> szbmList = new ArrayList<>(); // 定义区综治中心数组 List<SelectTermDTO> qzzzxList = new ArrayList<>(); for(CtUnit ctUnit: ctUnitList){ SelectTermDTO unitSelectTerm = new SelectTermDTO(); unitSelectTerm.setValue(ctUnit.getId()); unitSelectTerm.setLabel(ctUnit.getUnitName()); unitSelectTerm.setParentId(ctUnit.getParentId()); unitSelectTerm.setCheckable(true); List<SelectTermDTO> deptSelectTerms = new ArrayList<>(); if(loginUser.getUnitId().equals(ctUnit.getId())){ for(CtDept ctDept : ctDeptList){ if(ctUnit.getId().equals(ctDept.getUnitId())){ SelectTermDTO deptSelectTerm = new SelectTermDTO(); deptSelectTerm.setValue(ctDept.getId()); deptSelectTerm.setLabel(ctDept.getName()); deptSelectTerm.setParentId(ctDept.getParentId()); deptSelectTerm.setCheckable(true); deptSelectTerms.add(deptSelectTerm); if (UserBaseConsts.UNIT_TYPE_1 == ctUnit.getUnitType()){ szbmList.add(unitSelectTerm); } List<SelectTermDTO> depts = SelectTermUtils.createTreeByRoot(deptSelectTerms); unitSelectTerm.setChildren(depts); if (UserBaseConsts.UNIT_TYPE_2 == ctUnit.getUnitType()){ qzzzxList.add(unitSelectTerm); } } unitSelectTerms.add(unitSelectTerm); // 封装返回数据 List<SelectTermDTO> result = new ArrayList<>(); // 创建第一级 SelectTermDTO firstSelectTermDTO = new SelectTermDTO(); firstSelectTermDTO.setValue(loginUser.getUnitId()); firstSelectTermDTO.setLabel(loginUser.getUnitName()); firstSelectTermDTO.setCheckable(false); List<SelectTermDTO> firstChildren = new ArrayList<>(); // 市直部门 SelectTermDTO szbmSelectTermDTO = new SelectTermDTO(); szbmSelectTermDTO.setValue("szbm"); szbmSelectTermDTO.setLabel("市直部门"); szbmSelectTermDTO.setCheckable(false); szbmSelectTermDTO.setChildren(szbmList); firstChildren.add(szbmSelectTermDTO); // 区综治中心 SelectTermDTO qzzzxSelectTermDTO = new SelectTermDTO(); qzzzxSelectTermDTO.setValue("qzzzx"); qzzzxSelectTermDTO.setLabel("区综治中心"); qzzzxSelectTermDTO.setCheckable(false); qzzzxSelectTermDTO.setChildren(qzzzxList); firstChildren.add(qzzzxSelectTermDTO); // 第一级子级 firstSelectTermDTO.setChildren(firstChildren); result.add(firstSelectTermDTO); return result; }else if (UserBaseConsts.UNIT_GRADE_2 == loginUnit.getUnitGrade()){ // 区级交办 QueryWrapper<CtUnit> ctUnitQueryWrapper = new QueryWrapper<>(); ctUnitQueryWrapper.eq("parent_id", loginUnit.getId()); List<CtUnit> ctUnitList = mapper.selectList(ctUnitQueryWrapper); // 定义市区直部门数组 List<SelectTermDTO> qzbmList = new ArrayList<>(); // 定义镇街综治中心数组 List<SelectTermDTO> zjzzzxList = new ArrayList<>(); for (CtUnit ctUnit: ctUnitList){ SelectTermDTO unitSelectTerm = new SelectTermDTO(); unitSelectTerm.setValue(ctUnit.getId()); unitSelectTerm.setLabel(ctUnit.getUnitName()); unitSelectTerm.setParentId(ctUnit.getParentId()); unitSelectTerm.setCheckable(true); if (UserBaseConsts.UNIT_TYPE_2 == ctUnit.getUnitType()){ qzbmList.add(unitSelectTerm); } return SelectTermUtils.createTreeByFirst(unitSelectTerms, loginUser.getUnitId()); if (UserBaseConsts.UNIT_TYPE_3 == ctUnit.getUnitType()){ zjzzzxList.add(unitSelectTerm); } } // 封装返回数据 List<SelectTermDTO> result = new ArrayList<>(); // 创建第一级 SelectTermDTO firstSelectTermDTO = new SelectTermDTO(); firstSelectTermDTO.setValue(loginUser.getUnitId()); firstSelectTermDTO.setLabel(loginUser.getUnitName()); firstSelectTermDTO.setCheckable(false); List<SelectTermDTO> firstChildren = new ArrayList<>(); // 市直部门 SelectTermDTO qzzbmSelectTermDTO = new SelectTermDTO(); qzzbmSelectTermDTO.setValue("qzbm"); qzzbmSelectTermDTO.setLabel("区直部门"); qzzbmSelectTermDTO.setCheckable(false); qzzbmSelectTermDTO.setChildren(qzbmList); firstChildren.add(qzzbmSelectTermDTO); // 区综治中心 SelectTermDTO zjzzzxSelectTermDTO = new SelectTermDTO(); zjzzzxSelectTermDTO.setValue("zjzzzx"); zjzzzxSelectTermDTO.setLabel("街(镇)综治中心"); zjzzzxSelectTermDTO.setCheckable(false); zjzzzxSelectTermDTO.setChildren(zjzzzxList); firstChildren.add(zjzzzxSelectTermDTO); // 第一级子级 firstSelectTermDTO.setChildren(firstChildren); result.add(firstSelectTermDTO); return result; }else if (UserBaseConsts.UNIT_GRADE_3 == loginUnit.getUnitGrade()){ // 镇街交办 // 查询镇街部门数组 QueryWrapper<CtDept> ctDeptQueryWrapper = new QueryWrapper<>(); ctDeptQueryWrapper.eq("unit_id", loginUnit.getId()); List<CtDept> deptList = ctDeptService.list(ctDeptQueryWrapper); List<SelectTermDTO> zjbmList = new ArrayList<>(); for (CtDept ctDept: deptList){ SelectTermDTO unitSelectTerm = new SelectTermDTO(); unitSelectTerm.setValue(ctDept.getId()); unitSelectTerm.setLabel(ctDept.getName()); unitSelectTerm.setParentId(loginUnit.getId()); unitSelectTerm.setCheckable(true); zjbmList.add(unitSelectTerm); } // 查询村社数组 QueryWrapper<CtUnit> ctUnitQueryWrapper = new QueryWrapper<>(); ctUnitQueryWrapper.eq("parent_id", loginUnit.getId()); List<CtUnit> ctUnitList = mapper.selectList(ctUnitQueryWrapper); List<SelectTermDTO> csList = new ArrayList<>(); for (CtUnit ctUnit: ctUnitList){ SelectTermDTO unitSelectTerm = new SelectTermDTO(); unitSelectTerm.setValue(ctUnit.getId()); unitSelectTerm.setLabel(ctUnit.getUnitName()); unitSelectTerm.setParentId(ctUnit.getParentId()); unitSelectTerm.setCheckable(true); csList.add(unitSelectTerm); } // 封装返回数据 List<SelectTermDTO> result = new ArrayList<>(); // 创建第一级 SelectTermDTO firstSelectTermDTO = new SelectTermDTO(); firstSelectTermDTO.setValue(loginUser.getUnitId()); firstSelectTermDTO.setLabel(loginUser.getUnitName()); firstSelectTermDTO.setCheckable(false); List<SelectTermDTO> firstChildren = new ArrayList<>(); // 村社 SelectTermDTO zjbmSelectTermDTO = new SelectTermDTO(); zjbmSelectTermDTO.setValue("zjbm"); zjbmSelectTermDTO.setLabel("街(镇)部门"); zjbmSelectTermDTO.setCheckable(false); zjbmSelectTermDTO.setChildren(zjbmList); firstChildren.add(zjbmSelectTermDTO); // 区综治中心 SelectTermDTO csSelectTermDTO = new SelectTermDTO(); csSelectTermDTO.setValue("cs"); csSelectTermDTO.setLabel("村(社)"); csSelectTermDTO.setCheckable(false); csSelectTermDTO.setChildren(csList); firstChildren.add(csSelectTermDTO); // 第一级子级 firstSelectTermDTO.setChildren(firstChildren); result.add(firstSelectTermDTO); return result; }else { return new ArrayList<>(); } } } dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUserService.java
@@ -603,58 +603,40 @@ } /** * 按条件分页查询 * * @param userId 分页对象 * @param roleCode 条件 * @return Page * 选择人员 * @param userId * @param roleCode * @return */ public SelectTermDTO userChoose(String userId, String roleCode) { public List<SelectTermDTO> userChoose(String userId, String roleCode) { try { // 获取当前登录用户 CtUserDTO loginUser = clientGetUserAll(userId); List<SelectTermDTO> unitSelectTerms = new ArrayList<>(); List<SelectTermDTO> result = new ArrayList<>(); // 人员条件 List<CtUser> ctUsers = null; if (StringUtils.isNotEmpty(roleCode)){ ctUsers = listUserByDeptRoleList(loginUser.getUnitId(), roleCode); }else { QueryWrapper<CtUser> ctUserQueryWrapper = new QueryWrapper<>(); ctUserQueryWrapper.in("unit_id", loginUser.getUnitId()).select("id", "true_name", "dept_id"); ctUserQueryWrapper.in("unit_id", loginUser.getUnitId()).select("id", "true_name"); ctUsers = this.list(ctUserQueryWrapper); } List<String> userIdList = ctUsers.stream().map(CtUser::getId).collect(Collectors.toList()); QueryWrapper<CtUserole> ctUserQueryWrapper = new QueryWrapper<>(); ctUserQueryWrapper.in("user_id", userIdList).select("user_id", "role_name"); List<CtUserole> roleList = ctUseroleService.list(ctUserQueryWrapper); SelectTermDTO unitSelectTerm = new SelectTermDTO(); unitSelectTerm.setValue(loginUser.getUnitId()); unitSelectTerm.setLabel(loginUser.getUnitName()); unitSelectTerm.setCheckable(false); List<SelectTermDTO> deptSelectTerms = new ArrayList<>(); if (CollectionUtils.isNotEmpty(ctUsers)) { List<SelectTermDTO> userSelectTerms = new ArrayList<>(); for(CtUser ctUser : ctUsers){ List<CtUserole> ctUseroleList = new ArrayList<>(); for(CtUserole ctUserole: roleList){ if(ctUser.getId().equals(ctUserole.getUserId())){ ctUseroleList.add(ctUserole); } } SelectTermDTO userSelectTerm = new SelectTermDTO(); userSelectTerm.setValue(ctUser.getId()); userSelectTerm.setCheckable(true); String roleName = ctUseroleList.stream().map(CtUserole::getRoleName).collect(Collectors.joining(",")); userSelectTerm.setLabel(ctUser.getTrueName()+"("+roleName+")"); userSelectTerm.setLabel(ctUser.getTrueName()); userSelectTerms.add(userSelectTerm); } List<SelectTermDTO> users = SelectTermUtils.createTreeByRoot(userSelectTerms); unitSelectTerm.setChildren(users); } return unitSelectTerm; unitSelectTerm.setChildren(userSelectTerms); result.add(unitSelectTerm); return result; }catch (Exception e) { log.error("[CtUserService.userChoose]调用失败,异常信息:" + e, e); throw new ServiceException("CtUserService.userChoose", e); dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java
@@ -555,7 +555,7 @@ * @url {ctx}/api/web/caseTask/pageMyTaskBl * @param page 页码 * @param size 每页数量 * @param status 状态,1:结案申请,2:已结案 * @param status 状态,0:结案申请,1:已结案 * @param sortType 排序方式(1:正序;2:倒序) * @param sortColmn 排序字段(1:结案申请时间;2:事项等级) * @return dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java
@@ -393,20 +393,25 @@ public Map<String, Object> webListCaseFlow(String caseId, String userId){ try{ Map<String, Object> result = Maps.newHashMap(); List<CaseFlowDTO> handleCaseFlowList = new LinkedList<>(); LinkedList<CaseFlowDTO> handleCaseFlowList = new LinkedList<>(); // 首节点 CaseFlowDTO lfdj = new CaseFlowDTO(); CaseInfo caseInfo = caseInfoService.getById(caseId); if (CaseBaseConstsEnum.CASE_CANAL_1.getIndex().equals(caseInfo.getCanal())){ lfdj.setNodeShowName("来访登记"); lfdj.setHandleUnitName(caseInfo.getInputUnitName()); lfdj.setHandleUserName(caseInfo.getInputUserName()); }else { lfdj.setNodeShowName(caseInfo.getCanalName()); lfdj.setHandleUserName(caseInfo.getInputUserName()+"(当事人)"); } lfdj.setHandleUnitName(caseInfo.getInputUnitName()); lfdj.setTaskType(CaseTaskConsts.TASK_TYPE_1); lfdj.setStatus(CaseTaskConsts.TASK_STATUS_2); lfdj.setHandleTime(new Date()); handleCaseFlowList.add(lfdj); // 查询承办组织任务 QueryWrapper<CaseTask> caseTaskQueryWrapper = new QueryWrapper<>(); caseTaskQueryWrapper.eq("case_id", caseId).eq("case_task_type", CaseTaskConsts.CASE_TASK_TYPE_1).orderByDesc("create_time"); caseTaskQueryWrapper.eq("case_id", caseId).eq("case_task_type", CaseTaskConsts.CASE_TASK_TYPE_1).orderByAsc("create_time"); List<CaseTask> handleCaseTaskList = mapper.selectList(caseTaskQueryWrapper); for (CaseTask caseTask: handleCaseTaskList){ @@ -425,18 +430,21 @@ if (CaseTaskConsts.HANDLE_RESULT_1 == caseTask.getHandleResult()) { caseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex()); caseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_1.getDes()); caseFlowDTO.setTaskType(caseTask.getTaskType()); } if (CaseTaskConsts.HANDLE_RESULT_2 == caseTask.getHandleResult()) { caseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_2.getIndex()); caseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_2.getDes()); caseFlowDTO.setTaskType(CaseTaskConsts.TASK_TYPE_2); } caseFlowDTO.setStatus(caseTask.getStatus()); } handleCaseFlowList.add(caseFlowDTO); } result.put("handleCaseFlowList", handleCaseFlowList); // 查询配合组织流程 List<CaseFlowDTO> assistCaseFlowList = new LinkedList<>(); LinkedList<CaseFlowDTO> assistCaseFlowList = new LinkedList<>(); caseTaskQueryWrapper.clear(); caseTaskQueryWrapper.eq("case_id", caseId).eq("case_task_type", CaseTaskConsts.CASE_TASK_TYPE_2).orderByDesc("create_time"); List<CaseTask> assistCaseTaskList = mapper.selectList(caseTaskQueryWrapper); @@ -705,6 +713,10 @@ // 系统给综治中心分派,不需要签收 dfpCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); dfpCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); // 任务处理时限 if (firstFlowNode.getExpire() != 0) { dfpCaseTask.setExpireTime(DateUtils.addDay(caseInfo.getCreateTime(), firstFlowNode.getExpire())); } dfpCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); dfpCaseTask.setCustId(caseInfo.getCustId()); dfpCaseTask.setCreateTime(caseInfo.getCreateTime()); @@ -739,7 +751,7 @@ dfpCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); // 系统给综治中心分派,不需要签收 dfpCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); dfpCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); dfpCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); dfpCaseTask.setHandleUnitName("系统派单"); dfpCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); dfpCaseTask.setHandleIllust("派单至:"+caseDispBaseDTO.getTargetName()); @@ -773,6 +785,10 @@ // 系统调度给调解组织,需要签收 sdlCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_1); sdlCaseTask.setSignExpireTime(sysClient.getExpireTime(caseInfo.getCreateTime(), SyTimeEnum.SY_TIME_2.getIndex())); // 任务处理时限 if (firstFlowNode.getExpire() != 0) { sdlCaseTask.setExpireTime(DateUtils.addDay(caseInfo.getCreateTime(), firstFlowNode.getExpire())); } sdlCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); sdlCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); sdlCaseTask.setCustId(caseInfo.getCustId()); @@ -867,35 +883,39 @@ 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); CaseTask dslCaseTask = new CaseTask(); dslCaseTask.setId(utilsClient.getNewTimeId()); dslCaseTask.setCaseId(dfpCaseTask.getCaseId()); dslCaseTask.setFlowableId(newFlowNode.getFlowableId()); dslCaseTask.setProcessInstanceId(newFlowNode.getProcessInstanceId()); dslCaseTask.setProcessTaskId(newFlowNode.getProcessTaskId()); dslCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); dslCaseTask.setNodeType(newFlowNode.getNodeType()); dslCaseTask.setNodeId(newFlowNode.getNodeId()); dslCaseTask.setNodeName(newFlowNode.getNodeName()); dslCaseTask.setFlowId(newFlowNode.getFlowId()); dslCaseTask.setNodeShowName(newFlowNode.getNodeShowName()); dslCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); // 受理任务,任务候选执行者类型是上一步骤选择 blfkCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); blfkCaseTask.setCandeUnitId(dslUnitDTO.getId()); blfkCaseTask.setCandeUnitName(dslUnitDTO.getUnitName()); dslCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); dslCaseTask.setCandeUnitId(dslUnitDTO.getId()); dslCaseTask.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); dslCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_1); dslCaseTask.setSignExpireTime(sysClient.getExpireTime(nowDate, SyTimeEnum.SY_TIME_2.getIndex())); dslCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); // 任务处理时限 if (newFlowNode.getExpire() != 0) { dslCaseTask.setExpireTime(DateUtils.addDay(nowDate, newFlowNode.getExpire())); } dslCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); dslCaseTask.setCustId(dfpCaseTask.getCustId()); dslCaseTask.setCreateTime(nowDate); dslCaseTask.setUpdateTime(nowDate); mapper.insert(dslCaseTask); // 更新纠纷信息 CaseInfo caseInfoPO = new CaseInfo(); caseInfoPO.setId(blfkCaseTask.getCaseId()); caseInfoPO.setId(dslCaseTask.getCaseId()); caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_3.getIndex()); caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_3.getDes()); caseInfoPO.setProcess(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getIndex()); @@ -965,7 +985,7 @@ } // 更新纠纷扩展信息 CaseInfoUnfold caseInfoUnfoldPO = new CaseInfoUnfold(); caseInfoUnfoldPO.setId(blfkCaseTask.getCaseId()); caseInfoUnfoldPO.setId(dslCaseTask.getCaseId()); caseInfoUnfoldPO.setAssistUnitId(assistUnitId); caseInfoUnfoldPO.setAssistUnitName(assistUnitName); caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); @@ -1061,6 +1081,10 @@ // 受理后的任务,不需要签收 blfkCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); blfkCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); // 任务处理时限 if (newFlowNode.getExpire() != 0) { blfkCaseTask.setExpireTime(DateUtils.addDay(nowDate, newFlowNode.getExpire())); } blfkCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); blfkCaseTask.setCustId(dslCaseTask.getCustId()); blfkCaseTask.setCreateTime(nowDate); @@ -1187,11 +1211,11 @@ jashCaseTask.setHandleUserId(loginUser.getId()); jashCaseTask.setHandleUserName(loginUser.getTrueName()); jashCaseTask.setHandleResult(CaseTaskConsts.HANDLE_RESULT_1); jashCaseTask.setHandleTime(nowDate); jashCaseTask.setHandleTime(DateUtils.addMinute(nowDate, 1)); jashCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); jashCaseTask.setCustId(jasqCaseTask.getCustId()); jashCaseTask.setCreateTime(nowDate); jashCaseTask.setUpdateTime(nowDate); jashCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 1)); jashCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 1)); mapper.insert(jashCaseTask); // 完成当前结案审核工作流任务,走当事人评价任务 FlowNode dsrpjFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(), @@ -1217,10 +1241,14 @@ // 受理后的任务,不需要签收 dsrpjCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); dsrpjCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); // 任务处理时限 if (dsrpjFlowNode.getExpire() != 0) { dsrpjCaseTask.setExpireTime(DateUtils.addDay(nowDate, dsrpjFlowNode.getExpire())); } dsrpjCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); dsrpjCaseTask.setCustId(jashCaseTask.getCustId()); dsrpjCaseTask.setCreateTime(nowDate); dsrpjCaseTask.setUpdateTime(nowDate); dsrpjCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 2)); dsrpjCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 2)); mapper.insert(dsrpjCaseTask); // 更新结案申请信息 caseWindupApply.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_1); @@ -1282,10 +1310,14 @@ // 受理后的任务,不需要签收 jashCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); jashCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); // 任务处理时限 if (jashFlowNode.getExpire() != 0) { jashCaseTask.setExpireTime(DateUtils.addDay(nowDate, jashFlowNode.getExpire())); } jashCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); jashCaseTask.setCustId(jasqCaseTask.getCustId()); jashCaseTask.setCreateTime(nowDate); jashCaseTask.setUpdateTime(nowDate); jashCaseTask.setCreateTime(DateUtils.addMinute(nowDate, 1)); jashCaseTask.setUpdateTime(DateUtils.addMinute(nowDate, 1)); mapper.insert(jashCaseTask); // 更新结案申请信息 caseWindupApply.setApplyStatus(AuditBaseConsts.AUDIT_STATUS_0); @@ -1381,6 +1413,10 @@ // 受理后的任务,不需要签收 dsrpjCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); dsrpjCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); // 任务处理时限 if (dsrpjFlowNode.getExpire() != 0) { dsrpjCaseTask.setExpireTime(DateUtils.addDay(nowDate, dsrpjFlowNode.getExpire())); } dsrpjCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); dsrpjCaseTask.setCustId(jashCaseTask.getCustId()); dsrpjCaseTask.setCreateTime(nowDate); @@ -1447,6 +1483,10 @@ // 受理后的任务,不需要签收 blfkCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); blfkCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); // 任务处理时限 if (blfkFlowNode.getExpire() != 0) { blfkCaseTask.setExpireTime(DateUtils.addDay(nowDate, blfkFlowNode.getExpire())); } blfkCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); blfkCaseTask.setCustId(jashCaseTask.getCustId()); blfkCaseTask.setCreateTime(nowDate); dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/impl/SysClientImpl.java
@@ -2,18 +2,16 @@ import cn.huge.base.common.bo.ReturnBO; import cn.huge.base.common.constant.ReturnConsts; import cn.huge.base.common.exception.ClientException; import cn.huge.base.common.exception.ServiceException; import cn.huge.base.common.utils.DateUtils; import cn.huge.base.common.utils.ObjectUtils; import cn.huge.module.client.api.SysClient; import cn.huge.module.cust.dto.CtUserDTO; import cn.huge.module.sys.constant.TimeUnitConsts; import cn.huge.module.sys.dto.*; import com.alibaba.fastjson.JSON; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import org.springframework.web.bind.annotation.RequestBody; import java.util.*; @@ -123,7 +121,26 @@ ReturnBO returnBo = sysClient.getExpireTime(computeTime, limitType); if (ReturnConsts.OK == returnBo.getCode()){ if (ObjectUtils.isNotEmpty(returnBo.getData())){ expireTime = (Date) returnBo.getData(); SyTimeLimitDTO syTimeLimitDTO = objectMapper.convertValue(returnBo.getData(), SyTimeLimitDTO.class); if (ObjectUtils.isNotEmpty(syTimeLimitDTO)){ if (ObjectUtils.isNotEmpty(syTimeLimitDTO)){ if (TimeUnitConsts.TIME_UNIT_1.equals(syTimeLimitDTO.getTermUnit())){ expireTime = DateUtils.addYear(computeTime, syTimeLimitDTO.getTimeTerm()); } if (TimeUnitConsts.TIME_UNIT_2.equals(syTimeLimitDTO.getTermUnit())){ expireTime = DateUtils.addMonth(computeTime, syTimeLimitDTO.getTimeTerm()); } if (TimeUnitConsts.TIME_UNIT_3.equals(syTimeLimitDTO.getTermUnit())){ expireTime = DateUtils.addDay(computeTime, syTimeLimitDTO.getTimeTerm()); } if (TimeUnitConsts.TIME_UNIT_4.equals(syTimeLimitDTO.getTermUnit())){ expireTime = DateUtils.addHour(computeTime, syTimeLimitDTO.getTimeTerm()); } if (TimeUnitConsts.TIME_UNIT_5.equals(syTimeLimitDTO.getTermUnit())){ expireTime = DateUtils.addMonth(computeTime, syTimeLimitDTO.getTimeTerm()); } } } } } }catch (Exception e){ dyh-service/dyh-sys/src/main/java/cn/huge/module/sy/controller/client/SyTimeLimitClientController.java
@@ -1,16 +1,16 @@ package cn.huge.module.sy.controller.client; import cn.huge.base.common.utils.DateUtils; 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.sy.consts.TimeUnitConsts; import cn.huge.module.sy.domain.po.SyTimeLimit; import cn.huge.module.sy.service.SyTimeLimitService; import cn.huge.module.sys.dto.SyTimeLimitDTO; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.google.common.collect.Maps; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Page; import org.springframework.data.domain.PageRequest; @@ -226,25 +226,11 @@ QueryWrapper<SyTimeLimit> syTimeLimitQueryWrapper = new QueryWrapper<>(); syTimeLimitQueryWrapper.eq("limit_type", limitType); SyTimeLimit syTimeLimit = service.getOne(syTimeLimitQueryWrapper); Date expireTime = null; SyTimeLimitDTO syTimeLimitDTO = new SyTimeLimitDTO(); if (ObjectUtils.isNotEmpty(syTimeLimit)){ if (TimeUnitConsts.TIME_UNIT_1.equals(syTimeLimit.getTermUnit())){ expireTime = DateUtils.addYear(computeTime, syTimeLimit.getTimeTerm()); BeanUtils.copyProperties(syTimeLimit, syTimeLimitDTO); } if (TimeUnitConsts.TIME_UNIT_2.equals(syTimeLimit.getTermUnit())){ expireTime = DateUtils.addMonth(computeTime, syTimeLimit.getTimeTerm()); } if (TimeUnitConsts.TIME_UNIT_3.equals(syTimeLimit.getTermUnit())){ expireTime = DateUtils.addDay(computeTime, syTimeLimit.getTimeTerm()); } if (TimeUnitConsts.TIME_UNIT_4.equals(syTimeLimit.getTermUnit())){ expireTime = DateUtils.addHour(computeTime, syTimeLimit.getTimeTerm()); } if (TimeUnitConsts.TIME_UNIT_5.equals(syTimeLimit.getTermUnit())){ expireTime = DateUtils.addMonth(computeTime, syTimeLimit.getTimeTerm()); } } return ReturnSucUtils.getRepInfo(expireTime); return ReturnSucUtils.getRepInfo(syTimeLimitDTO); } catch (Exception e) { return ReturnFailUtils.getRepInfo(); }