Added project separation logic
This commit is contained in:
@@ -22,6 +22,46 @@ class UserInfo(BaseModel):
|
||||
role: Optional[str] = None # User role name
|
||||
|
||||
|
||||
# Project schemas
|
||||
class ProjectBase(BaseModel):
|
||||
"""Base schema for projects."""
|
||||
project_name: str
|
||||
project_desc: Optional[str] = None
|
||||
|
||||
|
||||
class ProjectResponse(BaseModel):
|
||||
"""Response schema for a single project."""
|
||||
id: int
|
||||
project_name: str
|
||||
project_desc: Optional[str] = None
|
||||
created_at: Optional[datetime] = None
|
||||
|
||||
class Config:
|
||||
from_attributes = True
|
||||
|
||||
|
||||
class ProjectCreateRequest(BaseModel):
|
||||
"""Request schema for creating a project."""
|
||||
project_name: str
|
||||
project_desc: Optional[str] = None
|
||||
|
||||
|
||||
class ProjectUpdateRequest(BaseModel):
|
||||
"""Request schema for updating a project."""
|
||||
project_name: Optional[str] = None
|
||||
project_desc: Optional[str] = None
|
||||
|
||||
|
||||
class ProjectListResponse(BaseModel):
|
||||
"""Response schema for list of projects."""
|
||||
projects: List[ProjectResponse]
|
||||
|
||||
|
||||
class ProjectMemberRequest(BaseModel):
|
||||
"""Request schema for adding/removing project members."""
|
||||
user_id: int
|
||||
|
||||
|
||||
# Group schemas
|
||||
class GroupResponse(BaseModel):
|
||||
"""Response schema for a single group."""
|
||||
@@ -82,6 +122,7 @@ class ValidationResponse(BaseModel):
|
||||
class RequirementResponse(BaseModel):
|
||||
"""Response schema for a single requirement."""
|
||||
id: int
|
||||
project_id: int
|
||||
req_name: str
|
||||
req_desc: Optional[str] = None
|
||||
version: int
|
||||
@@ -103,6 +144,7 @@ class RequirementListResponse(BaseModel):
|
||||
|
||||
class RequirementCreateRequest(BaseModel):
|
||||
"""Request schema for creating a requirement."""
|
||||
project_id: int
|
||||
tag_id: int
|
||||
req_name: str
|
||||
req_desc: Optional[str] = None
|
||||
|
||||
Reference in New Issue
Block a user