diff --git a/web/src/views/system/dept/components/DeptUserCom/crud.tsx b/web/src/views/system/dept/components/DeptUserCom/crud.tsx index 3ab08e9..329a19c 100644 --- a/web/src/views/system/dept/components/DeptUserCom/crud.tsx +++ b/web/src/views/system/dept/components/DeptUserCom/crud.tsx @@ -212,9 +212,6 @@ export const createCrudOptions = function ({ crudExpose, context }: CreateCrudOp }, dept: { title: '部门', - search: { - disabled: true, - }, type: 'dict-tree', dict: dict({ isTree: true, @@ -255,7 +252,12 @@ export const createCrudOptions = function ({ crudExpose, context }: CreateCrudOp role: { title: '角色', search: { - disabled: true, + show: true, + component: { + props: { + clearable: true, + }, + }, }, type: 'dict-select', dict: dict({ diff --git a/web/src/views/system/role/components/api.ts b/web/src/views/system/role/components/PermissionCom/api.ts similarity index 100% rename from web/src/views/system/role/components/api.ts rename to web/src/views/system/role/components/PermissionCom/api.ts diff --git a/web/src/views/system/role/components/permission.vue b/web/src/views/system/role/components/PermissionCom/index.vue similarity index 100% rename from web/src/views/system/role/components/permission.vue rename to web/src/views/system/role/components/PermissionCom/index.vue diff --git a/web/src/views/system/role/components/PermissionComCopy/api.ts b/web/src/views/system/role/components/PermissionComCopy/api.ts new file mode 100644 index 0000000..9d4c590 --- /dev/null +++ b/web/src/views/system/role/components/PermissionComCopy/api.ts @@ -0,0 +1,21 @@ +import { request } from "/@/utils/service"; + +export function getDataPermissionRange() { + return request({ + url: '/api/system/role_menu_button_permission/data_scope/', + method: 'get', + }) +} +export function getDataPermissionDept() { + return request({ + url: '/api/system/role_menu_button_permission/role_to_dept_all/', + method: 'get' + }) +} + +export function getDataPermissionMenu() { + return request({ + url: '/api/system/role_menu_button_permission/get_role_permissions/', + method: 'get' + }) +} \ No newline at end of file diff --git a/web/src/views/system/role/components/PermissionComCopy/index.vue b/web/src/views/system/role/components/PermissionComCopy/index.vue new file mode 100644 index 0000000..1d08e99 --- /dev/null +++ b/web/src/views/system/role/components/PermissionComCopy/index.vue @@ -0,0 +1,235 @@ + + + + + + + diff --git a/web/src/views/system/role/components/PermissionComCopy/types.ts b/web/src/views/system/role/components/PermissionComCopy/types.ts new file mode 100644 index 0000000..6abb63d --- /dev/null +++ b/web/src/views/system/role/components/PermissionComCopy/types.ts @@ -0,0 +1,20 @@ +export interface DataPermissionRangeType { + label: string; + value: number; +} + +export interface CustomDataPermissionDeptType { + id: number; + name: string; + patent: number; + children: CustomDataPermissionDeptType[] +} + +export interface CustomDataPermissionMenuType { + id: number; + name: string; + is_catalog: boolean; + menuPermission: { id: number; name: string; value: string }[] | null; + columns: { id: number; name: string; title: string }[] | null; + children: CustomDataPermissionMenuType[] +} \ No newline at end of file diff --git a/web/src/views/system/role/index.vue b/web/src/views/system/role/index.vue index 576f725..e15d0fd 100644 --- a/web/src/views/system/role/index.vue +++ b/web/src/views/system/role/index.vue @@ -5,8 +5,8 @@ {{ scope.row.url }} - - + + @@ -15,7 +15,7 @@ import { ref, onMounted } from 'vue'; import { useExpose, useCrud, dict } from '@fast-crud/fast-crud'; import { createCrudOptions } from './crud'; import RolePermission from '/@/views/system/rolePermission/index.vue'; -import permission from './components/permission.vue' +import permission from './components/PermissionCom/index.vue'; import * as api from './api'; import _ from 'lodash-es'; const rolePermission = ref(); diff --git a/web/src/views/system/role/types.ts b/web/src/views/system/role/types.ts new file mode 100644 index 0000000..6b0027c --- /dev/null +++ b/web/src/views/system/role/types.ts @@ -0,0 +1,27 @@ +import { CrudOptions, CrudExpose } from '@fast-crud/fast-crud'; + +export interface CreateCrudReturnTypes { + crudOptions: CrudOptions; +} + +export interface CreateCrudOptionsTypes { + crudExpose: CrudExpose; + configPermission: Function; +} + +export interface RoleItemType { + id: string | number; + modifier_name: string; + creator_name: string; + create_datetime: string; + update_datetime: string; + description: string; + modifier: string; + dept_belong_id: string; + name: string; + key: string; + sort: number; + status: boolean; + admin: boolean; + creator: string; +} \ No newline at end of file