feat: 增加工作流和知识库三级权限

- 抽取统一资源访问骨架与部门可见范围判断

- 接入工作流和知识库的 READ/MANAGE 权限校验

- 增加可见范围配置与只读态前端交互
This commit is contained in:
2026-03-29 17:25:55 +08:00
parent f49d94e2fe
commit 22ceabff96
58 changed files with 3053 additions and 85 deletions

View File

@@ -27,14 +27,26 @@ const props = defineProps({
type: String,
default: '',
},
manageable: {
type: Boolean,
default: true,
},
});
const dialogVisible = ref(false);
const pageDataRef = ref();
const handleEdit = (row: any) => {
if (!props.manageable) {
ElMessage.warning($t('documentCollection.managePermissionHint'));
return;
}
form.value = { id: row.id, content: row.content };
openDialog();
};
const handleDelete = (row: any) => {
if (!props.manageable) {
ElMessage.warning($t('documentCollection.managePermissionHint'));
return;
}
ElMessageBox.confirm($t('message.deleteAlert'), $t('message.noticeTitle'), {
confirmButtonText: $t('message.ok'),
cancelButtonText: $t('message.cancel'),
@@ -68,6 +80,10 @@ const queryParams = ref({
sortType: 'asc',
});
const save = () => {
if (!props.manageable) {
ElMessage.warning($t('documentCollection.managePermissionHint'));
return;
}
btnLoading.value = true;
api.post('/api/v1/documentChunk/update', form.value).then((res: any) => {
btnLoading.value = false;
@@ -103,7 +119,12 @@ const form = ref({
:label="$t('documentCollection.content')"
min-width="240"
/>
<ElTableColumn :label="$t('common.handle')" width="100" align="right">
<ElTableColumn
v-if="props.manageable"
:label="$t('common.handle')"
width="100"
align="right"
>
<template #default="{ row }">
<div class="flex items-center gap-3">
<ElButton link type="primary" @click="handleEdit(row)">
@@ -130,6 +151,7 @@ const form = ref({
</template>
</PageData>
<EasyFlowFormModal
v-if="props.manageable"
v-model:open="dialogVisible"
:closable="!btnLoading"
:title="$t('button.edit')"