Pārlūkot izejas kodu

新增数据权限

czh 2 gadi atpakaļ
vecāks
revīzija
ae2c2851d1

+ 5 - 0
sckw-auth/src/main/java/com/sckw/auth/service/impl/AuthServiceImpl.java

@@ -577,6 +577,11 @@ public class AuthServiceImpl implements IAuthService {
             //普通用户需要填充数据权限
             if (user.getIsMain().equals(Global.NO)) {
                 loginUserInfo.setAuthUserIdList(remoteUserService.queryAuthUserList(user.getId()));
+            } else {
+                List<FindEntUserResDto> entUser = remoteUserService.findEntUser(user.getEntId());
+                if (CollectionUtils.isNotEmpty(entUser)) {
+                    loginUserInfo.setAuthUserIdList(entUser.stream().map(FindEntUserResDto::getUserId).distinct().toList());
+                }
             }
 
             int expireTime = ClientTypeEnum.expireTime(loginBase.getClientType());

+ 9 - 0
sckw-modules-api/sckw-system-api/src/main/java/com/sckw/system/api/RemoteUserService.java

@@ -202,4 +202,13 @@ public interface RemoteUserService {
      * @date: 2023/9/4
      */
     List<Long> queryAuthUserList(Long id);
+
+    /**
+     * @param entId 企业id
+     * @return FindEntUserResDto
+     * @desc: 查企业下的员工
+     * @author: czh
+     * @date: 2023/9/20
+     */
+    List<FindEntUserResDto> findEntUser(Long entId);
 }

+ 54 - 0
sckw-modules-api/sckw-system-api/src/main/java/com/sckw/system/api/model/dto/res/FindEntUserResDto.java

@@ -0,0 +1,54 @@
+package com.sckw.system.api.model.dto.res;
+
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+/**
+ * @author czh
+ * @desc 员工信息
+ * @date 2023/9/20
+ */
+@Data
+public class FindEntUserResDto implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 1899047398204218528L;
+
+    /**
+     * 企业id
+     */
+    private Long entId;
+
+    /**
+     * 企业名
+     */
+    private String entName;
+
+    /**
+     * 用户id
+     */
+    private Long userId;
+
+    /**
+     * 用户账号
+     */
+    private String account;
+
+    /**
+     * 用户姓名
+     */
+    private String name;
+
+    /**
+     * 手机号
+     */
+    private String phone;
+
+    /**
+     * 角色名
+     */
+    private String roleName;
+
+}

+ 13 - 0
sckw-modules/sckw-system/src/main/java/com/sckw/system/dubbo/RemoteUserServiceImpl.java

@@ -17,7 +17,9 @@ import com.sckw.system.dao.KwsEnterpriseDao;
 import com.sckw.system.dao.KwsUserLoginDao;
 import com.sckw.system.dao.SysDictDao;
 import com.sckw.system.model.*;
+import com.sckw.system.model.pojo.FindEntUserPojo;
 import com.sckw.system.model.pojo.FindMenuTreePojo;
+import com.sckw.system.model.vo.req.FindListReqVo;
 import com.sckw.system.model.vo.req.ForgetPasswordReqVo;
 import com.sckw.system.model.vo.res.KwsMenuResVo;
 import com.sckw.system.model.vo.res.KwsUserResVo;
@@ -223,6 +225,17 @@ public class RemoteUserServiceImpl implements RemoteUserService {
         return list;
     }
 
+    @Override
+    public List<FindEntUserResDto> findEntUser(Long entId) {
+        FindListReqVo findListReqVo = new FindListReqVo();
+        findListReqVo.setId(entId);
+        List<FindEntUserPojo> entUser = kwsEnterpriseService.findEntUser(findListReqVo);
+        if(CollectionUtils.isEmpty(entUser)) {
+            return Collections.emptyList();
+        }
+        return BeanUtils.copyToList(entUser,FindEntUserResDto.class);
+    }
+
 
     /**
      * 根据用户名查用户信息