From 062a8f259faa30f2b7200adfb093b2c716f4f8ab Mon Sep 17 00:00:00 2001 From: GYYM <704080176@qq.com> Date: Wed, 16 Oct 2024 11:27:17 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=98=E5=88=B6=E8=A7=92=E8=89=B2=E7=95=8C?= =?UTF-8?q?=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/api/role/interface/index.ts | 52 +++++ frontend/src/api/role/role.ts | 72 ++++++ frontend/src/api/role/roleData.ts | 70 ++++++ frontend/src/views/authority/role/index.vue | 242 ++++++++++++++++++++ 4 files changed, 436 insertions(+) create mode 100644 frontend/src/api/role/interface/index.ts create mode 100644 frontend/src/api/role/role.ts create mode 100644 frontend/src/api/role/roleData.ts create mode 100644 frontend/src/views/authority/role/index.vue diff --git a/frontend/src/api/role/interface/index.ts b/frontend/src/api/role/interface/index.ts new file mode 100644 index 0000000..3c6b1bb --- /dev/null +++ b/frontend/src/api/role/interface/index.ts @@ -0,0 +1,52 @@ +import type { ReqPage } from '@/api/interface' + +// 角色管理模块 +export namespace Role { + + export interface Permission{ + id: string; //权限名称 + name: string; //权限ID + havePermission:boolean; //是否拥有该权限 + } + + // 角色列表 + export interface ResRoleList { + id: string; //角色类型ID + rolename: string; //角色类型名称 + status: number; //角色类型状态 + describe:string; //角色描述 + permissionList?:Permission[]; //角色权限列表 + } + + // 角色参数 + export interface ReqRoleParams extends ReqPage { + id: string; //角色类型ID + rolename: string; //角色类型名称 + status: number; //角色类型状态 + describe:string; //角色描述 + permissionList?:Permission[]; //角色权限列表 + } + // 角色字典 + export interface ResStatus { + roleLabel: string; + roleValue: number; + } + + // export interface ResGender { + // genderLabel: string; + // genderValue: number; + // } + + //角色权限列表 + export interface ResPermissionList { + id: string; + name: string; + permissionList?: Permission[]; + } + + // export interface ResRole { + // id: string; + // name: string; + // children?: ResDepartment[]; + // } + } \ No newline at end of file diff --git a/frontend/src/api/role/role.ts b/frontend/src/api/role/role.ts new file mode 100644 index 0000000..62bb047 --- /dev/null +++ b/frontend/src/api/role/role.ts @@ -0,0 +1,72 @@ +import { ResPage } from '@/api/interface' +import { Role } from './interface' +import { ADMIN as rePrefix } from '@/api/config/serviceName' +import http from '@/api' + +/** + * @name 角色管理模块 + */ +// 获取角色列表 +export const getRoleList = (params: Role.ReqRoleParams) => { + return http.post>(`${rePrefix}/role/list`, params) +} + +// // 获取树形用户列表 +// export const getRoleTreeList = (params: Role.ReqRoleParams) => { +// return http.post>(`${rePrefix}/role/tree/list`, params) +// } + +// 新增角色 +export const addRole = (params: { id: string }) => { + return http.post(`${rePrefix}/role/add`, params) +} + +// 批量添加角色 +export const BatchAddRole = (params: FormData) => { + return http.post(`${rePrefix}/role/import`, params) +} + +// 编辑角色 +export const editRole = (params: { id: string }) => { + return http.post(`${rePrefix}/role/edit`, params) +} + +// 删除角色 +export const deleteRole = (params: { id: string[] }) => { + return http.post(`${rePrefix}/role/delete`, params) +} + +// 切换角色状态 +export const changeRoleStatus = (params: { id: string; status: number }) => { + return http.post(`${rePrefix}/role/change`, params) +} + +// 重置用户密码 +// export const resetUserPassWord = (params: { id: string }) => { +// return http.post(`${rePrefix}/role/rest_password`, params) +// } + +// 导出角色数据 +export const exportRoleInfo = (params: Role.ReqRoleParams) => { + return http.download(`${rePrefix}/role/export`, params) +} + +// 获取角色状态字典 +export const getRoleStatus = () => { + return http.get(`${rePrefix}/role/status`) +} + +// 获取用户性别字典 +// export const getUserGender = () => { +// return http.get(`${rePrefix}/user/gender`) +// } + +// 获取角色权限列表 +export const getRoleDepartment = () => { + return http.get(`${rePrefix}/role/permission`) +} + +// 获取用户角色字典 +// export const getUserRole = () => { +// return http.get(`${rePrefix}/user/role`) +// } diff --git a/frontend/src/api/role/roleData.ts b/frontend/src/api/role/roleData.ts new file mode 100644 index 0000000..0861067 --- /dev/null +++ b/frontend/src/api/role/roleData.ts @@ -0,0 +1,70 @@ +const data = [ + { + rolename:"操作员", + id: 'operator_role', + status:1, + describe:"可以对待检设备的台账进行操作并执行检测功能", + permissionList: [ + { + name: "台账管理", + id: "dataManager", + havePermission: false, + }, + { + name: "系统配置", + id: "sysManager", + havePermission: false, + }, + { + name: "设备检测", + id: "devTest", + havePermission: true, + }, + ]}, + { + rolename:"管理员", + id: 'manager_role', + status:1, + describe:"可以设置检测脚本、误差体系、新增操作人员", + permissionList: [ + { + name: "台账管理", + id: "dataManager", + havePermission: true, + }, + { + name: "系统配置", + id: "sysManager", + havePermission: false, + }, + { + name: "设备检测", + id: "devTest", + havePermission: true, + }, + ]}, + { + rolename:"超级管理员", + id: 'superManager_role', + status:0, + describe:"可以修改程序的底层配置,例如检测指标的具体类型", + permissionList: [ + { + name: "台账管理", + id: "dataManager", + havePermission: true, + }, + { + name: "系统配置", + id: "sysManager", + havePermission: true, + }, + { + name: "设备检测", + id: "devTest", + havePermission: true, + }, + ]}, + ] + + export default data \ No newline at end of file diff --git a/frontend/src/views/authority/role/index.vue b/frontend/src/views/authority/role/index.vue new file mode 100644 index 0000000..6d44c07 --- /dev/null +++ b/frontend/src/views/authority/role/index.vue @@ -0,0 +1,242 @@ + + + + \ No newline at end of file