!47 refactor(flow): 统一管理部门ID和角色ID至 OrgConfig
* refactor(flow): 统一管理部门ID和角色ID至 OrgConfig
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
package org.jeecg;
|
||||
|
||||
import lombok.Data;
|
||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Data
|
||||
@Component
|
||||
@ConfigurationProperties(prefix = "flow-biz.org")
|
||||
public class OrgConfig {
|
||||
|
||||
private Dept dept = new Dept();
|
||||
private Role role = new Role();
|
||||
|
||||
@Data
|
||||
public static class Dept {
|
||||
private String jj;
|
||||
private String sld;
|
||||
private String dq;
|
||||
private String bg;
|
||||
}
|
||||
|
||||
@Data
|
||||
public static class Role {
|
||||
private String ld;
|
||||
private String jjWorker;
|
||||
private String sldJwsj;
|
||||
private String sdwsj;
|
||||
private String sdw;
|
||||
}
|
||||
}
|
||||
-7
@@ -1,12 +1,5 @@
|
||||
package org.jeecg.inspectcloseout;
|
||||
|
||||
public class InspectCloseoutConstant {
|
||||
public static final String JJ_DEPT_ID = "2054466800692432898";
|
||||
public static final String JJ_DEPT_LEADER_ROLE_ID = "2044680793306591234";
|
||||
public static final String JJ_DEPT_WORKER_ROLE_ID = "2047511967494213633";
|
||||
public static final String SLD_DEPT_ID = "2044677562460508161";
|
||||
public static final String SLD_JWSJ_ROLE_ID = "2063902766943363073";
|
||||
public static final String DQ_DEPT_ID = "2044677628281720834";
|
||||
public static final String DQ_DEPT_WORKER_ROLE_ID = "2047511967494213633";
|
||||
public static final int ZERO_INDEX = 0;
|
||||
}
|
||||
|
||||
+16
-20
@@ -5,8 +5,8 @@ import com.jeecg.weibo.exception.BusinessException;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.jeecg.OrgConfig;
|
||||
import org.jeecg.common.system.api.ISysBaseAPI;
|
||||
import org.jeecg.inspectimprove.InspectImproveConfig;
|
||||
import org.jeecg.modules.extbpm.process.common.expression.FlowNodeExpression;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
@@ -21,6 +21,7 @@ import java.util.stream.Collectors;
|
||||
public class InspectCloseoutFlow {
|
||||
|
||||
private final InspectCloseoutConfig inspectCloseoutConfig;
|
||||
private final OrgConfig orgConfig;
|
||||
private final FlowNodeExpression flowNodeExpression;
|
||||
private final ISysBaseAPI iSysBaseAPI;
|
||||
|
||||
@@ -54,12 +55,10 @@ public class InspectCloseoutFlow {
|
||||
|
||||
//流程表达式内用法 ${inspectImproveFlow.getJJDeptLdUserIdList()}
|
||||
public List<String> getJJDeptLdUserIdList() {
|
||||
|
||||
log.info("【巡视整改销号-流程表达式】查询部门角色用户列表, deptId: {}, roleId: {}", InspectCloseoutConstant.JJ_DEPT_ID, InspectCloseoutConstant.JJ_DEPT_LEADER_ROLE_ID);
|
||||
List<String> userList = iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(
|
||||
InspectCloseoutConstant.JJ_DEPT_ID,
|
||||
InspectCloseoutConstant.JJ_DEPT_LEADER_ROLE_ID
|
||||
);
|
||||
String deptId = orgConfig.getDept().getJj();
|
||||
String roleId = orgConfig.getRole().getLd();
|
||||
log.info("【巡视整改销号-流程表达式】查询部门角色用户列表, deptId: {}, roleId: {}", deptId, roleId);
|
||||
List<String> userList = iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(deptId, roleId);
|
||||
log.info("【巡视整改销号-流程表达式】查询到用户列表, userList: {}", userList);
|
||||
return userList;
|
||||
}
|
||||
@@ -76,20 +75,18 @@ public class InspectCloseoutFlow {
|
||||
|
||||
//流程表达式内用法 ${inspectCloseoutFlow.getJJDeptLdWorkerIdList()}
|
||||
public List<String> getJJDeptLdWorkerIdList() {
|
||||
|
||||
log.info("【巡视整改销号-流程表达式】查询部门角色用户列表, deptId: {}, roleId: {}", InspectCloseoutConstant.JJ_DEPT_ID, InspectCloseoutConstant.JJ_DEPT_LEADER_ROLE_ID);
|
||||
List<String> userList = iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(
|
||||
InspectCloseoutConstant.JJ_DEPT_ID,
|
||||
InspectCloseoutConstant.JJ_DEPT_WORKER_ROLE_ID
|
||||
);
|
||||
String deptId = orgConfig.getDept().getJj();
|
||||
String roleId = orgConfig.getRole().getJjWorker();
|
||||
log.info("【巡视整改销号-流程表达式】查询部门角色用户列表, deptId: {}, roleId: {}", deptId, roleId);
|
||||
List<String> userList = iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(deptId, roleId);
|
||||
log.info("【巡视整改销号-流程表达式】查询到用户列表, userList: {}", userList);
|
||||
return userList;
|
||||
}
|
||||
|
||||
//流程表达式内用法 ${inspectCloseoutFlow.getJWSJUser()}
|
||||
public String getJWSJUser() {
|
||||
String deptId = InspectCloseoutConstant.SLD_DEPT_ID;
|
||||
String roleId = InspectCloseoutConstant.SLD_JWSJ_ROLE_ID;
|
||||
String deptId = orgConfig.getDept().getSld();
|
||||
String roleId = orgConfig.getRole().getSldJwsj();
|
||||
|
||||
log.info("【巡视整改销号-流程表达式】查询纪委书记用户, deptId: {}, roleId: {}", deptId, roleId);
|
||||
|
||||
@@ -112,11 +109,10 @@ public class InspectCloseoutFlow {
|
||||
|
||||
//流程表达式内用法 ${inspectCloseoutFlow.getDqDeptLdUserIdList()}
|
||||
public List<String> getDqDeptLdUserIdList() {
|
||||
log.info("【巡视整改销号-流程表达式】查询部门角色用户列表, deptId: {}, roleId: {}", InspectCloseoutConstant.DQ_DEPT_ID, InspectCloseoutConstant.DQ_DEPT_WORKER_ROLE_ID);
|
||||
List<String> userList = iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(
|
||||
InspectCloseoutConstant.DQ_DEPT_ID,
|
||||
InspectCloseoutConstant.DQ_DEPT_WORKER_ROLE_ID
|
||||
);
|
||||
String deptId = orgConfig.getDept().getDq();
|
||||
String roleId = orgConfig.getRole().getJjWorker();
|
||||
log.info("【巡视整改销号-流程表达式】查询部门角色用户列表, deptId: {}, roleId: {}", deptId, roleId);
|
||||
List<String> userList = iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(deptId, roleId);
|
||||
log.info("【巡视整改销号-流程表达式】查询到用户列表, userList: {}", userList);
|
||||
return userList;
|
||||
}
|
||||
|
||||
-2
@@ -9,8 +9,6 @@ public class InspectConstant {
|
||||
public static final String DQ_DEPT_LEADER_KEY = "dq_dept_leader";
|
||||
public static final String IS_END_KEY = "is_end";
|
||||
public static final String SUB_APPROVE_USER_KEY = "sub_approve_user";
|
||||
public static final String SLD_DEPT_ID = "2044677562460508161";
|
||||
public static final String SDWSJ_ROLE_ID = "2062796937607499777";
|
||||
public static final String IS_NEED_LEADER_APPROVE_KEY = "is_need_leader_approve";
|
||||
public static final String LEADER_APPROVE_USER_KEY = "leader_approve_user";
|
||||
public static final int ZERO_INDEX = 0;
|
||||
|
||||
-2
@@ -35,7 +35,5 @@ public class InspectImproveConfig {
|
||||
private String workProgressKey;
|
||||
/** 完成状态 key */
|
||||
private String completionStatusKey;
|
||||
private String dqDeptId;
|
||||
private String ldRoleId;
|
||||
}
|
||||
}
|
||||
|
||||
+12
-18
@@ -7,13 +7,13 @@ import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.flowable.engine.RuntimeService;
|
||||
import org.flowable.engine.delegate.DelegateExecution;
|
||||
import org.jeecg.OrgConfig;
|
||||
import org.jeecg.common.system.api.ISysBaseAPI;
|
||||
import org.jeecg.modules.demo.dqinspecttask.entity.DqInspectTask;
|
||||
import org.jeecg.modules.demo.dqinspecttask.service.IDqInspectTaskService;
|
||||
import org.jeecg.modules.dj.inspectimprove.entity.DjInspectImprove;
|
||||
import org.jeecg.modules.dj.inspectimprove.service.IDjInspectImproveService;
|
||||
import org.jeecg.modules.extbpm.process.common.expression.FlowNodeExpression;
|
||||
import org.jeecg.xispeak.XiSpeakConfig;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
@@ -27,34 +27,28 @@ import java.util.stream.Collectors;
|
||||
public class InspectImproveFlow {
|
||||
|
||||
private final InspectImproveConfig inspectImproveConfig;
|
||||
private final OrgConfig orgConfig;
|
||||
private final IDjInspectImproveService djInspectImproveService;
|
||||
private final FlowNodeExpression flowNodeExpression;
|
||||
private final XiSpeakConfig xiSpeakConfig;
|
||||
private final ISysBaseAPI iSysBaseAPI;
|
||||
private final IDqInspectTaskService dqInspectTaskService;
|
||||
private final RuntimeService runtimeService;
|
||||
|
||||
//流程表达式内用法 ${inspectImproveFlow.getDqDeptLdUserIdList()}
|
||||
public List<String> getDqDeptLdUserIdList() {
|
||||
InspectImproveConfig.InspectImproveProperties props = inspectImproveConfig.getInspectImprove();
|
||||
if (props == null || !org.apache.shiro.util.StringUtils.hasText(props.getDqDeptId())) {
|
||||
log.error("【巡视整改-流程表达式】流程配置缺失, key: flow-biz.inspect-improve.dq-dept-id");
|
||||
return Collections.emptyList();
|
||||
}
|
||||
String deptId = orgConfig.getDept().getDq();
|
||||
String roleId = orgConfig.getRole().getLd();
|
||||
|
||||
log.info("【巡视整改-流程表达式】查询部门角色用户列表, deptId: {}, roleId: {}", props.getDqDeptId(), props.getLdRoleId());
|
||||
List<String> userList = iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(
|
||||
props.getDqDeptId(),
|
||||
props.getLdRoleId()
|
||||
);
|
||||
log.info("【巡视整改-流程表达式】查询部门角色用户列表, deptId: {}, roleId: {}", deptId, roleId);
|
||||
List<String> userList = iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(deptId, roleId);
|
||||
log.info("【巡视整改-流程表达式】查询到用户列表, userList: {}", userList);
|
||||
return userList;
|
||||
}
|
||||
|
||||
// 流程表达式内用法 ${inspectImproveFlow.getSDWSJ()}
|
||||
public String getSDWSJ() {
|
||||
String deptId = InspectConstant.SLD_DEPT_ID;
|
||||
String roleId = InspectConstant.SDWSJ_ROLE_ID;
|
||||
String deptId = orgConfig.getDept().getSld();
|
||||
String roleId = orgConfig.getRole().getSdwsj();
|
||||
|
||||
log.info("【巡视整改-流程表达式】开始查询所党委书记用户, deptId: {}, roleId: {}", deptId, roleId);
|
||||
|
||||
@@ -147,15 +141,15 @@ public class InspectImproveFlow {
|
||||
}
|
||||
|
||||
|
||||
InspectImproveConfig.InspectImproveProperties props = inspectImproveConfig.getInspectImprove();
|
||||
log.info("正在查询整改责任部门: {} 下的角色: {} 的领导列表", measureDeptId, props.getLdRoleId());
|
||||
String ldRoleId = orgConfig.getRole().getLd();
|
||||
log.info("正在查询整改责任部门: {} 下的角色: {} 的领导列表", measureDeptId, ldRoleId);
|
||||
List<String> leaderList = iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(
|
||||
measureDeptId,
|
||||
props.getLdRoleId()
|
||||
ldRoleId
|
||||
);
|
||||
|
||||
if (leaderList == null || leaderList.isEmpty()) {
|
||||
log.warn("【节点预警】整改责任部门: {} 下未配置角色: {} 的用户,审批人列表为空!", measureDeptId, props.getLdRoleId());
|
||||
log.warn("【节点预警】整改责任部门: {} 下未配置角色: {} 的用户,审批人列表为空!", measureDeptId, ldRoleId);
|
||||
return Collections.emptyList();
|
||||
}
|
||||
|
||||
|
||||
@@ -16,10 +16,6 @@ public class XiSpeakConfig {
|
||||
|
||||
@Data
|
||||
public static class XiSpeakProperties {
|
||||
/** 对应 bg-dept-id */
|
||||
private String bgDeptId;
|
||||
/** 对应 ld-role-id */
|
||||
private String ldRoleId;
|
||||
/** 对应 need-sdw-approve-code */
|
||||
private String needSdwApproveCode;
|
||||
/** 对应 json-data-key */
|
||||
@@ -28,8 +24,6 @@ public class XiSpeakConfig {
|
||||
private String implDeptKey;
|
||||
/** 对应impl-dept-collection-used*/
|
||||
private String implDeptCollectionUsedKey;
|
||||
/** 对应sdw-role-id*/
|
||||
private String sdwRoleId;
|
||||
/** 对应business-key*/
|
||||
private String businessKey;
|
||||
/** 对应impl-dept-key-underscore-key*/
|
||||
|
||||
+10
-24
@@ -8,6 +8,7 @@ import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.shiro.util.StringUtils;
|
||||
import org.flowable.engine.RuntimeService;
|
||||
import org.flowable.engine.delegate.DelegateExecution;
|
||||
import org.jeecg.OrgConfig;
|
||||
import org.jeecg.common.constant.SymbolConstant;
|
||||
import org.jeecg.common.system.api.ISysBaseAPI;
|
||||
import org.jeecg.modules.bg.xispeak.entity.BgXiSpeak;
|
||||
@@ -26,6 +27,7 @@ import java.util.stream.Collectors;
|
||||
public class XiSpeakFlow {
|
||||
|
||||
private final XiSpeakConfig xiSpeakConfig;
|
||||
private final OrgConfig orgConfig;
|
||||
private final ISysBaseAPI iSysBaseAPI;
|
||||
private final RuntimeService runtimeService;
|
||||
private final FlowNodeExpression flowNodeExpression;
|
||||
@@ -33,34 +35,18 @@ public class XiSpeakFlow {
|
||||
|
||||
//流程表达式内用法 ${xiSpeakFlow.getBgDeptLdUserIdList()}
|
||||
public List<String> getBgDeptLdUserIdList() {
|
||||
// 1. 安全获取配置,防止 NPE
|
||||
XiSpeakConfig.XiSpeakProperties props = xiSpeakConfig.getXiSpeak();
|
||||
if (props == null || !StringUtils.hasText(props.getBgDeptId())) {
|
||||
log.error("流程配置缺失: [flow-biz.xi-speak.bg-dept-id] 未在 YAML 中定义");
|
||||
return Collections.emptyList();
|
||||
}
|
||||
|
||||
// 2. 调用接口获取数据
|
||||
log.info("正在查询部门: {} 下的角色: {} 的用户列表", props.getBgDeptId(), props.getLdRoleId());
|
||||
List<String> userList = iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(
|
||||
props.getBgDeptId(),
|
||||
props.getLdRoleId()
|
||||
);
|
||||
String deptId = orgConfig.getDept().getBg();
|
||||
String roleId = orgConfig.getRole().getLd();
|
||||
log.info("正在查询部门: {} 下的角色: {} 的用户列表", deptId, roleId);
|
||||
List<String> userList = iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(deptId, roleId);
|
||||
log.info("查询到的用户为: {}", userList);
|
||||
return userList;
|
||||
}
|
||||
|
||||
public List<String> getSDWLeader() {
|
||||
// 1. 安全获取配置,防止 NPE
|
||||
XiSpeakConfig.XiSpeakProperties props = xiSpeakConfig.getXiSpeak();
|
||||
if (props == null || !StringUtils.hasText(props.getSdwRoleId())) {
|
||||
log.error("流程配置缺失: [flow-biz.xi-speak.sdw-role-id] 未在 YAML 中定义");
|
||||
return Collections.emptyList();
|
||||
}
|
||||
|
||||
// 2. 调用接口获取数据
|
||||
log.info("正在查询sdw:{}角色下的用户列表",props.getSdwRoleId());
|
||||
List<String> userList = iSysBaseAPI.getUserByRoleIdLocalApi(props.getSdwRoleId());
|
||||
String roleId = orgConfig.getRole().getSdw();
|
||||
log.info("正在查询sdw:{}角色下的用户列表", roleId);
|
||||
List<String> userList = iSysBaseAPI.getUserByRoleIdLocalApi(roleId);
|
||||
log.info("查询到的用户为: {}", userList);
|
||||
return userList;
|
||||
}
|
||||
@@ -330,7 +316,7 @@ public class XiSpeakFlow {
|
||||
}
|
||||
|
||||
public List<String> getImplDeptLdsList(String deptId) {
|
||||
return iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(deptId, xiSpeakConfig.getXiSpeak().getLdRoleId());
|
||||
return iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(deptId, orgConfig.getRole().getLd());
|
||||
}
|
||||
|
||||
public int getImplDeptLdsListLength(String deptId) {
|
||||
|
||||
-5
@@ -1,7 +1,6 @@
|
||||
package org.jeecg.xispeakfb;
|
||||
|
||||
import lombok.Data;
|
||||
import org.jeecg.xispeak.XiSpeakConfig;
|
||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@@ -17,10 +16,6 @@ public class XiSpeakFeedbackConfig {
|
||||
|
||||
@Data
|
||||
public static class XiSpeakPropertiesFb {
|
||||
String deptId;
|
||||
String businessId;
|
||||
String jjDeptId;
|
||||
String jjWorkerRoleId;
|
||||
String jjLeaderRoleId;
|
||||
}
|
||||
}
|
||||
|
||||
+8
-33
@@ -8,6 +8,7 @@ import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.flowable.engine.RuntimeService;
|
||||
import org.flowable.engine.delegate.DelegateExecution;
|
||||
import org.jeecg.OrgConfig;
|
||||
import org.jeecg.common.constant.SymbolConstant;
|
||||
import org.jeecg.common.system.api.ISysBaseAPI;
|
||||
import org.jeecg.modules.bg.xispeak.entity.BgXiSpeak;
|
||||
@@ -16,7 +17,6 @@ import org.jeecg.modules.bg.xispeak.entity.DeptApproveDetailMap;
|
||||
import org.jeecg.modules.bg.xispeak.service.IBgXiSpeakService;
|
||||
import org.jeecg.modules.tasktask.entity.TaskTask;
|
||||
import org.jeecg.modules.tasktask.service.ITaskTaskService;
|
||||
import org.jeecg.xispeak.XiSpeakConfig;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
@@ -30,6 +30,7 @@ import java.util.stream.Collectors;
|
||||
public class XiSpeakFeedbackFlow {
|
||||
|
||||
private final XiSpeakFeedbackConfig xiSpeakFeedbackConfig;
|
||||
private final OrgConfig orgConfig;
|
||||
private final ISysBaseAPI iSysBaseAPI;
|
||||
private final RuntimeService runtimeService;
|
||||
private final IBgXiSpeakService bgXiSpeakService;
|
||||
@@ -227,23 +228,10 @@ public class XiSpeakFeedbackFlow {
|
||||
* @example 表达式用法: ${XiSpeakFeedbackFlow.getJJDeptWorkerList()}
|
||||
*/
|
||||
public List<String> getJJDeptWorkerList() {
|
||||
// 1. 安全获取配置对象
|
||||
XiSpeakFeedbackConfig.XiSpeakPropertiesFb config = xiSpeakFeedbackConfig.getXiSpeakFb();
|
||||
if (config == null) {
|
||||
log.error("xiSpeakFb 配置对象加载失败,请检查配置文件!");
|
||||
return Collections.emptyList();
|
||||
}
|
||||
String deptId = orgConfig.getDept().getJj();
|
||||
String roleId = orgConfig.getRole().getJjWorker();
|
||||
|
||||
String deptId = config.getJjDeptId();
|
||||
String roleId = config.getJjWorkerRoleId();
|
||||
|
||||
// 2. 参数合法性拦截
|
||||
if (StringUtils.isAnyBlank(deptId, roleId)) {
|
||||
log.warn("xiSpeakFb 配置项不完整: deptId={}, roleId={}", deptId, roleId);
|
||||
return Collections.emptyList();
|
||||
}
|
||||
|
||||
// 3. 调用接口并处理结果
|
||||
// 2. 调用接口并处理结果
|
||||
List<String> workerList = iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(deptId, roleId);
|
||||
|
||||
if (CollectionUtils.isEmpty(workerList)) {
|
||||
@@ -278,23 +266,10 @@ public class XiSpeakFeedbackFlow {
|
||||
* @example 表达式用法: ${XiSpeakFeedbackFlow.getJJDeptLeaderList()}
|
||||
*/
|
||||
public List<String> getJJDeptLeaderList() {
|
||||
// 1. 安全获取配置对象
|
||||
XiSpeakFeedbackConfig.XiSpeakPropertiesFb config = xiSpeakFeedbackConfig.getXiSpeakFb();
|
||||
if (config == null) {
|
||||
log.error("xiSpeakFb 配置对象加载失败,请检查配置文件!");
|
||||
return Collections.emptyList();
|
||||
}
|
||||
String deptId = orgConfig.getDept().getJj();
|
||||
String roleId = orgConfig.getRole().getLd();
|
||||
|
||||
String deptId = config.getJjDeptId();
|
||||
String roleId = config.getJjLeaderRoleId ();
|
||||
|
||||
// 2. 参数合法性拦截
|
||||
if (StringUtils.isAnyBlank(deptId, roleId)) {
|
||||
log.warn("xiSpeakFb 配置项不完整: deptId={}, roleId={}", deptId, roleId);
|
||||
return Collections.emptyList();
|
||||
}
|
||||
|
||||
// 3. 调用接口并处理结果
|
||||
// 2. 调用接口并处理结果
|
||||
List<String> workerList = iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(deptId, roleId);
|
||||
|
||||
if (CollectionUtils.isEmpty(workerList)) {
|
||||
|
||||
@@ -1,14 +1,23 @@
|
||||
flow-biz:
|
||||
org:
|
||||
dept:
|
||||
jj: "2054466800692432898"
|
||||
sld: "2044677562460508161"
|
||||
dq: "2044677628281720834"
|
||||
bg: "2044677604785229826"
|
||||
role:
|
||||
ld: "2044680793306591234"
|
||||
jj-worker: "2047511967494213633"
|
||||
sld-jwsj: "2063902766943363073"
|
||||
sdwsj: "2062796937607499777"
|
||||
sdw: "2044676455280570370"
|
||||
xi-speak:
|
||||
bg-dept-id: "2044677604785229826"
|
||||
ld-role-id: "2044680793306591234"
|
||||
need-sdw-approve-code: "needSdwApproval"
|
||||
feedback-right-now-code: "feedback_right_now"
|
||||
json-data-key: "json_data"
|
||||
impl-dept-key: "implDept"
|
||||
impl-dept-key-underscore-key: "impl_dept"
|
||||
impl-dept-collection-used-key: "impl_dept_id"
|
||||
sdw-role-id: "2044676455280570370"
|
||||
business-key: "business_id"
|
||||
dept-worker-key: "subApproveUser"
|
||||
xi-speak-fb-flowcode: "process_1778315114392"
|
||||
@@ -19,8 +28,6 @@ flow-biz:
|
||||
sdw-leader-list-key: "sdwLeaderList"
|
||||
is-end-key: "isEnd"
|
||||
inspect-improve:
|
||||
dq-dept-id: "2044677628281720834"
|
||||
ld-role-id: "2044680793306591234"
|
||||
business-key: "business_id"
|
||||
json-data-key: "json_data"
|
||||
form-url: "dj/inspectimprove/components/DjInspectImproveBPMForm"
|
||||
@@ -43,11 +50,7 @@ flow-biz:
|
||||
closeout-desc-key: "closeoutDesc"
|
||||
completion-status-key: "completionStatus"
|
||||
xi-speak-fb:
|
||||
dept-id: "x"
|
||||
business-id: "business_id"
|
||||
jj-dept-id: "2054466800692432898"
|
||||
jj-worker-role-id: "2047511967494213633"
|
||||
jj-leader-role-id: "2044680793306591234"
|
||||
|
||||
|
||||
|
||||
|
||||
+30
-25
@@ -5,6 +5,7 @@ import static org.mockito.Mockito.*;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.jeecg.weibo.exception.BusinessException;
|
||||
import org.jeecg.OrgConfig;
|
||||
import org.jeecg.common.system.api.ISysBaseAPI;
|
||||
import org.jeecg.inspectcloseout.InspectCloseoutConfig.InspectCloseoutProperties;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
@@ -23,11 +24,16 @@ class InspectCloseoutFlowTest {
|
||||
@Mock
|
||||
private InspectCloseoutConfig inspectCloseoutConfig;
|
||||
|
||||
@Mock
|
||||
private OrgConfig orgConfig;
|
||||
|
||||
@Mock
|
||||
private ISysBaseAPI iSysBaseAPI;
|
||||
|
||||
private InspectCloseoutFlow flow;
|
||||
private InspectCloseoutProperties props;
|
||||
private OrgConfig.Dept dept;
|
||||
private OrgConfig.Role role;
|
||||
|
||||
@BeforeEach
|
||||
void setUp() {
|
||||
@@ -43,8 +49,19 @@ class InspectCloseoutFlowTest {
|
||||
props.setCompletionStatusKey("completionStatusKey");
|
||||
lenient().when(inspectCloseoutConfig.getInspectCloseout()).thenReturn(props);
|
||||
|
||||
dept = new OrgConfig.Dept();
|
||||
dept.setJj("dept-jj");
|
||||
dept.setSld("dept-sld");
|
||||
dept.setDq("dept-dq");
|
||||
role = new OrgConfig.Role();
|
||||
role.setLd("role-ld");
|
||||
role.setJjWorker("role-jj-worker");
|
||||
role.setSldJwsj("role-sld-jwsj");
|
||||
lenient().when(orgConfig.getDept()).thenReturn(dept);
|
||||
lenient().when(orgConfig.getRole()).thenReturn(role);
|
||||
|
||||
// FlowNodeExpression 未使用,传 null
|
||||
flow = new InspectCloseoutFlow(inspectCloseoutConfig, null, iSysBaseAPI);
|
||||
flow = new InspectCloseoutFlow(inspectCloseoutConfig, orgConfig, null, iSysBaseAPI);
|
||||
}
|
||||
|
||||
// ==================== 部门角色用户查询 ====================
|
||||
@@ -55,8 +72,7 @@ class InspectCloseoutFlowTest {
|
||||
@Test
|
||||
void getJJDeptLdUserIdList_shouldReturnUserList() {
|
||||
List<String> users = List.of("user1", "user2");
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(
|
||||
InspectCloseoutConstant.JJ_DEPT_ID, InspectCloseoutConstant.JJ_DEPT_LEADER_ROLE_ID))
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-jj", "role-ld"))
|
||||
.thenReturn(users);
|
||||
|
||||
assertEquals(users, flow.getJJDeptLdUserIdList());
|
||||
@@ -64,8 +80,7 @@ class InspectCloseoutFlowTest {
|
||||
|
||||
@Test
|
||||
void getJJDeptLdUserIdList_shouldReturnEmptyList() {
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(
|
||||
InspectCloseoutConstant.JJ_DEPT_ID, InspectCloseoutConstant.JJ_DEPT_LEADER_ROLE_ID))
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-jj", "role-ld"))
|
||||
.thenReturn(Collections.emptyList());
|
||||
|
||||
assertEquals(Collections.emptyList(), flow.getJJDeptLdUserIdList());
|
||||
@@ -73,8 +88,7 @@ class InspectCloseoutFlowTest {
|
||||
|
||||
@Test
|
||||
void getJJDeptLdUserIdListLength_shouldReturnCount() {
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(
|
||||
InspectCloseoutConstant.JJ_DEPT_ID, InspectCloseoutConstant.JJ_DEPT_LEADER_ROLE_ID))
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-jj", "role-ld"))
|
||||
.thenReturn(List.of("user1", "user2", "user3"));
|
||||
|
||||
assertEquals(3, flow.getJJDeptLdUserIdListLength());
|
||||
@@ -82,8 +96,7 @@ class InspectCloseoutFlowTest {
|
||||
|
||||
@Test
|
||||
void getJJDeptLdUserIdListLength_shouldReturnZeroWhenEmpty() {
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(
|
||||
InspectCloseoutConstant.JJ_DEPT_ID, InspectCloseoutConstant.JJ_DEPT_LEADER_ROLE_ID))
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-jj", "role-ld"))
|
||||
.thenReturn(Collections.emptyList());
|
||||
|
||||
assertEquals(0, flow.getJJDeptLdUserIdListLength());
|
||||
@@ -92,8 +105,7 @@ class InspectCloseoutFlowTest {
|
||||
@Test
|
||||
void getJJDeptLdWorkerIdList_shouldReturnUserList() {
|
||||
List<String> users = List.of("worker1");
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(
|
||||
InspectCloseoutConstant.JJ_DEPT_ID, InspectCloseoutConstant.JJ_DEPT_WORKER_ROLE_ID))
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-jj", "role-jj-worker"))
|
||||
.thenReturn(users);
|
||||
|
||||
assertEquals(users, flow.getJJDeptLdWorkerIdList());
|
||||
@@ -101,8 +113,7 @@ class InspectCloseoutFlowTest {
|
||||
|
||||
@Test
|
||||
void getJJDeptLdWorkerIdListLength_shouldReturnCount() {
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(
|
||||
InspectCloseoutConstant.JJ_DEPT_ID, InspectCloseoutConstant.JJ_DEPT_LEADER_ROLE_ID))
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-jj", "role-ld"))
|
||||
.thenReturn(List.of("user1", "user2"));
|
||||
|
||||
assertEquals(2, flow.getJJDeptLdWorkerIdListLength());
|
||||
@@ -111,8 +122,7 @@ class InspectCloseoutFlowTest {
|
||||
@Test
|
||||
void getDqDeptLdUserIdList_shouldReturnUserList() {
|
||||
List<String> users = List.of("dq_user1");
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(
|
||||
InspectCloseoutConstant.DQ_DEPT_ID, InspectCloseoutConstant.DQ_DEPT_WORKER_ROLE_ID))
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-dq", "role-jj-worker"))
|
||||
.thenReturn(users);
|
||||
|
||||
assertEquals(users, flow.getDqDeptLdUserIdList());
|
||||
@@ -120,8 +130,7 @@ class InspectCloseoutFlowTest {
|
||||
|
||||
@Test
|
||||
void getDqDeptLdUserIdListLength_shouldReturnCount() {
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(
|
||||
InspectCloseoutConstant.DQ_DEPT_ID, InspectCloseoutConstant.DQ_DEPT_WORKER_ROLE_ID))
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-dq", "role-jj-worker"))
|
||||
.thenReturn(List.of("user1", "user2"));
|
||||
|
||||
assertEquals(2, flow.getDqDeptLdUserIdListLength());
|
||||
@@ -129,8 +138,7 @@ class InspectCloseoutFlowTest {
|
||||
|
||||
@Test
|
||||
void getDqDeptLdUserIdListLength_shouldReturnZeroWhenEmpty() {
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(
|
||||
InspectCloseoutConstant.DQ_DEPT_ID, InspectCloseoutConstant.DQ_DEPT_WORKER_ROLE_ID))
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-dq", "role-jj-worker"))
|
||||
.thenReturn(Collections.emptyList());
|
||||
|
||||
assertEquals(0, flow.getDqDeptLdUserIdListLength());
|
||||
@@ -144,8 +152,7 @@ class InspectCloseoutFlowTest {
|
||||
|
||||
@Test
|
||||
void getJWSJUser_shouldReturnUniqueUser() {
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(
|
||||
InspectCloseoutConstant.SLD_DEPT_ID, InspectCloseoutConstant.SLD_JWSJ_ROLE_ID))
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-sld", "role-sld-jwsj"))
|
||||
.thenReturn(List.of("jwsj_user"));
|
||||
|
||||
assertEquals("jwsj_user", flow.getJWSJUser());
|
||||
@@ -153,8 +160,7 @@ class InspectCloseoutFlowTest {
|
||||
|
||||
@Test
|
||||
void getJWSJUser_shouldThrowWhenEmpty() {
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(
|
||||
InspectCloseoutConstant.SLD_DEPT_ID, InspectCloseoutConstant.SLD_JWSJ_ROLE_ID))
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-sld", "role-sld-jwsj"))
|
||||
.thenReturn(Collections.emptyList());
|
||||
|
||||
assertThrows(BusinessException.class, () -> flow.getJWSJUser());
|
||||
@@ -162,8 +168,7 @@ class InspectCloseoutFlowTest {
|
||||
|
||||
@Test
|
||||
void getJWSJUser_shouldThrowWhenMultipleUsers() {
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(
|
||||
InspectCloseoutConstant.SLD_DEPT_ID, InspectCloseoutConstant.SLD_JWSJ_ROLE_ID))
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-sld", "role-sld-jwsj"))
|
||||
.thenReturn(List.of("user1", "user2"));
|
||||
|
||||
assertThrows(BusinessException.class, () -> flow.getJWSJUser());
|
||||
|
||||
+24
-21
@@ -7,6 +7,7 @@ import com.alibaba.fastjson.JSONObject;
|
||||
import com.jeecg.weibo.exception.BusinessException;
|
||||
import org.flowable.engine.RuntimeService;
|
||||
import org.flowable.engine.delegate.DelegateExecution;
|
||||
import org.jeecg.OrgConfig;
|
||||
import org.jeecg.common.system.api.ISysBaseAPI;
|
||||
import org.jeecg.inspectimprove.InspectImproveConfig.InspectImproveProperties;
|
||||
import org.jeecg.modules.demo.dqinspecttask.entity.DqInspectTask;
|
||||
@@ -27,6 +28,9 @@ class InspectImproveFlowTest {
|
||||
@Mock
|
||||
private InspectImproveConfig inspectImproveConfig;
|
||||
|
||||
@Mock
|
||||
private OrgConfig orgConfig;
|
||||
|
||||
@Mock
|
||||
private ISysBaseAPI iSysBaseAPI;
|
||||
|
||||
@@ -41,21 +45,30 @@ class InspectImproveFlowTest {
|
||||
|
||||
private InspectImproveFlow flow;
|
||||
private InspectImproveProperties props;
|
||||
private OrgConfig.Dept dept;
|
||||
private OrgConfig.Role role;
|
||||
|
||||
@BeforeEach
|
||||
void setUp() {
|
||||
props = new InspectImproveProperties();
|
||||
props.setBusinessKey("businessKey");
|
||||
props.setDqDeptId("dept-001");
|
||||
props.setLdRoleId("role-001");
|
||||
props.setMeasureResLeaderKey("measureResLeader");
|
||||
props.setMeasureResDeptKey("measureResDept");
|
||||
props.setQuestionResLeaderKey("questionResLeader");
|
||||
props.setQuestionResDeptKey("questionResDept");
|
||||
lenient().when(inspectImproveConfig.getInspectImprove()).thenReturn(props);
|
||||
|
||||
// IDjInspectImproveService, FlowNodeExpression, XiSpeakConfig 未使用,传 null
|
||||
flow = new InspectImproveFlow(inspectImproveConfig, null, null, null,
|
||||
dept = new OrgConfig.Dept();
|
||||
dept.setDq("dept-dq");
|
||||
dept.setSld("dept-sld");
|
||||
role = new OrgConfig.Role();
|
||||
role.setLd("role-ld");
|
||||
role.setSdwsj("role-sdwsj");
|
||||
lenient().when(orgConfig.getDept()).thenReturn(dept);
|
||||
lenient().when(orgConfig.getRole()).thenReturn(role);
|
||||
|
||||
// IDjInspectImproveService, FlowNodeExpression 未使用,传 null
|
||||
flow = new InspectImproveFlow(inspectImproveConfig, orgConfig, null, null,
|
||||
iSysBaseAPI, dqInspectTaskService, runtimeService);
|
||||
}
|
||||
|
||||
@@ -211,22 +224,15 @@ class InspectImproveFlowTest {
|
||||
@Test
|
||||
void getDqDeptLdUserIdList_shouldReturnUserList() {
|
||||
List<String> users = List.of("user1", "user2");
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-001", "role-001"))
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-dq", "role-ld"))
|
||||
.thenReturn(users);
|
||||
|
||||
assertEquals(users, flow.getDqDeptLdUserIdList());
|
||||
}
|
||||
|
||||
@Test
|
||||
void getDqDeptLdUserIdList_shouldReturnEmptyWhenPropsIsNull() {
|
||||
when(inspectImproveConfig.getInspectImprove()).thenReturn(null);
|
||||
|
||||
assertEquals(Collections.emptyList(), flow.getDqDeptLdUserIdList());
|
||||
}
|
||||
|
||||
@Test
|
||||
void getDqDeptLdUserIdListLength_shouldReturnCount() {
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-001", "role-001"))
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-dq", "role-ld"))
|
||||
.thenReturn(List.of("user1", "user2"));
|
||||
|
||||
assertEquals(2, flow.getDqDeptLdUserIdListLength());
|
||||
@@ -234,8 +240,7 @@ class InspectImproveFlowTest {
|
||||
|
||||
@Test
|
||||
void getSDWSJ_shouldReturnUniqueUser() {
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(
|
||||
InspectConstant.SLD_DEPT_ID, InspectConstant.SDWSJ_ROLE_ID))
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-sld", "role-sdwsj"))
|
||||
.thenReturn(List.of("party_secretary"));
|
||||
|
||||
assertEquals("party_secretary", flow.getSDWSJ());
|
||||
@@ -243,8 +248,7 @@ class InspectImproveFlowTest {
|
||||
|
||||
@Test
|
||||
void getSDWSJ_shouldThrowWhenEmpty() {
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(
|
||||
InspectConstant.SLD_DEPT_ID, InspectConstant.SDWSJ_ROLE_ID))
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-sld", "role-sdwsj"))
|
||||
.thenReturn(Collections.emptyList());
|
||||
|
||||
assertThrows(BusinessException.class, () -> flow.getSDWSJ());
|
||||
@@ -252,8 +256,7 @@ class InspectImproveFlowTest {
|
||||
|
||||
@Test
|
||||
void getSDWSJ_shouldThrowWhenMultipleUsers() {
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi(
|
||||
InspectConstant.SLD_DEPT_ID, InspectConstant.SDWSJ_ROLE_ID))
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-sld", "role-sdwsj"))
|
||||
.thenReturn(List.of("user1", "user2"));
|
||||
|
||||
assertThrows(BusinessException.class, () -> flow.getSDWSJ());
|
||||
@@ -272,7 +275,7 @@ class InspectImproveFlowTest {
|
||||
task.setMeasureResDept("dept-100");
|
||||
|
||||
List<String> leaders = List.of("leader1");
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-100", "role-001"))
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-100", "role-ld"))
|
||||
.thenReturn(leaders);
|
||||
|
||||
assertEquals(leaders, flow.getImplDeptLeaderList(execution));
|
||||
@@ -293,7 +296,7 @@ class InspectImproveFlowTest {
|
||||
DqInspectTask task = mockTaskFound("biz-001");
|
||||
task.setMeasureResDept("dept-100");
|
||||
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-100", "role-001"))
|
||||
when(iSysBaseAPI.getUsersListByDeptIdAndRoleIdLocalApi("dept-100", "role-ld"))
|
||||
.thenReturn(List.of("leader1", "leader2"));
|
||||
|
||||
assertEquals(2, flow.getImplDeptLeaderListLength(execution));
|
||||
|
||||
Reference in New Issue
Block a user