knowledge.ts 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. import { bluebookAiAgent } from "@/lib/api/index";
  2. import Taro from "@tarojs/taro";
  3. import { getHeaders } from "@/lib/module/axios.js";
  4. import JsonChunkParser from "@/utils/jsonChunkParser";
  5. import request from "@/lib/module/axios.js";
  6. import type { TKnowledgeListItem, TQAListItem } from "@/types/knowledge";
  7. //我的知识库--列表
  8. export type TKnowledgeListResponse = {
  9. "data": TKnowledgeListItem[][],
  10. "nextId": string,
  11. "totalCount": number
  12. }
  13. export const getKnowledgeList = ({startId, pageSize = 1}: {
  14. startId?: string;
  15. pageSize: number;
  16. }) => {
  17. return request.get<TKnowledgeListResponse>(
  18. `${bluebookAiAgent}api/v1/my/knowledge/list`,
  19. { params: {startId, pageSize} }
  20. );
  21. };
  22. // 共享我的知识库至企业
  23. export const shareToEnt = (data:
  24. {
  25. "knowledgeIds": number[],
  26. "toEntId": string
  27. }
  28. ) => {
  29. return request.post(`${bluebookAiAgent}api/v1/my/knowledge/shareToEnt`, data)
  30. }
  31. // 我的知识库--信息流
  32. export type TKnowledgeDataItem = {
  33. // 信息流内容 可能为null; 如:已成功解析2份知识 ,
  34. "content"?: string,
  35. // 信息流关联文件列表; 可能为 null ,
  36. "knowledgeList"?: TKnowledgeListItem[],
  37. "role": string,
  38. "streamId": number,
  39. "type": string
  40. }
  41. export type TKnowLedgeStreamResponse = {
  42. "data": TKnowledgeDataItem[][],
  43. "nextId": string,
  44. "totalCount": number
  45. }
  46. export const getMyKnowledgeStream = (data: {startId?: string, pageSize:number} ) => {
  47. return request.get<TKnowLedgeStreamResponse>(`${bluebookAiAgent}api/v1/my/knowledge/stream`, {params: data})
  48. }
  49. // 获取指定知识库项的详情信息
  50. export type TKnowledgeDetailResponse = {
  51. "content": "string",
  52. "knowledgeList": TKnowledgeListItem[],
  53. "qaList": TQAListItem[],
  54. "role": "string",
  55. "streamId": number,
  56. "type": "string"
  57. }
  58. export const getMyKnowledgeDetail = (knowledgeId: string) => {
  59. return request.get<TKnowledgeDetailResponse>(`${bluebookAiAgent}api/v1/my/knowledge/${knowledgeId}`)
  60. }
  61. // 删除知识库 信息流记录;流删除会同步删除相关的记录项
  62. export const deleteKnowledgeStream = (streamId: string) => {
  63. return request.delete(`${bluebookAiAgent}api/v1/my/knowledge/stream/${streamId}`,)
  64. }
  65. // 删除知识库 记录项
  66. export const deleteKnowledge = (knowledgeId: string) => {
  67. return request.delete(`${bluebookAiAgent}api/v1/my/knowledge/${knowledgeId}`,)
  68. }
  69. // 删除指定知识库的 QA 项
  70. export const deleteKnowledgeQa = (knowledgeId: string, qaId: string) => {
  71. return request.delete(`${bluebookAiAgent}api/v1/my/knowledge/${knowledgeId}/${qaId}`,)
  72. }
  73. // 更新指定的知识库 QA 项
  74. export const updateKnowledgeQa = (knowledgeId: string, qaId: string, qa: TQAListItem) => {
  75. return request.put(`${bluebookAiAgent}api/v1/my/knowledge/${knowledgeId}/${qaId}`, qa)
  76. }
  77. // 企业知识库--列表
  78. export const getEntKnowledgeList = (data: {
  79. entId: string;
  80. startId?: string;
  81. pageSize: number;
  82. }) => {
  83. return request.get<TKnowledgeListResponse>(
  84. `${bluebookAiAgent}api/v1/ent/knowledge/list`,
  85. { params: data }
  86. );
  87. };
  88. // 获取指定知识库项的详情信息
  89. export const getEntKnowledgeDetail = (knowledgeId: string) => {
  90. return request.get<TKnowledgeDetailResponse>(`${bluebookAiAgent}api/v1/ent/knowledge/${knowledgeId}`)
  91. }
  92. // 企业知识库--信息流
  93. export const getEntKnowledgeStream = (data: {entId: string, startId?: string, pageSize:number} ) => {
  94. return request.get<TKnowLedgeStreamResponse>(`${bluebookAiAgent}api/v1/ent/knowledge/stream`, {params: data})
  95. }