From 0b9e99d00f333ba4ee79113084cb4163439562d8 Mon Sep 17 00:00:00 2001 From: HoshinoSuzumi <master@uniiem.com> Date: Sun, 22 Sep 2024 01:26:18 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E7=94=A8=E6=88=B7=E9=A1=B5=E9=9D=A2?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=8D=95=E4=BD=8D=E3=80=81=E8=A7=92=E8=89=B2?= =?UTF-8?q?=E3=80=81=E6=9D=83=E9=99=90=E5=B1=95=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/my/index.vue | 10 ++++++++-- src/types/api/user.ts | 40 ++++++++++++++++++++++++++++++++++++++-- 2 files changed, 46 insertions(+), 4 deletions(-) diff --git a/src/pages/my/index.vue b/src/pages/my/index.vue index 3f8d143..a000923 100644 --- a/src/pages/my/index.vue +++ b/src/pages/my/index.vue @@ -15,6 +15,11 @@ const logout = () => { router.replaceAll('/pages/login/index') } +const departmentMap = { + 4: '重庆眩生花科技有限公司', + 5: '重庆电子科技职业大学', +} + onMounted(() => { toast.loading({ msg: '加载中...' @@ -32,8 +37,9 @@ onMounted(() => { <WdCellGroup :border="true"> <WdCell title="用户名" :value="user.userinfo?.username || '-'" /> <WdCell title="邮箱" :value="user.userinfo?.email || '-'" /> - <WdCell title="单位" :value="user.userinfo?.department_id || '-'" /> - <WdCell title="角色" :value="user.userinfo?.roles.join('') || '-'" /> + <WdCell title="单位" :value="user.userinfo?.department_id ? departmentMap[user.userinfo.department_id] : '-'" /> + <WdCell title="角色" :value="user.userinfo?.roles.map(i => i.role_name).join(', ') || '-'" /> + <WdCell title="权限" :value="user.userinfo?.jobs.map(i => i.job_name).join(', ') || '-'" /> </WdCellGroup> <div class="px-4"> <wd-button plain hairline block type="error" @click="logout">退出账号</wd-button> diff --git a/src/types/api/user.ts b/src/types/api/user.ts index 84c7a1b..54b82ff 100644 --- a/src/types/api/user.ts +++ b/src/types/api/user.ts @@ -12,8 +12,8 @@ export interface User { updated_at: string; deleted_at: Date; permissions: Permission[]; - roles: any[]; - jobs: any[]; + roles: Role[]; + jobs: Job[]; } export interface Permission { @@ -41,3 +41,39 @@ export enum PermissionModule { Permissions = "permissions", User = "user", } + +export interface Job { + id: number; + job_name: string; + coding: string; + status: number; + sort: number; + description: string; + creator_id: number; + created_at: string; + updated_at: string; + pivot: JobPivot; +} + +export interface JobPivot { + user_id: number; + job_id: number; +} + +export interface Role { + id: number; + role_name: string; + identify: string; + parent_id: number; + description: string; + data_range: number; + creator_id: number; + created_at: string; + updated_at: string; + pivot: RolePivot; +} + +export interface RolePivot { + user_id: number; + role_id: number; +}