diff --git a/src/api/system/role.ts b/src/api/system/role.ts index 9198a5e3..bb9a2670 100644 --- a/src/api/system/role.ts +++ b/src/api/system/role.ts @@ -1,3 +1,4 @@ +import request from '@/utils/request'; import server from '@/utils/request'; // 获取角色列表 @@ -25,4 +26,10 @@ export const getUserByRole_api = (data: any): Promise => server.post(`/user // 将用户与角色绑定 export const bindUser_api = (roleId:string, data: string[]): Promise => server.post(`/role/${roleId}/users/_bind`, data); // 将用户与角色解绑 -export const unbindUser_api = (roleId:string, data: string[]): Promise => server.post(`/role/${roleId}/users/_unbind`, data); \ No newline at end of file +export const unbindUser_api = (roleId:string, data: string[]): Promise => server.post(`/role/${roleId}/users/_unbind`, data); +//查询分组 +export const queryRoleGroup = (data:any) => request.post('/role/group/_query/no-paging',data) +//保存分组 +export const saveRoleGroup = (data:any) => request.patch('/role/group',data) +//删除分组 +export const deleteRoleGroup = (id:string) => request.remove(`/role/group/${id}`) \ No newline at end of file diff --git a/src/views/system/Role/RoleLeft/index.vue b/src/views/system/Role/RoleLeft/index.vue new file mode 100644 index 00000000..c2d88a7a --- /dev/null +++ b/src/views/system/Role/RoleLeft/index.vue @@ -0,0 +1,154 @@ + + + + \ No newline at end of file diff --git a/src/views/system/Role/Detail/Permiss/index.vue b/src/views/system/Role/RoleRight/Detail/Permiss/index.vue similarity index 100% rename from src/views/system/Role/Detail/Permiss/index.vue rename to src/views/system/Role/RoleRight/Detail/Permiss/index.vue diff --git a/src/views/system/Role/Detail/User/index.d.ts b/src/views/system/Role/RoleRight/Detail/User/index.d.ts similarity index 100% rename from src/views/system/Role/Detail/User/index.d.ts rename to src/views/system/Role/RoleRight/Detail/User/index.d.ts diff --git a/src/views/system/Role/Detail/User/index.vue b/src/views/system/Role/RoleRight/Detail/User/index.vue similarity index 100% rename from src/views/system/Role/Detail/User/index.vue rename to src/views/system/Role/RoleRight/Detail/User/index.vue diff --git a/src/views/system/Role/Detail/components/AddUserDialog.vue b/src/views/system/Role/RoleRight/Detail/components/AddUserDialog.vue similarity index 100% rename from src/views/system/Role/Detail/components/AddUserDialog.vue rename to src/views/system/Role/RoleRight/Detail/components/AddUserDialog.vue diff --git a/src/views/system/Role/Detail/components/PermissTree.vue b/src/views/system/Role/RoleRight/Detail/components/PermissTree.vue similarity index 100% rename from src/views/system/Role/Detail/components/PermissTree.vue rename to src/views/system/Role/RoleRight/Detail/components/PermissTree.vue diff --git a/src/views/system/Role/Detail/components/util.ts b/src/views/system/Role/RoleRight/Detail/components/util.ts similarity index 100% rename from src/views/system/Role/Detail/components/util.ts rename to src/views/system/Role/RoleRight/Detail/components/util.ts diff --git a/src/views/system/Role/Detail/index.vue b/src/views/system/Role/RoleRight/Detail/index.vue similarity index 100% rename from src/views/system/Role/Detail/index.vue rename to src/views/system/Role/RoleRight/Detail/index.vue diff --git a/src/views/system/Role/components/AddDialog.vue b/src/views/system/Role/RoleRight/components/AddDialog.vue similarity index 67% rename from src/views/system/Role/components/AddDialog.vue rename to src/views/system/Role/RoleRight/components/AddDialog.vue index 0154f3e9..d3639dd1 100644 --- a/src/views/system/Role/components/AddDialog.vue +++ b/src/views/system/Role/RoleRight/components/AddDialog.vue @@ -22,6 +22,19 @@ allow-clear /> + + + import { FormInstance } from 'ant-design-vue'; -import { saveRole_api } from '@/api/system/role'; +import { saveRole_api , queryRoleGroup} from '@/api/system/role'; import { useMenuStore } from '@/store/menu'; import { onlyMessage } from '@/utils/comm'; const route = useRoute(); @@ -46,12 +59,20 @@ const { jumpPage } = useMenuStore(); const emits = defineEmits(['update:visible']); const props = defineProps<{ visible: boolean; + groupId:{ + type:String, + default:"" + } }>(); // 弹窗相关 const loading = ref(false); -const form = ref({}); +const form = ref({ + name:'', + groupId:'', + description:'' +}); const formRef = ref(); - +const groupOptions = ref([]) const confirm = () => { loading.value = true; formRef.value @@ -74,6 +95,22 @@ const confirm = () => { .finally(() => (loading.value = false)); }; // 表单相关 +const getGroupOptions = ()=>{ + queryRoleGroup({sorts: [{ name: 'createTime', order: 'desc' }]}).then((res:any)=>{ + if(res.status ===200){ + groupOptions.value = res.result.map((item:any)=>{ + return { + label:item.name, + value:item.id + } + }) + } + }) +} +onMounted(()=>{ + getGroupOptions() + form.value.groupId = props.groupId +}) diff --git a/src/views/system/Role/RoleRight/index.vue b/src/views/system/Role/RoleRight/index.vue new file mode 100644 index 00000000..5c35dd79 --- /dev/null +++ b/src/views/system/Role/RoleRight/index.vue @@ -0,0 +1,159 @@ + + + + + diff --git a/src/views/system/Role/index.vue b/src/views/system/Role/index.vue index d104a40b..c435d41c 100644 --- a/src/views/system/Role/index.vue +++ b/src/views/system/Role/index.vue @@ -1,142 +1,40 @@ - - - - + + + + \ No newline at end of file