From c68e35e9da560b4fb98072acafc5b0242de20414 Mon Sep 17 00:00:00 2001 From: wangdan-fit2cloud Date: Mon, 9 Jun 2025 18:54:13 +0800 Subject: [PATCH] feat: paragraph --- ui/src/api/knowledge/knowledge.ts | 9 +- ui/src/api/knowledge/paragraph.ts | 238 +++++++++++------- ui/src/api/knowledge/problem.ts | 17 +- .../generate-related-dialog/index.vue | 14 +- ui/src/layout/components/breadcrumb/index.vue | 8 +- ui/src/locales/lang/zh-CN/views/index.ts | 6 +- ui/src/locales/lang/zh-CN/views/log.ts | 41 +++ ui/src/stores/modules/document.ts | 4 +- ui/src/stores/modules/knowledge.ts | 24 +- ui/src/stores/modules/paragraph.ts | 52 +++- ui/src/stores/modules/problem.ts | 45 +--- ui/src/views/application/index.vue | 2 +- .../component/SelectDatasetDialog.vue | 4 +- ui/src/views/hit-test/index.vue | 2 +- .../knowledge/ImportDocumentKnowledge.vue | 14 +- .../knowledge/UploadDocumentKnowledge.vue | 18 +- .../knowledge/component/ResultSuccess.vue | 18 +- ui/src/views/knowledge/component/SetRules.vue | 6 +- .../knowledge/component/UploadComponent.vue | 10 +- .../CreateWebKnowledgeDialog copy.vue | 20 +- ui/src/views/knowledge/index.vue | 4 +- .../paragraph/component/ParagraphCard.vue | 2 +- .../paragraph/component/ParagraphDialog.vue | 2 +- .../paragraph/component/ProblemComponent.vue | 38 ++- .../component/SelectDocumentDialog.vue | 4 +- ui/src/views/paragraph/index.vue | 43 ++-- .../problem/component/RelateProblemDialog.vue | 2 +- .../nodes/search-dataset-node/index.vue | 4 +- 28 files changed, 383 insertions(+), 268 deletions(-) create mode 100644 ui/src/locales/lang/zh-CN/views/log.ts diff --git a/ui/src/api/knowledge/knowledge.ts b/ui/src/api/knowledge/knowledge.ts index 13e892dee..dc7b6293e 100644 --- a/ui/src/api/knowledge/knowledge.ts +++ b/ui/src/api/knowledge/knowledge.ts @@ -43,9 +43,9 @@ const getKnowledgeList: ( * 获取全部知识库 * @param 参数 */ -// const getAllDataset: (loading?: Ref) => Promise> = (loading) => { -// return get(`${prefix}`, undefined, loading) -// } +const getAllKnowledge: (loading?: Ref) => Promise> = (loading) => { + return get(`${prefix}`, undefined, loading) +} /** * 同步知识库 @@ -260,5 +260,6 @@ export default { getLarkDocumentList, importLarkDocument, generateRelated, - delKnowledge + delKnowledge, + getAllKnowledge } diff --git a/ui/src/api/knowledge/paragraph.ts b/ui/src/api/knowledge/paragraph.ts index ba7ddec92..a75c64838 100644 --- a/ui/src/api/knowledge/paragraph.ts +++ b/ui/src/api/knowledge/paragraph.ts @@ -7,7 +7,7 @@ const prefix = '/workspace/' + localStorage.getItem('workspace_id') + '/knowledg /** * 创建段落 * @param 参数 - * dataset_id, document_id + * knowledge_id, document_id * { "content": "string", "title": "string", @@ -20,52 +20,83 @@ const prefix = '/workspace/' + localStorage.getItem('workspace_id') + '/knowledg } */ const postParagraph: ( - dataset_id: string, + knowledge_id: string, document_id: string, data: any, loading?: Ref, -) => Promise> = (dataset_id, document_id, data, loading) => { - return post(`${prefix}/${dataset_id}/document/${document_id}/paragraph`, data, undefined, loading) +) => Promise> = (knowledge_id, document_id, data, loading) => { + return post( + `${prefix}/${knowledge_id}/document/${document_id}/paragraph`, + data, + undefined, + loading, + ) } /** * 段落列表 - * @param 参数 dataset_id document_id - * page { - "current_page": "string", - "page_size": "string", - } + * @param 参数 knowledge_id document_id * param { "title": "string", "content": "string", } */ const getParagraph: ( - dataset_id: string, + knowledge_id: string, document_id: string, page: pageRequest, param: any, loading?: Ref, -) => Promise> = (dataset_id, document_id, page, param, loading) => { +) => Promise> = (knowledge_id, document_id, page, param, loading) => { return get( - `${prefix}/${dataset_id}/document/${document_id}/paragraph/${page.current_page}/${page.page_size}`, + `${prefix}/${knowledge_id}/document/${document_id}/paragraph/${page.current_page}/${page.page_size}`, param, loading, ) } +/** + * 修改段落 + * @param 参数 + * knowledge_id, document_id, paragraph_id + * { + "content": "string", + "title": "string", + "is_active": true, + "problem_list": [ + { + "content": "string" + } + ] + } + */ +const putParagraph: ( + knowledge_id: string, + document_id: string, + paragraph_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, document_id, paragraph_id, data, loading) => { + return put( + `${prefix}/${knowledge_id}/document/${document_id}/paragraph/${paragraph_id}`, + data, + undefined, + loading, + ) +} + /** * 删除段落 - * @param 参数 dataset_id, document_id, paragraph_id + * @param 参数 knowledge_id, document_id, paragraph_id */ const delParagraph: ( - dataset_id: string, + knowledge_id: string, document_id: string, paragraph_id: string, loading?: Ref, -) => Promise> = (dataset_id, document_id, paragraph_id, loading) => { +) => Promise> = (knowledge_id, document_id, paragraph_id, loading) => { return del( - `${prefix}/${dataset_id}/document/${document_id}/paragraph/${paragraph_id}`, + `${prefix}/${knowledge_id}/document/${document_id}/paragraph/${paragraph_id}`, undefined, {}, loading, @@ -73,50 +104,101 @@ const delParagraph: ( } /** - * 批量删除段落 - * @param 参数 dataset_id, document_id + * 某段落问题列表 + * @param 参数 knowledge_id,document_id,paragraph_id */ -const delMulParagraph: ( - dataset_id: string, +const getParagraphProblem: ( + knowledge_id: string, document_id: string, - data: any, - loading?: Ref, -) => Promise> = (dataset_id, document_id, data, loading) => { - return del( - `${prefix}/${dataset_id}/document/${document_id}/paragraph/_batch`, - undefined, - { id_list: data }, - loading, - ) + paragraph_id: string, +) => Promise> = (knowledge_id, document_id, paragraph_id: string) => { + return get(`${prefix}/${knowledge_id}/document/${document_id}/paragraph/${paragraph_id}/problem`) } - - /** - * 修改段落 + * 给某段落创建问题 * @param 参数 - * dataset_id, document_id, paragraph_id + * knowledge_id, document_id, paragraph_id * { - "content": "string", - "title": "string", - "is_active": true, - "problem_list": [ - { - "id": "string", - "content": "string" - } - ] + content": "string" } */ -const putParagraph: ( - dataset_id: string, +const postParagraphProblem: ( + knowledge_id: string, document_id: string, paragraph_id: string, data: any, loading?: Ref, -) => Promise> = (dataset_id, document_id, paragraph_id, data, loading) => { +) => Promise> = (knowledge_id, document_id, paragraph_id, data: any, loading) => { + return post( + `${prefix}/${knowledge_id}/document/${document_id}/paragraph/${paragraph_id}/problem`, + data, + {}, + loading, + ) +} + +/** + * 添加某段落关联问题 + * @param knowledge_id 数据集id + * @param document_id 文档id + * @param loading 加载器 + * @query data { + * paragraph_id 段落id problem_id 问题id + * } + */ +const putAssociationProblem: ( + knowledge_id: string, + document_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, document_id, data, loading) => { return put( - `${prefix}/${dataset_id}/document/${document_id}/paragraph/${paragraph_id}`, + `${prefix}/${knowledge_id}/document/${document_id}/paragraph/association`, + {}, + data, + loading, + ) +} + +/** + * 批量删除段落 + * @param 参数 knowledge_id, document_id + */ +const putMulParagraph: ( + knowledge_id: string, + document_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, document_id, data, loading) => { + return put( + `${prefix}/${knowledge_id}/document/${document_id}/paragraph/batch_delete`, + { id_list: data }, + undefined, + loading, + ) +} + +/** + * 批量关联问题 + * @param 参数 knowledge_id, document_id + * { + "paragraph_id_list": [ + "3fa85f64-5717-4562-b3fc-2c963f66afa6" + ], + "model_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", + "prompt": "string", + "document_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6" + } + */ +const putBatchGenerateRelated: ( + knowledge_id: string, + document_id: string, + data: any, + loading?: Ref, +) => Promise> = (knowledge_id, document_id, data, loading) => { + return put( + `${prefix}/${knowledge_id}/document/${document_id}/paragraph/batch_generate_related`, data, undefined, loading, @@ -125,39 +207,25 @@ const putParagraph: ( /** * 批量迁移段落 - * @param 参数 dataset_id,target_dataset_id, + * @param 参数 knowledge_id,target_knowledge_id, */ const putMigrateMulParagraph: ( - dataset_id: string, + knowledge_id: string, document_id: string, - target_dataset_id: string, + target_knowledge_id: string, target_document_id: string, data: any, loading?: Ref, ) => Promise> = ( - dataset_id, + knowledge_id, document_id, - target_dataset_id, + target_knowledge_id, target_document_id, data, loading, ) => { return put( - `${prefix}/${dataset_id}/document/${document_id}/paragraph/migrate/dataset/${target_dataset_id}/document/${target_document_id}`, - data, - undefined, - loading, - ) -} - -const batchGenerateRelated: ( - dataset_id: string, - document_id: string, - data: any, - loading?: Ref, -) => Promise> = (dataset_id, document_id, data, loading) => { - return put( - `${prefix}/${dataset_id}/document/${document_id}/paragraph/batch_generate_related`, + `${prefix}/${knowledge_id}/document/${document_id}/paragraph/migrate/dataset/${target_knowledge_id}/document/${target_document_id}`, data, undefined, loading, @@ -165,36 +233,36 @@ const batchGenerateRelated: ( } /** - * 创建问题 - * @param 参数 - * dataset_id, document_id, paragraph_id - * { - "id": "string", - content": "string" - } + * 解除某段落关联问题 + * @param 参数 dataset_id, document_id, + * @query data { + * paragraph_id 段落id problem_id 问题id + * } */ -const postProblem: ( +const putDisassociationProblem: ( dataset_id: string, document_id: string, - paragraph_id: string, data: any, loading?: Ref, -) => Promise> = (dataset_id, document_id, paragraph_id, data: any, loading) => { - return post( - `${prefix}/${dataset_id}/document/${document_id}/paragraph/${paragraph_id}/problem`, - data, +) => Promise> = (dataset_id, document_id, data, loading) => { + return put( + `${prefix}/${dataset_id}/document/${document_id}/paragraph/unassociation`, {}, + data, loading, ) } export default { - getParagraph, - delParagraph, - putParagraph, postParagraph, - delMulParagraph, + getParagraph, + putParagraph, + delParagraph, + getParagraphProblem, + postParagraphProblem, + putAssociationProblem, + putMulParagraph, + putBatchGenerateRelated, putMigrateMulParagraph, - batchGenerateRelated, - postProblem, + putDisassociationProblem } diff --git a/ui/src/api/knowledge/problem.ts b/ui/src/api/knowledge/problem.ts index f66d790d0..4fea3b419 100644 --- a/ui/src/api/knowledge/problem.ts +++ b/ui/src/api/knowledge/problem.ts @@ -1,7 +1,6 @@ import { Result } from '@/request/Result' import { get, post, del, put } from '@/request/index' import type { Ref } from 'vue' -import type { KeyValue } from '@/api/type/common' import type { pageRequest } from '@/api/type/common' const prefix = '/workspace/' + localStorage.getItem('workspace_id') + '/knowledge' @@ -22,13 +21,9 @@ const postProblems: ( /** * 问题分页列表 * @param 参数 knowledge_id, - * page { - "current_page": "string", - "page_size": "string", - } * query { - "content": "string", - } + "content": "string", + } */ const getProblems: ( @@ -106,7 +101,7 @@ const putMulAssociationProblem: ( * 批量删除问题 * @param 参数 knowledge_id, * data: array[string] -*/ + */ const putMulProblem: ( knowledge_id: string, data: any, @@ -116,11 +111,11 @@ const putMulProblem: ( } export default { - getProblems, postProblems, - delProblems, + getProblems, putProblems, + delProblems, getDetailProblems, - putMulProblem, putMulAssociationProblem, + putMulProblem, } diff --git a/ui/src/components/generate-related-dialog/index.vue b/ui/src/components/generate-related-dialog/index.vue index 0b9c1bba8..6492a7e90 100644 --- a/ui/src/components/generate-related-dialog/index.vue +++ b/ui/src/components/generate-related-dialog/index.vue @@ -51,7 +51,7 @@ /> @@ -107,7 +107,7 @@ const stateMap = { error: ['0', '1', '3', '4', '5', 'n'] } const FormRef = ref() -const datasetId = ref() +const knowledgeId = ref() const userId = user.userInfo?.id as string const form = ref(prompt.get(userId)) const rules = reactive({ @@ -135,7 +135,7 @@ watch(dialogVisible, (bool) => { }) const open = (ids: string[], type: string, _datasetId?: string) => { - datasetId.value = _datasetId + knowledgeId.value = _datasetId getModel() idList.value = ids apiType.value = type @@ -155,7 +155,7 @@ const submitHandle = async (formEl: FormInstance) => { ...form.value, paragraph_id_list: idList.value } - paragraphApi.batchGenerateRelated(id, documentId, data, loading).then(() => { + paragraphApi.putBatchGenerateRelated(id, documentId, data, loading).then(() => { MsgSuccess(t('views.document.generateQuestion.successMessage')) emit('refresh') dialogVisible.value = false @@ -171,12 +171,12 @@ const submitHandle = async (formEl: FormInstance) => { emit('refresh') dialogVisible.value = false }) - } else if (apiType.value === 'dataset') { + } else if (apiType.value === 'knowledge') { const data = { ...form.value, state_list: stateMap[state.value] } - knowledgeApi.generateRelated(id ? id : datasetId.value, data, loading).then(() => { + knowledgeApi.generateRelated(id ? id : knowledgeId.value, data, loading).then(() => { MsgSuccess(t('views.document.generateQuestion.successMessage')) dialogVisible.value = false }) @@ -188,7 +188,7 @@ const submitHandle = async (formEl: FormInstance) => { function getModel() { loading.value = true knowledgeApi - .getKnowledgeModel(id ? id : datasetId.value) + .getKnowledgeModel(id ? id : knowledgeId.value) .then((res: any) => { modelOptions.value = groupBy(res?.data, 'provider') loading.value = false diff --git a/ui/src/layout/components/breadcrumb/index.vue b/ui/src/layout/components/breadcrumb/index.vue index e872a05c5..9c0ef4a8a 100644 --- a/ui/src/layout/components/breadcrumb/index.vue +++ b/ui/src/layout/components/breadcrumb/index.vue @@ -142,7 +142,7 @@ import { isWorkFlow } from '@/utils/application' import { isAppIcon } from '@/utils/common' import useStore from '@/stores' -const { common, dataset, application } = useStore() +const { common, knowledge, application } = useStore() const route = useRoute() const router = useRouter() const { @@ -169,7 +169,7 @@ const isApplication = computed(() => { return activeMenu.includes('application') }) const isDataset = computed(() => { - return activeMenu.includes('dataset') + return activeMenu.includes('knowledge') }) function openCreateDialog() { @@ -204,8 +204,8 @@ function changeMenu(id: string) { function getDataset() { loading.value = true - dataset - .asyncGetAllDataset() + knowledge + .asyncGetAllKnowledge() .then((res: any) => { list.value = res.data common.saveBreadcrumb(list.value) diff --git a/ui/src/locales/lang/zh-CN/views/index.ts b/ui/src/locales/lang/zh-CN/views/index.ts index 49e68cf92..7f3b36208 100644 --- a/ui/src/locales/lang/zh-CN/views/index.ts +++ b/ui/src/locales/lang/zh-CN/views/index.ts @@ -11,10 +11,9 @@ import problem from './problem' import applicationOverview from './application-overview' import applicationWorkflow from './application-workflow' import paragraph from './paragraph' +import log from './log' // import notFound from './404' -// import log from './log' - // import operateLog from './operate-log' export default { login, @@ -30,9 +29,8 @@ export default { applicationOverview, applicationWorkflow, paragraph, + log, // notFound, - // log, - // operateLog } diff --git a/ui/src/locales/lang/zh-CN/views/log.ts b/ui/src/locales/lang/zh-CN/views/log.ts new file mode 100644 index 000000000..c866a9551 --- /dev/null +++ b/ui/src/locales/lang/zh-CN/views/log.ts @@ -0,0 +1,41 @@ +export default { + title: '对话日志', + delete: { + confirmTitle: '是否删除问题:', + confirmMessage1: '删除问题关联的', + confirmMessage2: '个分段会被取消关联,请谨慎操作。' + }, + buttons: { + clearStrategy: '清除策略', + prev: '上一条', + next: '下一条' + }, + table: { + abstract: '摘要', + chat_record_count: '对话提问数', + user: '用户', + feedback: { + label: '用户反馈', + star: '赞同', + trample: '反对' + }, + mark: '改进标注', + recenTimes: '最近对话时间' + }, + addToDataset: '添加至知识库', + daysText: '天之前的对话记录', + selectDataset: '选择知识库', + selectDatasetPlaceholder: '请选择知识库', + saveToDocument: '保存至文档', + documentPlaceholder: '请选择文档', + editContent: '修改内容', + editMark: '修改标注', + form: { + content: { + placeholder: '请输入内容' + }, + title: { + placeholder: '请给当前内容设置一个标题,以便管理查看' + } + } +} diff --git a/ui/src/stores/modules/document.ts b/ui/src/stores/modules/document.ts index 6d029cd7c..a08cb8c44 100644 --- a/ui/src/stores/modules/document.ts +++ b/ui/src/stores/modules/document.ts @@ -17,10 +17,10 @@ const useDocumentStore = defineStore('document', { }) }) }, - async asyncPostDocument(datasetId: string, data: any, loading?: Ref) { + async asyncPostDocument(knowledgeId: string, data: any, loading?: Ref) { return new Promise((resolve, reject) => { documentApi - .postDocument(datasetId, data, loading) + .postDocument(knowledgeId, data, loading) .then((data) => { resolve(data) }) diff --git a/ui/src/stores/modules/knowledge.ts b/ui/src/stores/modules/knowledge.ts index 0698d2c34..b0a63c4ce 100644 --- a/ui/src/stores/modules/knowledge.ts +++ b/ui/src/stores/modules/knowledge.ts @@ -31,18 +31,18 @@ const useKnowledgeStore = defineStore('knowledge', { saveDocumentsFile(file: UploadUserFile[]) { this.documentsFiles = file }, - // async asyncGetAllDataset(loading?: Ref) { - // return new Promise((resolve, reject) => { - // knowledgeApi - // .getAllDataset(loading) - // .then((data) => { - // resolve(data) - // }) - // .catch((error) => { - // reject(error) - // }) - // }) - // }, + async asyncGetAllKnowledge(loading?: Ref) { + return new Promise((resolve, reject) => { + knowledgeApi + .getAllKnowledge(loading) + .then((data) => { + resolve(data) + }) + .catch((error) => { + reject(error) + }) + }) + }, async asyncGetKnowledgeDetail( knowledge_id: string, loading?: Ref, diff --git a/ui/src/stores/modules/paragraph.ts b/ui/src/stores/modules/paragraph.ts index 0149e4280..840b42f9b 100644 --- a/ui/src/stores/modules/paragraph.ts +++ b/ui/src/stores/modules/paragraph.ts @@ -6,7 +6,7 @@ const useParagraphStore = defineStore('paragraph', { state: () => ({}), actions: { async asyncPutParagraph( - datasetId: string, + knowledgeId: string, documentId: string, paragraphId: string, data: any, @@ -14,7 +14,7 @@ const useParagraphStore = defineStore('paragraph', { ) { return new Promise((resolve, reject) => { paragraphApi - .putParagraph(datasetId, documentId, paragraphId, data, loading) + .putParagraph(knowledgeId, documentId, paragraphId, data, loading) .then((data) => { resolve(data) }) @@ -25,14 +25,58 @@ const useParagraphStore = defineStore('paragraph', { }, async asyncDelParagraph( - datasetId: string, + knowledgeId: string, documentId: string, paragraphId: string, loading?: Ref, ) { return new Promise((resolve, reject) => { paragraphApi - .delParagraph(datasetId, documentId, paragraphId, loading) + .delParagraph(knowledgeId, documentId, paragraphId, loading) + .then((data) => { + resolve(data) + }) + .catch((error) => { + reject(error) + }) + }) + }, + async asyncDisassociationProblem( + knowledgeId: string, + documentId: string, + paragraphId: string, + problemId: string, + loading?: Ref, + ) { + return new Promise((resolve, reject) => { + const obj = { + paragraphId, + problemId, + } + paragraphApi + .putDisassociationProblem(knowledgeId, documentId, obj, loading) + .then((data) => { + resolve(data) + }) + .catch((error) => { + reject(error) + }) + }) + }, + async asyncAssociationProblem( + knowledgeId: string, + documentId: string, + paragraphId: string, + problemId: string, + loading?: Ref, + ) { + return new Promise((resolve, reject) => { + const obj = { + paragraphId, + problemId, + } + paragraphApi + .putAssociationProblem(knowledgeId, documentId, obj, loading) .then((data) => { resolve(data) }) diff --git a/ui/src/stores/modules/problem.ts b/ui/src/stores/modules/problem.ts index 1168dc56c..ff7413711 100644 --- a/ui/src/stores/modules/problem.ts +++ b/ui/src/stores/modules/problem.ts @@ -1,16 +1,15 @@ import { defineStore } from 'pinia' import { type Ref } from 'vue' import problemApi from '@/api/knowledge/problem' -import paragraphApi from '@/api/knowledge/paragraph' import type { pageRequest } from '@/api/type/common' const useProblemStore = defineStore('problem', { state: () => ({}), actions: { - async asyncPostProblem(datasetId: string, data: any, loading?: Ref) { + async asyncPostProblem(knowledgeId: string, data: any, loading?: Ref) { return new Promise((resolve, reject) => { problemApi - .postProblems(datasetId, data, loading) + .postProblems(knowledgeId, data, loading) .then((data) => { resolve(data) }) @@ -20,50 +19,14 @@ const useProblemStore = defineStore('problem', { }) }, async asyncGetProblem( - datasetId: string, + knowledgeId: string, page: pageRequest, param: any, loading?: Ref, ) { return new Promise((resolve, reject) => { problemApi - .getProblems(datasetId, page, param, loading) - .then((data) => { - resolve(data) - }) - .catch((error) => { - reject(error) - }) - }) - }, - async asyncDisassociationProblem( - datasetId: string, - documentId: string, - paragraphId: string, - problemId: string, - loading?: Ref, - ) { - return new Promise((resolve, reject) => { - paragraphApi - .disassociationProblem(datasetId, documentId, paragraphId, problemId, loading) - .then((data) => { - resolve(data) - }) - .catch((error) => { - reject(error) - }) - }) - }, - async asyncAssociationProblem( - datasetId: string, - documentId: string, - paragraphId: string, - problemId: string, - loading?: Ref, - ) { - return new Promise((resolve, reject) => { - paragraphApi - .associationProblem(datasetId, documentId, paragraphId, problemId, loading) + .getProblems(knowledgeId, page, param, loading) .then((data) => { resolve(data) }) diff --git a/ui/src/views/application/index.vue b/ui/src/views/application/index.vue index 22d42ff92..f5ad016bd 100644 --- a/ui/src/views/application/index.vue +++ b/ui/src/views/application/index.vue @@ -216,7 +216,7 @@ > {{ $t('common.setting') }} diff --git a/ui/src/views/document/component/SelectDatasetDialog.vue b/ui/src/views/document/component/SelectDatasetDialog.vue index 9a6f2ec13..081ca3673 100644 --- a/ui/src/views/document/component/SelectDatasetDialog.vue +++ b/ui/src/views/document/component/SelectDatasetDialog.vue @@ -77,7 +77,7 @@ import { useRoute } from 'vue-router' import documentApi from '@/api/knowledge/document' import useStore from '@/stores' -const { dataset } = useStore() +const { knowledge } = useStore() const route = useRoute() const { params: { id } // id为datasetID @@ -115,7 +115,7 @@ const submitHandle = () => { } function getDataset() { - dataset.asyncGetAllDataset(loading).then((res: any) => { + knowledge.asyncGetAllKnowledge(loading).then((res: any) => { datasetList.value = res.data?.filter((v: any) => v.id !== id) }) } diff --git a/ui/src/views/hit-test/index.vue b/ui/src/views/hit-test/index.vue index 38d260e13..dc4599286 100644 --- a/ui/src/views/hit-test/index.vue +++ b/ui/src/views/hit-test/index.vue @@ -253,7 +253,7 @@ const isApplication = computed(() => { return activeMenu.includes('application') }) const isDataset = computed(() => { - return activeMenu.includes('dataset') + return activeMenu.includes('knowledge') }) function changeHandle(val: string) { diff --git a/ui/src/views/knowledge/ImportDocumentKnowledge.vue b/ui/src/views/knowledge/ImportDocumentKnowledge.vue index d3ab2ac5f..4cdcef05e 100644 --- a/ui/src/views/knowledge/ImportDocumentKnowledge.vue +++ b/ui/src/views/knowledge/ImportDocumentKnowledge.vue @@ -140,14 +140,14 @@ import { MsgConfirm, MsgSuccess, MsgWarning } from '@/utils/message' import { getImgUrl } from '@/utils/utils' import { t } from '@/locales' import type Node from 'element-plus/es/components/tree/src/model/node' -import dataset from '@/api/dataset' +import knowledgeApi from '@/api/knowledge/knowledge' const router = useRouter() const route = useRoute() const { - query: { id, folder_token } // id为datasetID,有id的是上传文档 folder_token为飞书文件夹token + query: { id, folder_token } // id为knowledgeID,有id的是上传文档 folder_token为飞书文件夹token } = route -const datasetId = id as string +const knowledgeId = id as string const folderToken = folder_token as string const loading = ref(false) @@ -183,8 +183,8 @@ const props = { const loadNode = (node: Node, resolve: (nodeData: Tree[]) => void) => { const token = node.level === 0 ? folderToken : node.data.token // 根节点使用 folder_token,其他节点使用 node.data.token - dataset - .getLarkDocumentList(datasetId, token, {}, loading) + knowledgeApi + .getLarkDocumentList(knowledgeId, token, {}, loading) .then((res: any) => { const nodes = res.data.files as Tree[] resolve(nodes) @@ -234,8 +234,8 @@ function submit() { loading.value = false return } - dataset - .importLarkDocument(datasetId, newList, loading) + knowledge + .importLarkDocument(knowledgeId, newList, loading) .then((res) => { MsgSuccess(t('views.document.tip.importMessage')) disabled.value = false diff --git a/ui/src/views/knowledge/UploadDocumentKnowledge.vue b/ui/src/views/knowledge/UploadDocumentKnowledge.vue index 32cb2c3fc..9f773d7ea 100644 --- a/ui/src/views/knowledge/UploadDocumentKnowledge.vue +++ b/ui/src/views/knowledge/UploadDocumentKnowledge.vue @@ -61,14 +61,14 @@ import documentApi from '@/api/document' import { MsgConfirm, MsgSuccess } from '@/utils/message' import { t } from '@/locales' import useStore from '@/stores' -const { dataset, document } = useStore() -const documentsFiles = computed(() => dataset.documentsFiles) -const documentsType = computed(() => dataset.documentsType) +const { knowledge, document } = useStore() +const documentsFiles = computed(() => knowledge.documentsFiles) +const documentsType = computed(() => knowledge.documentsType) const router = useRouter() const route = useRoute() const { - query: { id } // id为datasetID,有id的是上传文档 + query: { id } // id为knowledgeID,有id的是上传文档 } = route const SetRulesRef = ref() @@ -93,7 +93,7 @@ async function next() { documentApi.postQADocument(id as string, fd, loading).then((res) => { MsgSuccess(t('common.submitSuccess')) clearStore() - router.push({ path: `/dataset/${id}/document` }) + router.push({ path: `/knowledge/${id}/document` }) }) } } else if (documentsType.value === 'table') { @@ -108,7 +108,7 @@ async function next() { documentApi.postTableDocument(id as string, fd, loading).then((res) => { MsgSuccess(t('common.submitSuccess')) clearStore() - router.push({ path: `/dataset/${id}/document` }) + router.push({ path: `/knowledge/${id}/document` }) }) } } else { @@ -123,8 +123,8 @@ const prev = () => { } function clearStore() { - dataset.saveDocumentsFile([]) - dataset.saveDocumentsType('') + knowledge.saveDocumentsFile([]) + knowledge.saveDocumentsType('') } function submit() { loading.value = true @@ -148,7 +148,7 @@ function submit() { .then(() => { MsgSuccess(t('common.submitSuccess')) clearStore() - router.push({ path: `/dataset/${id}/document` }) + router.push({ path: `/knowledge/${id}/document` }) }) .catch(() => { loading.value = false diff --git a/ui/src/views/knowledge/component/ResultSuccess.vue b/ui/src/views/knowledge/component/ResultSuccess.vue index e61b101de..73de7d359 100644 --- a/ui/src/views/knowledge/component/ResultSuccess.vue +++ b/ui/src/views/knowledge/component/ResultSuccess.vue @@ -1,6 +1,6 @@ - + diff --git a/ui/src/views/paragraph/component/SelectDocumentDialog.vue b/ui/src/views/paragraph/component/SelectDocumentDialog.vue index 06568b6d0..8d8c408d5 100644 --- a/ui/src/views/paragraph/component/SelectDocumentDialog.vue +++ b/ui/src/views/paragraph/component/SelectDocumentDialog.vue @@ -89,7 +89,7 @@ import type { FormInstance, FormRules } from 'element-plus' import paragraphApi from '@/api/knowledge/paragraph' import useStore from '@/stores' import { t } from '@/locales' -const { dataset, document } = useStore() +const { knowledge, document } = useStore() const route = useRoute() const { @@ -144,7 +144,7 @@ function getDocument(id: string) { } function getDataset() { - dataset.asyncGetAllDataset(loading).then((res: any) => { + knowledge.asyncGetAllKnowledge(loading).then((res: any) => { datasetList.value = res.data }) } diff --git a/ui/src/views/paragraph/index.vue b/ui/src/views/paragraph/index.vue index d84925936..f9825fe51 100644 --- a/ui/src/views/paragraph/index.vue +++ b/ui/src/views/paragraph/index.vue @@ -76,27 +76,36 @@ - + + + @@ -206,7 +215,7 @@ function deleteMulParagraph() { ) .then(() => { paragraphApi - .delMulParagraph(id, documentId, multipleSelection.value, changeStateloading) + .putMulParagraph(id, documentId, multipleSelection.value, changeStateloading) .then(() => { paragraphDetail.value = paragraphDetail.value.filter( (v) => !multipleSelection.value.includes(v.id), diff --git a/ui/src/views/problem/component/RelateProblemDialog.vue b/ui/src/views/problem/component/RelateProblemDialog.vue index 6cd6c4f9b..ef1f99c9e 100644 --- a/ui/src/views/problem/component/RelateProblemDialog.vue +++ b/ui/src/views/problem/component/RelateProblemDialog.vue @@ -120,7 +120,7 @@ const { problem, document } = useStore() const route = useRoute() const { - params: { id }, // datasetId + params: { id }, // knowledgeId } = route as any const emit = defineEmits(['refresh']) diff --git a/ui/src/workflow/nodes/search-dataset-node/index.vue b/ui/src/workflow/nodes/search-dataset-node/index.vue index c69c19b21..3a7a1b6cb 100644 --- a/ui/src/workflow/nodes/search-dataset-node/index.vue +++ b/ui/src/workflow/nodes/search-dataset-node/index.vue @@ -141,7 +141,7 @@ import { ref, computed, onMounted } from 'vue' import { relatedObject } from '@/utils/utils' import { SearchMode } from '@/enums/application' import useStore from '@/stores' -const { dataset, application, user } = useStore() +const { knowledge, application, user } = useStore() const { params: { id } } = app.config.globalProperties.$route as any @@ -208,7 +208,7 @@ function getDataset() { datasetList.value = res.data }) } else { - dataset.asyncGetAllDataset(datasetLoading).then((res: any) => { + knowledge.asyncGetAllKnowledge(datasetLoading).then((res: any) => { datasetList.value = res.data?.filter((v: any) => v.user_id === user.userInfo?.id) }) }