From 8a843ad94c37addfaf3f518ce7e8e7e9609b3379 Mon Sep 17 00:00:00 2001 From: Charles7c Date: Sun, 26 Mar 2023 20:50:17 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=EF=BC=9A=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E5=9C=A8=E7=BA=BF=E7=94=A8=E6=88=B7=E7=BC=BA=E5=A4=B1=E6=98=B5?= =?UTF-8?q?=E7=A7=B0=E4=BF=A1=E6=81=AF=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../top/charles7c/cnadmin/auth/model/vo/OnlineUserVO.java | 6 ++++++ .../cnadmin/auth/service/impl/OnlineUserServiceImpl.java | 4 +++- continew-admin-ui/src/hooks/permission.ts | 8 +++++++- 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/continew-admin-system/src/main/java/top/charles7c/cnadmin/auth/model/vo/OnlineUserVO.java b/continew-admin-system/src/main/java/top/charles7c/cnadmin/auth/model/vo/OnlineUserVO.java index c3132933..0dd92a4d 100644 --- a/continew-admin-system/src/main/java/top/charles7c/cnadmin/auth/model/vo/OnlineUserVO.java +++ b/continew-admin-system/src/main/java/top/charles7c/cnadmin/auth/model/vo/OnlineUserVO.java @@ -35,6 +35,12 @@ public class OnlineUserVO implements Serializable { private static final long serialVersionUID = 1L; + /** + * ID + */ + @Schema(description = "ID") + private Long id; + /** * 令牌 */ diff --git a/continew-admin-system/src/main/java/top/charles7c/cnadmin/auth/service/impl/OnlineUserServiceImpl.java b/continew-admin-system/src/main/java/top/charles7c/cnadmin/auth/service/impl/OnlineUserServiceImpl.java index 3dd83a02..81fb068a 100644 --- a/continew-admin-system/src/main/java/top/charles7c/cnadmin/auth/service/impl/OnlineUserServiceImpl.java +++ b/continew-admin-system/src/main/java/top/charles7c/cnadmin/auth/service/impl/OnlineUserServiceImpl.java @@ -54,7 +54,9 @@ public class OnlineUserServiceImpl implements OnlineUserService { public PageDataVO page(OnlineUserQuery query, PageQuery pageQuery) { List loginUserList = this.list(query); List list = BeanUtil.copyToList(loginUserList, OnlineUserVO.class); - return PageDataVO.build(pageQuery.getPage(), pageQuery.getSize(), list); + PageDataVO pageDataVO = PageDataVO.build(pageQuery.getPage(), pageQuery.getSize(), list); + pageDataVO.getList().forEach(u -> u.setNickname(LoginHelper.getNickname(u.getId()))); + return pageDataVO; } @Override diff --git a/continew-admin-ui/src/hooks/permission.ts b/continew-admin-ui/src/hooks/permission.ts index f5b3ba86..58b58df7 100644 --- a/continew-admin-ui/src/hooks/permission.ts +++ b/continew-admin-ui/src/hooks/permission.ts @@ -9,9 +9,15 @@ export default function usePermission() { !route.meta?.requiresAuth || !route.meta?.roles || route.meta?.roles?.includes('*') || - route.meta?.roles?.includes(loginStore.roles[0]) + this.includeRole(route.meta?.roles, loginStore.roles) ); }, + includeRole(arr1: Array, arr2: Array) { + const temp = arr1.filter((item) => { + return arr2.includes(item); + }); + return !!temp.length; + }, findFirstPermissionRoute(_routers: any, role = 'admin') { const cloneRouters = [..._routers]; while (cloneRouters.length) {