feat: knowledge
This commit is contained in:
parent
fc6b087d75
commit
0daa4e0091
@ -53,7 +53,7 @@ import folderApi from '@/api/folder'
|
|||||||
import { MsgSuccess, MsgAlert } from '@/utils/message'
|
import { MsgSuccess, MsgAlert } from '@/utils/message'
|
||||||
import { t } from '@/locales'
|
import { t } from '@/locales'
|
||||||
import useStore from '@/stores'
|
import useStore from '@/stores'
|
||||||
const { tool } = useStore()
|
const { tool, knowledge } = useStore()
|
||||||
const emit = defineEmits(['refresh'])
|
const emit = defineEmits(['refresh'])
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
@ -124,14 +124,14 @@ const submitHandle = async () => {
|
|||||||
.then((res) => {
|
.then((res) => {
|
||||||
MsgSuccess(t('common.editSuccess'))
|
MsgSuccess(t('common.editSuccess'))
|
||||||
emit('refresh')
|
emit('refresh')
|
||||||
tool.setToolList([])
|
clearData()
|
||||||
dialogVisible.value = false
|
dialogVisible.value = false
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
folderApi.postFolder(sourceType.value, folderForm.value, loading).then((res) => {
|
folderApi.postFolder(sourceType.value, folderForm.value, loading).then((res) => {
|
||||||
MsgSuccess(t('common.createSuccess'))
|
MsgSuccess(t('common.createSuccess'))
|
||||||
emit('refresh')
|
emit('refresh')
|
||||||
tool.setToolList([])
|
clearData()
|
||||||
dialogVisible.value = false
|
dialogVisible.value = false
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@ -139,6 +139,11 @@ const submitHandle = async () => {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function clearData() {
|
||||||
|
tool.setToolList([])
|
||||||
|
knowledge.setKnowledgeList([])
|
||||||
|
}
|
||||||
|
|
||||||
defineExpose({ open })
|
defineExpose({ open })
|
||||||
</script>
|
</script>
|
||||||
<style lang="scss" scoped></style>
|
<style lang="scss" scoped></style>
|
||||||
|
|||||||
@ -6,6 +6,7 @@ import { type Ref } from 'vue'
|
|||||||
import useUserStore from './user'
|
import useUserStore from './user'
|
||||||
import useFolderStore from './folder'
|
import useFolderStore from './folder'
|
||||||
import { loadSharedApi } from '@/utils/dynamics-api/shared-api'
|
import { loadSharedApi } from '@/utils/dynamics-api/shared-api'
|
||||||
|
import knowledgeApi from '@/api/knowledge/knowledge'
|
||||||
|
|
||||||
export interface knowledgeStateTypes {
|
export interface knowledgeStateTypes {
|
||||||
baseInfo: knowledgeData | null
|
baseInfo: knowledgeData | null
|
||||||
@ -41,7 +42,7 @@ const useKnowledgeStore = defineStore('knowledge', {
|
|||||||
},
|
},
|
||||||
async asyncGetKnowledgeListPage(
|
async asyncGetKnowledgeListPage(
|
||||||
page: pageRequest,
|
page: pageRequest,
|
||||||
isShared?: boolean | undefined,
|
isShared: boolean | undefined,
|
||||||
systemType: 'systemShare' | 'workspace' | 'systemManage' = 'workspace',
|
systemType: 'systemShare' | 'workspace' | 'systemManage' = 'workspace',
|
||||||
paramsData: any,
|
paramsData: any,
|
||||||
loading?: Ref<boolean>,
|
loading?: Ref<boolean>,
|
||||||
|
|||||||
@ -90,7 +90,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
<el-dropdown-item>
|
<!-- <el-dropdown-item>
|
||||||
<div class="flex">
|
<div class="flex">
|
||||||
<el-avatar
|
<el-avatar
|
||||||
class="avatar-purple mt-4"
|
class="avatar-purple mt-4"
|
||||||
@ -109,7 +109,7 @@
|
|||||||
</el-text>
|
</el-text>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</el-dropdown-item>
|
</el-dropdown-item> -->
|
||||||
<el-dropdown-item @click="openCreateFolder" divided>
|
<el-dropdown-item @click="openCreateFolder" divided>
|
||||||
<div class="flex align-center">
|
<div class="flex align-center">
|
||||||
<AppIcon iconName="app-folder" style="font-size: 32px"></AppIcon>
|
<AppIcon iconName="app-folder" style="font-size: 32px"></AppIcon>
|
||||||
@ -283,7 +283,7 @@
|
|||||||
</ContentContainer>
|
</ContentContainer>
|
||||||
|
|
||||||
<component :is="currentCreateDialog" ref="CreateKnowledgeDialogRef" v-if="!isShared" />
|
<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" />
|
<GenerateRelatedDialog ref="GenerateRelatedDialogRef" />
|
||||||
<SyncWebDialog ref="SyncWebDialogRef" v-if="!isShared" />
|
<SyncWebDialog ref="SyncWebDialogRef" v-if="!isShared" />
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@ -1,22 +1,22 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="tool-shared">
|
<div class="tool-shared">
|
||||||
<ToolListContainer>
|
<KnowledgeListContainer>
|
||||||
<template #header>
|
<template #header>
|
||||||
<el-breadcrumb separator-icon="ArrowRight">
|
<el-breadcrumb separator-icon="ArrowRight">
|
||||||
<el-breadcrumb-item>{{ t('views.system.shared.shared_resources') }}</el-breadcrumb-item>
|
<el-breadcrumb-item>{{ t('views.system.shared.shared_resources') }}</el-breadcrumb-item>
|
||||||
<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-item>
|
||||||
</el-breadcrumb>
|
</el-breadcrumb>
|
||||||
</template>
|
</template>
|
||||||
</ToolListContainer>
|
</KnowledgeListContainer>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { onMounted, ref, reactive, computed } from 'vue'
|
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'
|
import { t } from '@/locales'
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user