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
5 changes: 5 additions & 0 deletions ui/src/api/API_README.md
Original file line number Diff line number Diff line change
Expand Up @@ -755,6 +755,11 @@ Web 知识库详情及更新响应的顶层 `doc_strategy` 使用 `DocumentStrat

`setting/scheduled-sync/` 页面调用设置查询、保存和日志分页接口;保存返回的规范化配置用于回填。

四个知识库范围分别在自己的 `sync.ts` 中维护接口,由 `views/knowledge-detail/context.ts`
按资源范围装配为 `resourceApi.sync`。Workspace、System 资源管理、System 共享资源提供查询、保存及日志分页;
Workspace 共享版本只提供设置查询和日志分页。定时同步设置页通过 `useKnowledgeSettingContext()`
取得可管理范围的 API,不回退其他范围,也不为只读范围补写接口。

`workspace/knowledge/sync.ts` 提供 `getKnowledgeSyncSetting`、`putKnowledgeSyncSetting`,
分别通过 GET、PUT `/<knowledgeId>/sync_setting` 查询和保存 Web、飞书及工作流知识库同步设置。
`KnowledgeSyncSetting` 定义在 `types/knowledge-sync.ts`,包含 `enabled`、`schedule_type`、
Expand Down
16 changes: 16 additions & 0 deletions ui/src/api/admin/system/resource-management/knowledge/sync.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import { get, put } from '@/api/admin/core/request'
import type { ParamsPage, ResponsePage } from '@/api/admin/core/types'
import type { KnowledgeSyncLog, KnowledgeSyncSetting } from '@/api/types'
const getPrefix = (knowledgeId: string) => `/system/resource/knowledge/${knowledgeId}`
/** 获取知识库定时同步设置。 */
const getKnowledgeSyncSetting = (knowledgeId: string) => get<KnowledgeSyncSetting>(`${getPrefix(knowledgeId)}/sync_setting`)

/** 保存知识库定时同步设置。 */
const putKnowledgeSyncSetting = (knowledgeId: string, setting: KnowledgeSyncSetting) =>
put<KnowledgeSyncSetting, KnowledgeSyncSetting>(`${getPrefix(knowledgeId)}/sync_setting`, setting)

/** 获取知识库同步日志分页。 */
const getKnowledgeSyncLogPage = (knowledgeId: string, page: ParamsPage) =>
get<ResponsePage<KnowledgeSyncLog>>(`${getPrefix(knowledgeId)}/sync_log/${page.currentPage}/${page.pageSize}`)

export default { getKnowledgeSyncSetting, putKnowledgeSyncSetting, getKnowledgeSyncLogPage }
18 changes: 18 additions & 0 deletions ui/src/api/admin/system/shared-resources/knowledge/sync.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import { get, put } from '@/api/admin/core/request'
import type { ParamsPage, ResponsePage } from '@/api/admin/core/types'
import type { KnowledgeSyncLog, KnowledgeSyncSetting } from '@/api/types'

const getPrefix = (knowledgeId: string) => `/system/shared/knowledge/${knowledgeId}`

/** 获取知识库定时同步设置。 */
const getKnowledgeSyncSetting = (knowledgeId: string) => get<KnowledgeSyncSetting>(`${getPrefix(knowledgeId)}/sync_setting`)

/** 保存知识库定时同步设置。 */
const putKnowledgeSyncSetting = (knowledgeId: string, setting: KnowledgeSyncSetting) =>
put<KnowledgeSyncSetting, KnowledgeSyncSetting>(`${getPrefix(knowledgeId)}/sync_setting`, setting)

/** 获取知识库同步日志分页。 */
const getKnowledgeSyncLogPage = (knowledgeId: string, page: ParamsPage) =>
get<ResponsePage<KnowledgeSyncLog>>(`${getPrefix(knowledgeId)}/sync_log/${page.currentPage}/${page.pageSize}`)

export default { getKnowledgeSyncSetting, putKnowledgeSyncSetting, getKnowledgeSyncLogPage }
15 changes: 15 additions & 0 deletions ui/src/api/admin/workspace/shared/knowledge/sync.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
import { get } from '../../../core/request'
import type { ParamsPage, ResponsePage } from '../../../core/types'
import type { KnowledgeSyncLog, KnowledgeSyncSetting } from '@/api/types'
import { getWorkspaceId } from '@/utils/resource-context'

const getPrefix = (knowledgeId: string) => `/system/shared/workspace/${getWorkspaceId()}/knowledge/${knowledgeId}`

/** 获取知识库定时同步设置。 */
const getKnowledgeSyncSetting = (knowledgeId: string) => get<KnowledgeSyncSetting>(`${getPrefix(knowledgeId)}/sync_setting`)

/** 获取知识库同步日志分页。 */
const getKnowledgeSyncLogPage = (knowledgeId: string, page: ParamsPage) =>
get<ResponsePage<KnowledgeSyncLog>>(`${getPrefix(knowledgeId)}/sync_log/${page.currentPage}/${page.pageSize}`)

export default { getKnowledgeSyncSetting, getKnowledgeSyncLogPage }
Loading