Jelajahi Sumber

质量问题反馈责任人下拉框角色修改

wangliang 1 tahun lalu
induk
melakukan
166257d74d

+ 2 - 1
sop-business/src/main/java/com/qmth/sop/business/mapper/SysUserMapper.java

@@ -103,9 +103,10 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
      * 根据用户来源查找用户并返回动态表单数据
      *
      * @param userSourceEnum
+     * @param roleIdList
      * @return
      */
-    List<FormWidgetDto> queryUser(@Param("userSourceEnum") String userSourceEnum);
+    List<FormWidgetDto> queryUser(@Param("userSourceEnum") String userSourceEnum, @Param("roleIdList") List<Long> roleIdList);
 
     /**
      * 查找用户角色名

+ 1 - 1
sop-business/src/main/java/com/qmth/sop/business/service/impl/SysUserServiceImpl.java

@@ -294,7 +294,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
      */
     @Override
     public List<FormWidgetDto> queryUser(UserSourceEnum userSourceEnum) {
-        return this.baseMapper.queryUser(Objects.nonNull(userSourceEnum) ? userSourceEnum.name() : null);
+        return this.baseMapper.queryUser(Objects.nonNull(userSourceEnum) ? userSourceEnum.name() : null, Objects.nonNull(userSourceEnum) ? userSourceEnum.getRoleIdList() : null);
     }
 
     /**

+ 9 - 2
sop-business/src/main/resources/mapper/SysUserMapper.xml

@@ -261,13 +261,20 @@
             (select su.id as 'value',su.real_name as realName,
             (select group_concat(sur.role_id)
             from sys_user_role sur
-            where sur.user_id = su.id) as roleIds
+            where sur.user_id = su.id
+            <if test="roleIdList != null and roleIdList != '' and roleIdList.size() > 0">
+                and sur.role_id in
+                <foreach collection="roleIdList" item="item" index="index" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+                ) as roleIds
         from sys_user su
             <where> 1 = 1 and su.id <![CDATA[ <> ]]> 1
                 <if test="userSourceEnum != null and userSourceEnum != '' and userSourceEnum != 'ALL'">
                         and su.source = #{userSourceEnum}
                 </if>
-            </where>) t
+            </where>) t where t.roleIds is not null
     </select>
 
     <select id="selectRoleNames" resultType="com.qmth.sop.business.bean.result.UserRoleNameResult">

+ 17 - 4
sop-common/src/main/java/com/qmth/sop/common/enums/UserSourceEnum.java

@@ -1,5 +1,7 @@
 package com.qmth.sop.common.enums;
 
+import java.util.Arrays;
+import java.util.List;
 import java.util.Objects;
 
 /**
@@ -11,18 +13,29 @@ import java.util.Objects;
  */
 public enum UserSourceEnum {
 
-    ARCHIVES("人员档案"),
+    ARCHIVES("人员档案", null),
 
-    SYSTEM("系统自带"),
+    SYSTEM("系统自带", null),
 
-    ALL("全部");
+    ALL("全部", Arrays.asList(4L, 5L, 6L, 7L));
 
-    UserSourceEnum(String title) {
+    UserSourceEnum(String title, List<Long> roleIdList) {
         this.title = title;
+        this.roleIdList = roleIdList;
     }
 
     private String title;
 
+    private List<Long> roleIdList;
+
+    public List<Long> getRoleIdList() {
+        return roleIdList;
+    }
+
+    public void setRoleIdList(List<Long> roleIdList) {
+        this.roleIdList = roleIdList;
+    }
+
     public String getTitle() {
         return title;
     }