参与者管理- PD模块内容补充

This commit is contained in:
Cheng Zhou
2026-02-28 14:33:57 +08:00
parent af0c1b4b7d
commit 9b36a42e6f
14 changed files with 855 additions and 35 deletions
+52
View File
@@ -0,0 +1,52 @@
import uuid
from datetime import datetime
from typing import Optional
from pydantic import BaseModel, ConfigDict
class SubjectPdCreate(BaseModel):
subject_id: uuid.UUID
pd_no: Optional[str] = None
pd_type: str
pd_level: Optional[str] = "GENERAL"
approval_status: Optional[str] = "DRAFT"
description: Optional[str] = None
status: Optional[str] = "OPEN"
class SubjectPdUpdate(BaseModel):
pd_type: Optional[str] = None
pd_level: Optional[str] = None
approval_status: Optional[str] = None
description: Optional[str] = None
status: Optional[str] = None
class SubjectPdRead(BaseModel):
id: uuid.UUID
study_id: uuid.UUID
subject_id: uuid.UUID
pd_no: str
pd_type: str
pd_level: str
approval_status: str
description: Optional[str]
status: str
created_by: Optional[uuid.UUID]
created_at: datetime
updated_at: datetime
model_config = ConfigDict(from_attributes=True)
class SubjectPdSummaryRead(BaseModel):
id: uuid.UUID
study_id: uuid.UUID
subject_id: uuid.UUID
subject_no: str
site_id: uuid.UUID
pd_no: str
status: str
description: Optional[str]
updated_at: datetime