From 9427a683676a93ff12b8ce27bfef7392ae5ed2e6 Mon Sep 17 00:00:00 2001 From: LSH Date: 星期二, 07 十一月 2023 10:39:27 +0800 Subject: [PATCH] # --- src/main/java/com/zy/crm/common/web/BaseController.java | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 50 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/zy/crm/common/web/BaseController.java b/src/main/java/com/zy/crm/common/web/BaseController.java index eab395b..8855433 100644 --- a/src/main/java/com/zy/crm/common/web/BaseController.java +++ b/src/main/java/com/zy/crm/common/web/BaseController.java @@ -80,8 +80,21 @@ return Long.parseLong(String.valueOf(request.getAttribute("userId"))); } + protected Long getUserId(String token){ + UserLogin userLogin = userLoginService.selectOne(new EntityWrapper<UserLogin>().eq("token", token)); + return userLogin.getUserId(); + } + protected User getUser(){ User user = userService.selectById(getUserId()); + if (null == user) { + throw new CoolException(BaseRes.DENIED); + } + return user; + } + + protected User getUser(String token){ + User user = userService.selectById(getUserId(token)); if (null == user) { throw new CoolException(BaseRes.DENIED); } @@ -223,4 +236,41 @@ wrapper.like(columns.get(i), condition); } } + + //鑾峰彇褰撳墠鐧诲綍鐢ㄦ埛锛屽搴旀潈闄愪笅鎵�鏈夌敤鎴穒d銆傦紙鏅�氳亴鍛樿幏鍙栬嚜宸憋紝棰嗗鑾峰彇鑷繁鍙婁笅灞烇紝瓒呯骇绠$悊鍛樺叏閮級 + protected ArrayList<Long> getUserRoleBelongsToUserId() { + User user = getUser(); + ArrayList<Long> userIds = new ArrayList<>(); + if (user.getRoleCode().equals("boss")) { + //鍏ㄩ儴鏉冮檺 + userIds = null; + } else if (user.getRoleCode().equals("manager")) { + //鑷繁鍙婁笅灞炴潈闄� + userIds.add(getUserId()); + EntityWrapper<User> entityWrapper = new EntityWrapper<>(); + entityWrapper.eq("dept_id", user.getDeptId()); + List<User> userList = userService.selectList(entityWrapper); + for (User item : userList) { + userIds.add(item.getId()); + } + }else{ + //鑷繁鏉冮檺 + userIds.add(getUserId()); + } + + return userIds; + } + + protected ArrayList<Long> getUserRoleBelongsToUserId(String permission) { + User user = getUser(); + if (user.getDeptName().equals("骞冲簱瑙勫垝缁�") || user.getDeptName().equals("鏍镐环缁�")) { + if (permission.equals("allopen")) { + //鏉冮檺鍏ㄩ儴寮�鏀� + return null; + } + } + + //杩斿洖榛樿閫夋嫨鏂规 + return getUserRoleBelongsToUserId(); + } } -- Gitblit v1.9.1