From b6fa58652c12f0c61409cc44dfd8ad78f821b6c6 Mon Sep 17 00:00:00 2001
From: liyj <1003249715@qq.com>
Date: Wed, 11 Sep 2024 01:19:25 +0800
Subject: [PATCH] 1、流程bug修复
---
dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/controller/web/CtUnitWebController.java | 2
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java | 118 ++++++++----
dyh-service/dyh-base/src/main/java/cn/huge/module/mediate/constant/CaseBaseConstsEnum.java | 2
dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUnitService.java | 191 +++++++++++++++++---
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java | 2
dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/impl/SysClientImpl.java | 27 ++
dyh-service/dyh-base/src/main/java/cn/huge/module/sys/dto/SyTimeLimitDTO.java | 78 ++++++++
dyh-service/dyh-base/src/main/java/cn/huge/module/sys/constant/TimeUnitConsts.java | 2
dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/controller/web/CtUserWebController.java | 2
dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUserService.java | 52 +---
dyh-service/dyh-sys/src/main/java/cn/huge/module/sy/controller/client/SyTimeLimitClientController.java | 26 --
11 files changed, 363 insertions(+), 139 deletions(-)
diff --git a/dyh-service/dyh-base/src/main/java/cn/huge/module/mediate/constant/CaseBaseConstsEnum.java b/dyh-service/dyh-base/src/main/java/cn/huge/module/mediate/constant/CaseBaseConstsEnum.java
index ac3507c..e085d80 100644
--- a/dyh-service/dyh-base/src/main/java/cn/huge/module/mediate/constant/CaseBaseConstsEnum.java
+++ b/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", "线上"),
diff --git a/dyh-service/dyh-sys/src/main/java/cn/huge/module/sy/consts/TimeUnitConsts.java b/dyh-service/dyh-base/src/main/java/cn/huge/module/sys/constant/TimeUnitConsts.java
similarity index 97%
rename from dyh-service/dyh-sys/src/main/java/cn/huge/module/sy/consts/TimeUnitConsts.java
rename to dyh-service/dyh-base/src/main/java/cn/huge/module/sys/constant/TimeUnitConsts.java
index b82c659..f6a800d 100644
--- a/dyh-service/dyh-sys/src/main/java/cn/huge/module/sy/consts/TimeUnitConsts.java
+++ b/dyh-service/dyh-base/src/main/java/cn/huge/module/sys/constant/TimeUnitConsts.java
@@ -1,4 +1,4 @@
-package cn.huge.module.sy.consts;
+package cn.huge.module.sys.constant;
/**
* @title: 时间单位常量类
diff --git a/dyh-service/dyh-base/src/main/java/cn/huge/module/sys/dto/SyTimeLimitDTO.java b/dyh-service/dyh-base/src/main/java/cn/huge/module/sys/dto/SyTimeLimitDTO.java
new file mode 100644
index 0000000..534f096
--- /dev/null
+++ b/dyh-service/dyh-base/src/main/java/cn/huge/module/sys/dto/SyTimeLimitDTO.java
@@ -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;
+
+}
diff --git a/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/controller/web/CtUnitWebController.java b/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/controller/web/CtUnitWebController.java
index 19521e6..c769797 100644
--- a/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/controller/web/CtUnitWebController.java
+++ b/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
*/
diff --git a/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/controller/web/CtUserWebController.java b/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/controller/web/CtUserWebController.java
index 182f0b2..e6f18f7 100644
--- a/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/controller/web/CtUserWebController.java
+++ b/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());
diff --git a/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUnitService.java b/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUnitService.java
index f7cbd97..d212a5e 100644
--- a/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUnitService.java
+++ b/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUnitService.java
@@ -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);
-
- 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);
- }
- List<SelectTermDTO> depts = SelectTermUtils.createTreeByRoot(deptSelectTerms);
- unitSelectTerm.setChildren(depts);
+ // 获取当前登录用户的部门
+ 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);
+ if (UserBaseConsts.UNIT_TYPE_1 == ctUnit.getUnitType()){
+ szbmList.add(unitSelectTerm);
+ }
+ 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);
+ }
+ 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<>();
}
- return SelectTermUtils.createTreeByFirst(unitSelectTerms, loginUser.getUnitId());
}
}
diff --git a/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUserService.java b/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUserService.java
index 941365f..1055308 100644
--- a/dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/service/CtUserService.java
+++ b/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+")");
- userSelectTerms.add(userSelectTerm);
-
- }
- List<SelectTermDTO> users = SelectTermUtils.createTreeByRoot(userSelectTerms);
- unitSelectTerm.setChildren(users);
+ List<SelectTermDTO> userSelectTerms = new ArrayList<>();
+ for(CtUser ctUser : ctUsers){
+ SelectTermDTO userSelectTerm = new SelectTermDTO();
+ userSelectTerm.setValue(ctUser.getId());
+ userSelectTerm.setCheckable(true);
+ userSelectTerm.setLabel(ctUser.getTrueName());
+ userSelectTerms.add(userSelectTerm);
}
- 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);
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java
index c582dbd..ed50839 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseTaskWebController.java
@@ -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
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java
index 413fce8..e5d82f0 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java
@@ -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);
- lfdj.setNodeShowName("来访登记");
+ if (CaseBaseConstsEnum.CASE_CANAL_1.getIndex().equals(caseInfo.getCanal())){
+ lfdj.setNodeShowName("来访登记");
+ lfdj.setHandleUserName(caseInfo.getInputUserName());
+ }else {
+ lfdj.setNodeShowName(caseInfo.getCanalName());
+ lfdj.setHandleUserName(caseInfo.getInputUserName()+"(当事人)");
+ }
lfdj.setHandleUnitName(caseInfo.getInputUnitName());
- lfdj.setHandleUserName(caseInfo.getInputUserName());
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);
diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/impl/SysClientImpl.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/impl/SysClientImpl.java
index a11d3f1..08dbeb3 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/impl/SysClientImpl.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/client/api/impl/SysClientImpl.java
@@ -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){
diff --git a/dyh-service/dyh-sys/src/main/java/cn/huge/module/sy/controller/client/SyTimeLimitClientController.java b/dyh-service/dyh-sys/src/main/java/cn/huge/module/sy/controller/client/SyTimeLimitClientController.java
index 7a39f7e..5accb8c 100644
--- a/dyh-service/dyh-sys/src/main/java/cn/huge/module/sy/controller/client/SyTimeLimitClientController.java
+++ b/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;
- if (ObjectUtils.isNotEmpty(syTimeLimit)){
- if (TimeUnitConsts.TIME_UNIT_1.equals(syTimeLimit.getTermUnit())){
- expireTime = DateUtils.addYear(computeTime, syTimeLimit.getTimeTerm());
- }
- 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());
- }
+ SyTimeLimitDTO syTimeLimitDTO = new SyTimeLimitDTO();
+ if (ObjectUtils.isNotEmpty(syTimeLimit)) {
+ BeanUtils.copyProperties(syTimeLimit, syTimeLimitDTO);
}
- return ReturnSucUtils.getRepInfo(expireTime);
+ return ReturnSucUtils.getRepInfo(syTimeLimitDTO);
} catch (Exception e) {
return ReturnFailUtils.getRepInfo();
}
--
Gitblit v1.8.0