70 lines
1.7 KiB
Swift

import Foundation
struct GenerateKnowledgeResponse: Codable {
let taskId: String
let sourceId: String?
let chatMessageId: String?
let aiJobId: String?
let status: String
let knowledgeItemCount: Int?
let errorCode: String?
let errorMessage: String?
let message: String
}
struct GenerateKnowledgeBatchResponse: Codable {
let knowledgeBaseId: String
let totalCount: Int
let queuedCount: Int
let waitingForParseCount: Int
let runningCount: Int
let tasks: [GenerateKnowledgeResponse]
let message: String
}
extension GenerateKnowledgeResponse {
var asTaskStatus: KnowledgeGenerationTaskStatus {
KnowledgeGenerationTaskStatus(
taskId: taskId,
sourceId: sourceId,
chatMessageId: chatMessageId,
aiJobId: aiJobId,
status: status,
knowledgeItemCount: knowledgeItemCount,
errorCode: errorCode,
errorMessage: errorMessage,
message: message
)
}
}
struct KnowledgeItem: Codable, Identifiable, Hashable {
let id: String
let userId: String?
let knowledgeBaseId: String?
let parentId: String?
let itemType: String?
let title: String
let content: String?
let summary: String?
let sourceType: String?
let sourceRef: String?
let orderIndex: Int?
let status: String?
let createdAt: String?
let updatedAt: String?
}
struct CreateKnowledgeItemRequest: Codable {
let knowledgeBaseId: String
let title: String
let content: String?
let itemType: String?
}
struct UpdateKnowledgeItemRequest: Codable {
let title: String?
let content: String?
let summary: String?
}