|
|
@@ -24,20 +24,20 @@ import { ElMessage } from 'element-plus'
|
|
|
import { handleNoneValue } from '@/filters'
|
|
|
import { useRequest } from '@/hooks/request'
|
|
|
import { queryDetail } from '@/services/api/admin'
|
|
|
-import { useRouterStore, i18n } from '@/stores'
|
|
|
+import { getAllMenus } from '@/services/api/user'
|
|
|
+import { i18n } from '@/stores'
|
|
|
import { CellProp } from '@pc/components/base/table-details/types'
|
|
|
import AppDrawer from '@pc/components/base/drawer/index.vue'
|
|
|
import AppTableDetails from '@pc/components/base/table-details/index.vue'
|
|
|
|
|
|
const props = defineProps({
|
|
|
- record: {
|
|
|
- type: Object as PropType<Model.RoleRsp>,
|
|
|
+ roleid: {
|
|
|
+ type: Number,
|
|
|
required: true
|
|
|
}
|
|
|
})
|
|
|
|
|
|
const { global: { t } } = i18n
|
|
|
-const routerStore = useRouterStore()
|
|
|
const filteredRoutes = ref<Model.MenusRsp[]>([])
|
|
|
const show = ref(true)
|
|
|
|
|
|
@@ -53,9 +53,11 @@ const getSensitiveWords = () => {
|
|
|
return handleNoneValue(label)
|
|
|
}
|
|
|
|
|
|
+const allMenus = getAllMenus()
|
|
|
+
|
|
|
const { data, loading } = useRequest(queryDetail, {
|
|
|
params: {
|
|
|
- autoId: 1
|
|
|
+ autoId: props.roleid
|
|
|
},
|
|
|
onSuccess: (res) => {
|
|
|
const codeSet = new Set(res.data.menuids)
|
|
|
@@ -83,8 +85,10 @@ const { data, loading } = useRequest(queryDetail, {
|
|
|
}, [])
|
|
|
}
|
|
|
|
|
|
- // 递归过滤菜单
|
|
|
- filteredRoutes.value = filterMenu(routerStore.userRoutes)
|
|
|
+ allMenus.then((res) => {
|
|
|
+ // 递归过滤菜单
|
|
|
+ filteredRoutes.value = filterMenu(res.data)
|
|
|
+ })
|
|
|
},
|
|
|
onError: (err) => {
|
|
|
ElMessage.error(err)
|