feat: knowledge
Some checks are pending
sync2gitee / repo-sync (push) Waiting to run

This commit is contained in:
wangdan-fit2cloud 2025-06-24 18:52:21 +08:00
parent fc6b087d75
commit 0daa4e0091
4 changed files with 17 additions and 11 deletions

View File

@ -53,7 +53,7 @@ import folderApi from '@/api/folder'
import { MsgSuccess, MsgAlert } from '@/utils/message'
import { t } from '@/locales'
import useStore from '@/stores'
const { tool } = useStore()
const { tool, knowledge } = useStore()
const emit = defineEmits(['refresh'])
const props = defineProps({
@ -124,14 +124,14 @@ const submitHandle = async () => {
.then((res) => {
MsgSuccess(t('common.editSuccess'))
emit('refresh')
tool.setToolList([])
clearData()
dialogVisible.value = false
})
} else {
folderApi.postFolder(sourceType.value, folderForm.value, loading).then((res) => {
MsgSuccess(t('common.createSuccess'))
emit('refresh')
tool.setToolList([])
clearData()
dialogVisible.value = false
})
}
@ -139,6 +139,11 @@ const submitHandle = async () => {
})
}
function clearData() {
tool.setToolList([])
knowledge.setKnowledgeList([])
}
defineExpose({ open })
</script>
<style lang="scss" scoped></style>

View File

@ -6,6 +6,7 @@ import { type Ref } from 'vue'
import useUserStore from './user'
import useFolderStore from './folder'
import { loadSharedApi } from '@/utils/dynamics-api/shared-api'
import knowledgeApi from '@/api/knowledge/knowledge'
export interface knowledgeStateTypes {
baseInfo: knowledgeData | null
@ -41,7 +42,7 @@ const useKnowledgeStore = defineStore('knowledge', {
},
async asyncGetKnowledgeListPage(
page: pageRequest,
isShared?: boolean | undefined,
isShared: boolean | undefined,
systemType: 'systemShare' | 'workspace' | 'systemManage' = 'workspace',
paramsData: any,
loading?: Ref<boolean>,

View File

@ -90,7 +90,7 @@
</div>
</div>
</el-dropdown-item>
<el-dropdown-item>
<!-- <el-dropdown-item>
<div class="flex">
<el-avatar
class="avatar-purple mt-4"
@ -109,7 +109,7 @@
</el-text>
</div>
</div>
</el-dropdown-item>
</el-dropdown-item> -->
<el-dropdown-item @click="openCreateFolder" divided>
<div class="flex align-center">
<AppIcon iconName="app-folder" style="font-size: 32px"></AppIcon>
@ -283,7 +283,7 @@
</ContentContainer>
<component :is="currentCreateDialog" ref="CreateKnowledgeDialogRef" v-if="!isShared" />
<CreateFolderDialog ref="CreateFolderDialogRef" @refresh="refreshFolder" v-if="!isShared" />
<CreateFolderDialog ref="CreateFolderDialogRef" v-if="!isShared" />
<GenerateRelatedDialog ref="GenerateRelatedDialogRef" />
<SyncWebDialog ref="SyncWebDialogRef" v-if="!isShared" />
</template>

View File

@ -1,22 +1,22 @@
<template>
<div class="tool-shared">
<ToolListContainer>
<KnowledgeListContainer>
<template #header>
<el-breadcrumb separator-icon="ArrowRight">
<el-breadcrumb-item>{{ t('views.system.shared.shared_resources') }}</el-breadcrumb-item>
<el-breadcrumb-item>
<h5 class="ml-4 color-text-primary">{{ t('views.tool.title') }}</h5>
<h5 class="ml-4 color-text-primary">{{ t('views.knowledge.title') }}</h5>
</el-breadcrumb-item>
</el-breadcrumb>
</template>
</ToolListContainer>
</KnowledgeListContainer>
</div>
</template>
<script lang="ts" setup>
import { onMounted, ref, reactive, computed } from 'vue'
import ToolListContainer from '@/views/tool/component/ToolListContainer.vue'
import KnowledgeListContainer from '@/views/knowledge/component/KnowledgeListContainer.vue'
import { t } from '@/locales'