Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion ui/src/views/document/index.vue
Original file line number Diff line number Diff line change
Expand Up @@ -143,7 +143,7 @@
effect="dark"
:content="$t('workflow.ExecutionRecord')"
placement="top"
v-if="knowledgeDetail?.type === 4"
v-if="knowledgeDetail?.type === 4 && permissionPrecise.doc_create(id)"
>
<el-button @click="openListAction" class="ml-12">
<AppIcon iconName="app-execution-record" class="color-secondary"></AppIcon>
Expand Down
6 changes: 5 additions & 1 deletion ui/src/views/knowledge-workflow/index.vue
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,11 @@
{{ $t('workflow.operation.exportWorkflow') }}
</el-dropdown-item>

<el-dropdown-item @click="openListAction" divided>
<el-dropdown-item
@click="openListAction"
divided
v-if="permissionPrecise.doc_create(id)"
>
<AppIcon iconName="app-execution-record" class="color-secondary"></AppIcon>
{{ $t('workflow.ExecutionRecord') }}
</el-dropdown-item>
Expand Down
98 changes: 43 additions & 55 deletions ui/src/views/system-resource-management/KnowledgeResourceIndex.vue
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,9 @@
style="width: 120px"
@change="search_type_change"
>
<el-option :label="$t('common.creator')" value="create_user"/>
<el-option :label="$t('common.name')" value="name"/>
<el-option :label="$t('common.type')" value="type"/>
<el-option :label="$t('common.creator')" value="create_user" />
<el-option :label="$t('common.name')" value="name" />
<el-option :label="$t('common.type')" value="type" />
</el-select>
<el-input
v-if="search_type === 'name'"
Expand All @@ -35,7 +35,7 @@
clearable
style="width: 220px"
>
<el-option v-for="u in user_options" :key="u.id" :value="u.id" :label="u.nick_name"/>
<el-option v-for="u in user_options" :key="u.id" :value="u.id" :label="u.nick_name" />
</el-select>
<el-select
v-else-if="search_type === 'type'"
Expand All @@ -45,7 +45,7 @@
filterable
style="width: 220px"
>
<el-option v-for="u in type_options" :key="u.id" :value="u.value" :label="u.label"/>
<el-option v-for="u in type_options" :key="u.id" :value="u.value" :label="u.label" />
</el-select>
</div>
</div>
Expand All @@ -61,29 +61,25 @@
<el-table-column width="220" :label="$t('common.name')" show-overflow-tooltip>
<template #default="{ row }">
<div class="flex align-center">
<KnowledgeIcon :type="row.type" :size="24"/>
<KnowledgeIcon :type="row.type" :size="24" />
<span class="ml-8">
{{ row.name }}
</span>
</div>
</template>
</el-table-column>

<el-table-column
prop="tool_type"
:label="$t('common.type')"
width="110"
>
<el-table-column prop="tool_type" :label="$t('common.type')" width="110">
<template #default="{ row }">
<span v-if="row.type === 1">{{
$t('views.knowledge.knowledgeType.webKnowledge')
}}</span>
$t('views.knowledge.knowledgeType.webKnowledge')
}}</span>
<span v-else-if="row.type === 2">{{
$t('views.knowledge.knowledgeType.larkKnowledge')
}}</span>
$t('views.knowledge.knowledgeType.larkKnowledge')
}}</span>
<span v-else-if="row.type === 4">{{
$t('views.knowledge.knowledgeType.workflowKnowledge')
}}</span>
$t('views.knowledge.knowledgeType.workflowKnowledge')
}}</span>
<span v-else>{{ $t('views.knowledge.knowledgeType.generalKnowledge') }}</span>
</template>
</el-table-column>
Expand All @@ -106,7 +102,7 @@
@click="workspaceVisible = !workspaceVisible"
>
<el-icon>
<Filter/>
<Filter />
</el-icon>
</el-button>
</template>
Expand All @@ -132,23 +128,23 @@
/>
</el-checkbox-group>
</el-scrollbar>
<el-empty v-else :description="$t('common.noData')"/>
<el-empty v-else :description="$t('common.noData')" />
</div>
</div>
</div>
<div class="text-right">
<el-button size="small" @click="filterWorkspaceChange('clear')"
>{{ $t('common.clear') }}
>{{ $t('common.clear') }}
</el-button>
<el-button type="primary" @click="filterWorkspaceChange" size="small"
>{{ $t('common.confirm') }}
>{{ $t('common.confirm') }}
</el-button>
</div>
</el-popover>
</div>
</template>
</el-table-column>
<el-table-column prop="nick_name" :label="$t('common.creator')" show-overflow-tooltip/>
<el-table-column prop="nick_name" :label="$t('common.creator')" show-overflow-tooltip />
<el-table-column :label="$t('views.document.table.updateTime')" width="180">
<template #default="{ row }">
{{ datetimeFormat(row.update_time) }}
Expand Down Expand Up @@ -244,19 +240,16 @@
@click.stop="exportKnowledge(row)"
v-if="permissionPrecise.export()"
>
<AppIcon iconName="app-export" class="color-secondary"></AppIcon
>
<AppIcon iconName="app-export" class="color-secondary"></AppIcon>
{{ $t('views.document.setting.export') }} Excel
</el-dropdown-item>
<el-dropdown-item
@click.stop="exportZipKnowledge(row)"
v-if="permissionPrecise.export()"
>
<AppIcon iconName="app-export" class="color-secondary"></AppIcon
>
<AppIcon iconName="app-export" class="color-secondary"></AppIcon>
{{ $t('views.document.setting.export') }} ZIP
</el-dropdown-item
>
</el-dropdown-item>
<el-dropdown-item
text
@click.stop="openResourceMappingDrawer(row)"
Expand All @@ -272,17 +265,16 @@
>
<AppIcon iconName="app-delete" class="color-secondary"></AppIcon>
{{ $t('common.delete') }}
</el-dropdown-item
>
</el-dropdown-item>
</el-dropdown-menu>
</template>
</el-dropdown>
</template>
</el-table-column>
</app-table>
</el-card>
<SyncWebDialog ref="SyncWebDialogRef"/>
<GenerateRelatedDialog ref="GenerateRelatedDialogRef" apiType="systemManage"/>
<SyncWebDialog ref="SyncWebDialogRef" />
<GenerateRelatedDialog ref="GenerateRelatedDialogRef" apiType="systemManage" />
<ResourceAuthorizationDrawer
:type="SourceTypeEnum.KNOWLEDGE"
ref="ResourceAuthorizationDrawerRef"
Expand All @@ -292,26 +284,26 @@
</template>

