优化“知识库模块“--基本完善

This commit is contained in:
Cheng Zhou
2025-12-26 14:07:28 +08:00
parent a1a4964cd2
commit 7c9befc3c9
23 changed files with 1345 additions and 110 deletions
+42 -4
View File
@@ -1,6 +1,6 @@
import uuid
from datetime import datetime
from typing import Optional
from typing import Literal, Optional
from pydantic import BaseModel, ConfigDict
@@ -14,6 +14,7 @@ class CategoryCreate(BaseModel):
class CategoryUpdate(BaseModel):
study_id: Optional[uuid.UUID] = None
name: Optional[str] = None
description: Optional[str] = None
sort_order: Optional[int] = None
@@ -37,21 +38,58 @@ class FaqCreate(BaseModel):
study_id: Optional[uuid.UUID] = None
category_id: uuid.UUID
question: str
answer: str
keywords: Optional[str] = None
answer: Optional[str] = None
class FaqUpdate(BaseModel):
question: Optional[str] = None
answer: Optional[str] = None
keywords: Optional[str] = None
is_active: Optional[bool] = None
class FaqStatusUpdate(BaseModel):
status: Literal["PENDING", "PROCESSING", "RESOLVED"]
class FaqBestReplyUpdate(BaseModel):
best_reply_id: Optional[uuid.UUID] = None
class FaqReplyCreate(BaseModel):
content: str
quote_reply_id: Optional[uuid.UUID] = None
class FaqReplyQuote(BaseModel):
id: uuid.UUID
content: str
created_by: uuid.UUID
created_at: datetime
model_config = ConfigDict(from_attributes=True)
class FaqReplyRead(BaseModel):
id: uuid.UUID
faq_id: uuid.UUID
study_id: Optional[uuid.UUID]
content: str
created_by: uuid.UUID
created_at: datetime
quote_reply_id: Optional[uuid.UUID] = None
quote: Optional[FaqReplyQuote] = None
is_deleted: bool = False
model_config = ConfigDict(from_attributes=True)
class FaqRead(BaseModel):
id: uuid.UUID
study_id: Optional[uuid.UUID]
category_id: uuid.UUID
best_reply_id: Optional[uuid.UUID] = None
status: Literal["PENDING", "PROCESSING", "RESOLVED"] = "PENDING"
resolved_by_confirm: bool = False
question: str
answer: str
keywords: Optional[str]