Browse Source

拥有"工程实验申请管理员"角色,可查看所有待办

master
han\hanst 3 days ago
parent
commit
9e888f335f
  1. 5
      src/main/java/com/xujie/sys/modules/erf/data/ErfExpApplyData.java
  2. 17
      src/main/java/com/xujie/sys/modules/erf/service/impl/ErfExpApplyServiceImpl.java
  3. 7
      src/main/resources/mapper/erf/ErfExpApplyMapper.xml

5
src/main/java/com/xujie/sys/modules/erf/data/ErfExpApplyData.java

@ -262,6 +262,11 @@ public class ErfExpApplyData implements Serializable {
private String pendingStatus;
/**
* 是否为工程实验申请管理员true=管理员可查看所有待办
*/
private Boolean isAdmin;
/**
* 下达时间
*/

17
src/main/java/com/xujie/sys/modules/erf/service/impl/ErfExpApplyServiceImpl.java

@ -434,6 +434,15 @@ public class ErfExpApplyServiceImpl extends ServiceImpl<ErfExpApplyMapper, ErfEx
@Override
public PageUtils getPendingApplyList(ErfExpApplyData data) {
// 检查当前用户是否拥有"工程实验申请管理员"角色若是则可查看所有待办
if (data.getCurrentUserId() != null) {
List<UserRoleDto> adminRoles = sysUserDao.getUserRolesByRoleNames(
data.getCurrentUserId(), List.of("工程实验申请管理员"));
if (!adminRoles.isEmpty()) {
data.setIsAdmin(true);
}
}
PageHelper.startPage(data.getPage(), data.getLimit());
List<ErfExpApplyData> list = erfExpApplyMapper.getPendingApplyList(data);
PageInfo<ErfExpApplyData> pageInfo = new PageInfo<>(list);
@ -960,7 +969,7 @@ public class ErfExpApplyServiceImpl extends ServiceImpl<ErfExpApplyMapper, ErfEx
/**
* 根据用户角色获取对应的技术经理
*
*
* @param userId 用户ID
* @param buNo 事业部编码
* @return 技术经理信息
@ -989,7 +998,7 @@ public class ErfExpApplyServiceImpl extends ServiceImpl<ErfExpApplyMapper, ErfEx
// 3. 查询对应的技术经理用户ID根据BU过滤查不到直接返回null
ManagerInfoDto manager = sysUserDao.getFirstManagerByRoleNameAndBu(managerRoleName, buNo);
if (manager == null) {
throw new XJException(String.format("BU %s 中找不到【%s】角色的用户,请联系管理员配置", buNo, managerRoleName));
}
@ -1005,7 +1014,7 @@ public class ErfExpApplyServiceImpl extends ServiceImpl<ErfExpApplyMapper, ErfEx
/**
* 根据BU获取生产经理列表
*
*
* @param buNo 事业部编码
* @return 生产经理列表查不到返回空列表
*/
@ -1028,7 +1037,7 @@ public class ErfExpApplyServiceImpl extends ServiceImpl<ErfExpApplyMapper, ErfEx
/**
* 根据BU获取质量经理列表
*
*
* @param buNo 事业部编码
* @return 质量经理列表查不到返回空列表
*/

7
src/main/resources/mapper/erf/ErfExpApplyMapper.xml

@ -187,8 +187,11 @@
FROM erf_exp_apply a
INNER JOIN erf_flow_node_instance n ON a.apply_no = n.apply_no
<where>
n.assignee_user_id = #{data.currentUserId}
AND n.status = '待审核'
<if test="data.isAdmin == null or !data.isAdmin">
n.assignee_user_id = #{data.currentUserId}
AND
</if>
n.status = '待审核'
<!-- 根据不同页面类型,过滤不同的节点类型 -->
<if test="data.pageType != null and data.pageType == 'MANAGER'">
AND n.node_code IN ('技术经理审批', '生产经理审批', '质量经理审批')

Loading…
Cancel
Save