<script lang="ts" setup>
import {onMounted, ref, reactive, computed, watch} from 'vue'
import {useRouter, useRoute} from 'vue-router'
import { onMounted, ref, reactive, computed, watch } from 'vue'
import { useRouter, useRoute } from 'vue-router'
import KnowledgeResourceApi from '@/api/system-resource-management/knowledge'
import UserApi from '@/api/user/user'
import SyncWebDialog from '@/views/knowledge/component/SyncWebDialog.vue'
import GenerateRelatedDialog from '@/components/generate-related-dialog/index.vue'
import ResourceAuthorizationDrawer from '@/components/resource-authorization-drawer/index.vue'
import {datetimeFormat} from '@/utils/time'
import {loadPermissionApi} from '@/utils/dynamics-api/permission-api.ts'
import { datetimeFormat } from '@/utils/time'
import { loadPermissionApi } from '@/utils/dynamics-api/permission-api.ts'
import permissionMap from '@/permission'
import {MsgSuccess, MsgConfirm} from '@/utils/message'
import {SourceTypeEnum} from '@/enums/common'
import {t} from '@/locales'
import { MsgSuccess, MsgConfirm } from '@/utils/message'
import { SourceTypeEnum } from '@/enums/common'
import { t } from '@/locales'
import useStore from '@/stores'
import {hasPermission} from '@/utils/permission'
import {PermissionConst, RoleConst} from '@/utils/permission/data'
import ResourceMappingDrawer from "@/components/resource_mapping/index.vue";
import { hasPermission } from '@/utils/permission'
import { PermissionConst, RoleConst } from '@/utils/permission/data'
import ResourceMappingDrawer from '@/components/resource_mapping/index.vue'

const router = useRouter()
const {user} = useStore()
const { user } = useStore()

const permissionPrecise = computed(() => {
return permissionMap['knowledge']['systemManage']
Expand All @@ -329,13 +321,8 @@ const ManagePermission = () => {
}

const MoreFilledPermission = () => {
return (
permissionPrecise.value.sync() ||
permissionPrecise.value.generate() ||
permissionPrecise.value.edit() ||
permissionPrecise.value.export() ||
permissionPrecise.value.delete() ||
permissionPrecise.value.auth()
return (['sync', 'generate', 'edit', 'export', 'delete', 'auth', 'relate_map'] as const).some(
(key) => permissionPrecise.value[key](),
)
}

Expand Down Expand Up @@ -392,7 +379,9 @@ const exportZipKnowledge = (item: any) => {
function deleteKnowledge(row: any) {
MsgConfirm(
`${t('views.knowledge.delete.confirmTitle')}${row.name} ?`,
row.resource_count > 0 ? t('views.knowledge.delete.resourceCountMessage', row.resource_count) : '',
row.resource_count > 0
? t('views.knowledge.delete.resourceCountMessage', row.resource_count)
: '',
{
confirmButtonText: t('common.confirm'),
confirmButtonClass: 'danger',
Expand All @@ -404,8 +393,7 @@ function deleteKnowledge(row: any) {
MsgSuccess(t('common.deleteSuccess'))
})
})
.catch(() => {
})
.catch(() => {})
}

const GenerateRelatedDialogRef = ref<InstanceType<typeof GenerateRelatedDialog>>()
Expand Down Expand Up @@ -445,7 +433,7 @@ watch(
v.label.toLowerCase().includes(filterText.value.toLowerCase()),
)
},
{immediate: true},
{ immediate: true },
)

function filterWorkspaceChange(val: string) {
Expand All @@ -468,7 +456,7 @@ async function getWorkspaceList() {
}

const search_type_change = () => {
search_form.value = {name: '', create_user: ''}
search_form.value = { name: '', create_user: '' }
}

function getList() {
Expand Down