109 lines
2.5 KiB
TypeScript
109 lines
2.5 KiB
TypeScript
import { Result } from '@/request/Result'
|
||
import { get, post, del, put } from '@/request/index'
|
||
import { type Ref } from 'vue'
|
||
import type { pageRequest } from '@/api/type/common'
|
||
const prefix = '/workspace'
|
||
|
||
/**
|
||
* 获得知识库文件夹列表
|
||
* @params 参数
|
||
* {folder_id: string,
|
||
* name: string,
|
||
* user_id: string,
|
||
* desc: string,}
|
||
*/
|
||
const getKnowledgeByFolder: (
|
||
wordspace_id: string,
|
||
data?: any,
|
||
loading?: Ref<boolean>,
|
||
) => Promise<Result<Array<any>>> = (wordspace_id, data, loading) => {
|
||
return get(`${prefix}/${wordspace_id}/knowledge`, data, loading)
|
||
}
|
||
|
||
/**
|
||
* 知识库分页列表
|
||
* @param 参数
|
||
* param {
|
||
"folder_id": "string",
|
||
"name": "string",
|
||
"tool_type": "string",
|
||
desc: string,
|
||
}
|
||
*/
|
||
const getKnowledgeList: (
|
||
wordspace_id: string,
|
||
page: pageRequest,
|
||
param?: any,
|
||
loading?: Ref<boolean>,
|
||
) => Promise<Result<any>> = (wordspace_id, page, param, loading) => {
|
||
return get(
|
||
`${prefix}/${wordspace_id}/knowledge/${page.current_page}/${page.page_size}`,
|
||
param,
|
||
loading,
|
||
)
|
||
}
|
||
|
||
/**
|
||
* 获取全部知识库
|
||
* @param 参数
|
||
*/
|
||
// const getAllDataset: (loading?: Ref<boolean>) => Promise<Result<any[]>> = (loading) => {
|
||
// return get(`${prefix}`, undefined, loading)
|
||
// }
|
||
|
||
/**
|
||
* 同步知识库
|
||
* @param 参数 knowledge_id
|
||
* @query 参数 sync_type // 同步类型->replace:替换同步,complete:完整同步
|
||
*/
|
||
const putSyncWebKnowledge: (
|
||
wordspace_id: string,
|
||
knowledge_id: string,
|
||
sync_type: string,
|
||
loading?: Ref<boolean>,
|
||
) => Promise<Result<any>> = (wordspace_id, knowledge_id, sync_type, loading) => {
|
||
return put(
|
||
`${prefix}/${wordspace_id}/knowledge/${knowledge_id}/sync`,
|
||
undefined,
|
||
{ sync_type },
|
||
loading,
|
||
)
|
||
}
|
||
|
||
/**
|
||
* 向量化知识库
|
||
* @param 参数 knowledge_id
|
||
*/
|
||
const putReEmbeddingDataset: (
|
||
wordspace_id: string,
|
||
knowledge_id: string,
|
||
loading?: Ref<boolean>,
|
||
) => Promise<Result<any>> = (wordspace_id, knowledge_id, loading) => {
|
||
return put(
|
||
`${prefix}/${wordspace_id}/knowledge/${knowledge_id}/embedding`,
|
||
undefined,
|
||
undefined,
|
||
loading,
|
||
)
|
||
}
|
||
|
||
/**
|
||
* 知识库详情
|
||
* @param 参数 knowledge_id
|
||
*/
|
||
const getKnowledgeDetail: (
|
||
wordspace_id: string,
|
||
knowledge_id: string,
|
||
loading?: Ref<boolean>,
|
||
) => Promise<Result<any>> = (wordspace_id, knowledge_id, loading) => {
|
||
return get(`${prefix}/${wordspace_id}/knowledge/${knowledge_id}`, undefined, loading)
|
||
}
|
||
|
||
export default {
|
||
getKnowledgeByFolder,
|
||
getKnowledgeList,
|
||
putReEmbeddingDataset,
|
||
putSyncWebKnowledge,
|
||
getKnowledgeDetail,
|
||
}
|