Added auditor logic
This commit is contained in:
@@ -20,6 +20,7 @@ class UserInfo(BaseModel):
|
||||
full_name: Optional[str] = None
|
||||
db_user_id: Optional[int] = None # Database user ID (populated after login)
|
||||
role: Optional[str] = None # User role name
|
||||
role_id: Optional[int] = None # User role ID (1=admin, 2=auditor, 3=user, etc.)
|
||||
|
||||
|
||||
# Project schemas
|
||||
@@ -106,6 +107,15 @@ class PriorityResponse(BaseModel):
|
||||
|
||||
|
||||
# Validation schemas
|
||||
class ValidationStatusResponse(BaseModel):
|
||||
"""Response schema for a validation status."""
|
||||
id: int
|
||||
status_name: str
|
||||
|
||||
class Config:
|
||||
from_attributes = True
|
||||
|
||||
|
||||
class ValidationResponse(BaseModel):
|
||||
"""Response schema for a validation."""
|
||||
id: int
|
||||
@@ -118,6 +128,27 @@ class ValidationResponse(BaseModel):
|
||||
from_attributes = True
|
||||
|
||||
|
||||
class ValidationHistoryResponse(BaseModel):
|
||||
"""Response schema for validation history with validator info."""
|
||||
id: int
|
||||
status_name: str
|
||||
status_id: int
|
||||
req_version_snapshot: int
|
||||
comment: Optional[str] = None
|
||||
created_at: Optional[datetime] = None
|
||||
validator_username: str
|
||||
validator_id: int
|
||||
|
||||
class Config:
|
||||
from_attributes = True
|
||||
|
||||
|
||||
class ValidationCreateRequest(BaseModel):
|
||||
"""Request schema for creating a validation."""
|
||||
status_id: int
|
||||
comment: Optional[str] = None
|
||||
|
||||
|
||||
# Requirement schemas
|
||||
class RequirementResponse(BaseModel):
|
||||
"""Response schema for a single requirement."""
|
||||
@@ -132,6 +163,9 @@ class RequirementResponse(BaseModel):
|
||||
priority: Optional[PriorityResponse] = None
|
||||
groups: List[GroupResponse] = []
|
||||
validation_status: Optional[str] = None # Computed from latest validation
|
||||
validated_by: Optional[str] = None # Username of the validator
|
||||
validated_at: Optional[datetime] = None # When the latest validation was made
|
||||
validation_version: Optional[int] = None # Version at which requirement was validated
|
||||
|
||||
class Config:
|
||||
from_attributes = True
|
||||
|
||||
Reference in New Issue
Block a user