{"version":3,"file":"index.mjs","sources":["../../../../../src/pagesDefault/sys/role/index.vue"],"sourcesContent":["<template>\r\n\t<a-row>\r\n\t\t<a-col :span=\"5\">\r\n\t\t\t<a-card class=\"cardImp\" :bordered=\"false\" :loading=\"cardLoading\">\r\n\t\t\t\t<a-tree v-if=\"treeData.length > 0\" v-model:expandedKeys=\"defaultExpandedKeys\" :tree-data=\"treeData\" :field-names=\"treeFieldNames\" @select=\"treeSelect\"></a-tree>\r\n\t\t\t\t<a-empty v-else :image=\"Empty.PRESENTED_IMAGE_SIMPLE\" />\r\n\t\t\t</a-card>\r\n\t\t</a-col>\r\n\t\t<a-col :span=\"19\">\r\n\t\t\t<a-card :bordered=\"false\">\r\n\t\t\t\t<SearchForm :form-state=\"searchFormState\" :form-fields=\"[{ label: '名称关键词', name: 'searchKey', span: 8 }]\" @search=\"table.refresh(true)\" @reset=\"handleReset\" ref=\"searchFormRef\">\r\n\t\t\t\t\t<template #searchKey=\"{ formState }\">\r\n\t\t\t\t\t\t<a-input v-model:value=\"formState.searchKey\" placeholder=\"请输入角色名称关键词\" />\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</SearchForm>\r\n\t\t\t\t<s-table\r\n\t\t\t\t\tref=\"table\"\r\n\t\t\t\t\t:columns=\"columns\"\r\n\t\t\t\t\t:data=\"loadData\"\r\n\t\t\t\t\t:expand-row-by-click=\"true\"\r\n\t\t\t\t\t:alert=\"options.alert.show\"\r\n\t\t\t\t\tbordered\r\n\t\t\t\t\t:row-key=\"(record) => record.id\"\r\n\t\t\t\t\t:row-selection=\"options.rowSelection\"\r\n\t\t\t\t\t:operator-config=\"operatorConfig\"\r\n\t\t\t\t>\r\n\t\t\t\t\t<template #bodyCell=\"{ column, record }\">\r\n\t\t\t\t\t\t<template v-if=\"column.dataIndex === 'category'\">\r\n\t\t\t\t\t\t\t{{ $TOOL.dictTypeData('ROLE_CATEGORY', record.category) }}\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t<template v-if=\"column.dataIndex === 'action'\">\r\n\t\t\t\t\t\t\t<a @click=\"form.onOpen(record)\">编辑</a>\r\n\t\t\t\t\t\t\t<a-divider type=\"vertical\" />\r\n\t\t\t\t\t\t\t<a-popconfirm title=\"确定删除此角色？\" @confirm=\"removeOrg(record)\">\r\n\t\t\t\t\t\t\t\t<a-button type=\"link\" danger size=\"small\">删除 </a-button>\r\n\t\t\t\t\t\t\t</a-popconfirm>\r\n\t\t\t\t\t\t\t<a-divider type=\"vertical\" />\r\n\t\t\t\t\t\t\t<a-dropdown>\r\n\t\t\t\t\t\t\t\t<a class=\"ant-dropdown-link\">\r\n\t\t\t\t\t\t\t\t\t授权\r\n\t\t\t\t\t\t\t\t\t<DownOutlined />\r\n\t\t\t\t\t\t\t\t</a>\r\n\t\t\t\t\t\t\t\t<template #overlay>\r\n\t\t\t\t\t\t\t\t\t<a-menu>\r\n\t\t\t\t\t\t\t\t\t\t<a-menu-item>\r\n\t\t\t\t\t\t\t\t\t\t\t<a @click=\"grantResource.onOpen(record)\">授权资源</a>\r\n\t\t\t\t\t\t\t\t\t\t</a-menu-item>\r\n\t\t\t\t\t\t\t\t\t\t<a-menu-item>\r\n\t\t\t\t\t\t\t\t\t\t\t<a @click=\"grantPermission.onOpen(record)\">授权权限</a>\r\n\t\t\t\t\t\t\t\t\t\t</a-menu-item>\r\n\t\t\t\t\t\t\t\t\t\t<a-menu-item>\r\n\t\t\t\t\t\t\t\t\t\t\t<a @click=\"openRoleUserSelector(record)\">授权用户</a>\r\n\t\t\t\t\t\t\t\t\t\t</a-menu-item>\r\n\t\t\t\t\t\t\t\t\t</a-menu>\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t</a-dropdown>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</s-table>\r\n\t\t\t</a-card>\r\n\t\t</a-col>\r\n\t</a-row>\r\n\t<grantResourceForm ref=\"grantResource\" @successful=\"table.refresh(true)\" />\r\n\t<grantPermissionForm ref=\"grantPermission\" @successful=\"table.refresh(true)\" />\r\n\t<Form ref=\"form\" @successful=\"table.refresh(true)\" />\r\n\t<DrawerPicker ref=\"drawerPicker\" :showSelectedUser=\"true\" @ok=\"drawerOk\" @cancel=\"drawerCancel\" :show-check-box=\"true\" :multiple=\"true\" v-model:visible=\"visibleDrawer\" :type=\"type\" />\r\n</template>\r\n<script setup name=\"sysRoleIndex\">\r\n\timport { Empty, message } from 'ant-design-vue'\r\n\timport roleApi from '@/api/sys/roleApi'\r\n\timport orgApi from '@/api/sys/orgApi'\r\n\timport Form from './form.vue'\r\n\timport userSelectorPlusApi from '@/api/components/Selector/userSelectorPlusApi'\r\n\timport GrantPermissionForm from '@/pagesDefault/sys/role/grantPermissionForm.vue'\r\n\timport GrantResourceForm from '@/pagesDefault/sys/role/grantResourceForm.vue'\r\n\tconst panesValues = ['人员', '部门', '岗位']\r\n\tlet type = ref(panesValues[0])\r\n\tlet drawerPicker = ref()\r\n\tconst key = 'updatable'\r\n\tconst columns = [\r\n\t\t{\r\n\t\t\ttitle: '角色名称',\r\n\t\t\tdataIndex: 'name',\r\n\r\n\t\t\twidth: 150\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: '角色编码',\r\n\t\t\tdataIndex: 'code',\r\n\r\n\t\t\twidth: 150\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: '分类',\r\n\r\n\t\t\tdataIndex: 'category'\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: '排序',\r\n\r\n\t\t\tdataIndex: 'sortCode'\r\n\t\t},\r\n\t\t{\r\n\t\t\ttitle: '操作',\r\n\r\n\t\t\tdataIndex: 'action',\r\n\t\t\talign: 'center',\r\n\t\t\twidth: 200\r\n\t\t}\r\n\t]\r\n\tlet visibleDrawer = ref(false)\r\n\t// 人员选择器回调\r\n\t/*const userCallBack = (value) => {\r\n\t\tconst param = {\r\n\t\t\tid: recordCacheData.value.id,\r\n\t\t\tgrantInfoList: value.map((item) => {\r\n\t\t\t\treturn item.id\r\n\t\t\t})\r\n\t\t}\r\n\t\troleApi.roleGrantUser(param).then(() => {})\r\n\t}*/\r\n\tlet drawerOk = (val) => {\r\n\t\tmessage.loading({ content: 'Loading...', key })\r\n\t\tconst param = {\r\n\t\t\tid: recordCacheData.value.id,\r\n\t\t\tgrantInfoList: val.data.members.map((item) => {\r\n\t\t\t\treturn item.id\r\n\t\t\t})\r\n\t\t}\r\n\t\troleApi.roleGrantUser(param).then(() => {\r\n\t\t\tmessage.destroy(key)\r\n\t\t})\r\n\t}\r\n\tlet drawerCancel = () => {}\r\n\tlet selectedRowKeys = ref([])\r\n\t// 列表选择配置\r\n\tconst options = {\r\n\t\talert: {\r\n\t\t\tshow: false,\r\n\t\t\tclear: () => {\r\n\t\t\t\tselectedRowKeys = ref([])\r\n\t\t\t}\r\n\t\t},\r\n\t\trowSelection: {\r\n\t\t\tonChange: (selectedRowKey, selectedRows) => {\r\n\t\t\t\tselectedRowKeys.value = selectedRowKey\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\t// 定义tableDOM\r\n\tconst table = ref()\r\n\tconst form = ref()\r\n\tconst grantResource = ref()\r\n\tconst grantPermission = ref()\r\n\tconst userselectorPlusRef = ref()\r\n\tconst searchFormRef = ref()\r\n\tlet searchFormState = reactive({})\r\n\t// handleReset方法\r\n\tconst handleReset = () => {\r\n\t\tsearchFormRef.value?.resetFields()\r\n\t}\r\n\t// operatorConfig配置\r\n\tconst operatorConfig = computed(() => [\r\n\t\t{\r\n\t\t\ttext: '新增角色',\r\n\t\t\ticon: 'fa fa-plus',\r\n\t\t\tonClick: () => form.value.onOpen()\r\n\t\t},\r\n\t\t{\r\n\t\t\ttext: '删除',\r\n\t\t\ticon: 'fa fa-trash',\r\n\t\t\tdanger: true,\r\n\t\t\tonClick: deleteBatchRole,\r\n\t\t\tdisabled: selectedRowKeys.value.length === 0\r\n\t\t}\r\n\t])\r\n\t// 默认展开的节点\r\n\tlet defaultExpandedKeys = ref([])\r\n\tconst treeData = ref([])\r\n\t// 替换treeNode 中 title,key,children\r\n\tconst treeFieldNames = { children: 'children', title: 'name', key: 'id' }\r\n\tconst cardLoading = ref(true)\r\n\t// 记录数据\r\n\tconst recordCacheData = ref({})\r\n\t// 表格查询 返回 Promise 对象\r\n\tconst loadData = (parameter) => {\r\n\t\tlet param = Object.assign(parameter, searchFormState)\r\n\t\treturn roleApi.rolePage(param).then((res) => {\r\n\t\t\treturn res\r\n\t\t})\r\n\t}\r\n\t// 加载左侧的树\r\n\torgApi.orgTree().then((res) => {\r\n\t\tcardLoading.value = false\r\n\t\tif (res !== null) {\r\n\t\t\t// 树中插入全局角色类型\r\n\t\t\tconst globalRoleType = [\r\n\t\t\t\t{\r\n\t\t\t\t\tid: 'GLOBAL',\r\n\t\t\t\t\tparentId: '-1',\r\n\t\t\t\t\tname: '全局'\r\n\t\t\t\t}\r\n\t\t\t]\r\n\t\t\ttreeData.value = globalRoleType.concat(res)\r\n\t\t\t// 默认展开2级\r\n\t\t\ttreeData.value.forEach((item) => {\r\n\t\t\t\t// 因为0的顶级\r\n\t\t\t\tif (item.parentId === '0') {\r\n\t\t\t\t\tdefaultExpandedKeys.value.push(item.id)\r\n\t\t\t\t\t// 取到下级ID\r\n\t\t\t\t\tif (item.children) {\r\n\t\t\t\t\t\titem.children.forEach((items) => {\r\n\t\t\t\t\t\t\tdefaultExpandedKeys.value.push(items.id)\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t}\r\n\t})\r\n\t// 点击树查询\r\n\tconst treeSelect = (selectedKeys) => {\r\n\t\tif (selectedKeys.length > 0) {\r\n\t\t\tif (selectedKeys[0] === 'GLOBAL') {\r\n\t\t\t\tsearchFormState.category = selectedKeys[0]\r\n\t\t\t\tdelete searchFormState.orgId\r\n\t\t\t} else {\r\n\t\t\t\tsearchFormState.orgId = selectedKeys.toString()\r\n\t\t\t\tdelete searchFormState.category\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tdelete searchFormState.category\r\n\t\t\tdelete searchFormState.orgId\r\n\t\t}\r\n\t\ttable.value.refresh(true)\r\n\t}\r\n\r\n\t// 删除\r\n\tconst removeOrg = (record) => {\r\n\t\tlet params = [\r\n\t\t\t{\r\n\t\t\t\tid: record.id\r\n\t\t\t}\r\n\t\t]\r\n\t\troleApi.roleDelete(params).then(() => {\r\n\t\t\ttable.value.refresh(true)\r\n\t\t})\r\n\t}\r\n\t// 批量删除\r\n\tconst deleteBatchRole = () => {\r\n\t\tif (selectedRowKeys.value.length < 1) {\r\n\t\t\tmessage.warning('请选择一条或多条数据')\r\n\t\t\treturn false\r\n\t\t}\r\n\t\tconst params = selectedRowKeys.value.map((m) => {\r\n\t\t\treturn {\r\n\t\t\t\tid: m\r\n\t\t\t}\r\n\t\t})\r\n\t\troleApi.roleDelete(params).then(() => {\r\n\t\t\ttable.value.clearRefreshSelected()\r\n\t\t})\r\n\t}\r\n\t// 打开用户选择器\r\n\tconst openRoleUserSelector = (record) => {\r\n\t\trecordCacheData.value = record\r\n\t\tvisibleDrawer.value = true\r\n\t\tconst param = {\r\n\t\t\tid: record.id\r\n\t\t}\r\n\t\tdrawerPicker.value.setMembersSelectedLoading(true)\r\n\t\troleApi.roleOwnUser(param).then((data) => {\r\n\t\t\tif (!!data && data.length > 0) {\r\n\t\t\t\tconst res = userSelectorPlusApi\r\n\t\t\t\t\t.getUsersByUserIds(\r\n\t\t\t\t\t\t'/sys/user/ids',\r\n\t\t\t\t\t\tdata.map((res) => {\r\n\t\t\t\t\t\t\treturn {\r\n\t\t\t\t\t\t\t\tid: res\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t)\r\n\t\t\t\t\t.then((res) => {\r\n\t\t\t\t\t\tdrawerPicker.value.setMembers(res)\r\n\t\t\t\t\t\tdrawerPicker.value.setMembersSelectedLoading(false)\r\n\t\t\t\t\t})\r\n\t\t\t} else {\r\n\t\t\t\tdrawerPicker.value.setMembers([])\r\n\t\t\t\tdrawerPicker.value.setMembersSelectedLoading(false)\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n</script>\r\n<style scoped>\r\n\t.cardImp {\r\n\t\tmargin-right: 10px;\r\n\t}\r\n\t.ant-form-item {\r\n\t\tmargin-bottom: 0 !important;\r\n\t}\r\n\t.primaryAdd {\r\n\t\tmargin-right: 10px;\r\n\t}\r\n\t.snowy-buttom-left {\r\n\t\tmargin-left: 8px;\r\n\t}\r\n</style>\r\n"],"names":["_createVNode","_unref","_createBlock","_withCtx","_createElementBlock","_Fragment","$TOOL","_createElementVNode"],"mappings":"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"}