Fix some UI issues 2
This commit is contained in:
@@ -12,6 +12,34 @@ from enum import Enum
|
||||
from ..models.recipes import RecipeStatus, MeasurementUnit
|
||||
|
||||
|
||||
# Quality Template Association Schemas
|
||||
class QualityStageConfiguration(BaseModel):
|
||||
"""Schema for quality checks configuration per production stage"""
|
||||
template_ids: List[UUID] = Field(default_factory=list, description="Quality template IDs for this stage")
|
||||
required_checks: List[str] = Field(default_factory=list, description="Required quality check types")
|
||||
optional_checks: List[str] = Field(default_factory=list, description="Optional quality check types")
|
||||
blocking_on_failure: bool = Field(default=True, description="Block stage progression on critical failures")
|
||||
min_quality_score: Optional[float] = Field(None, ge=0, le=10, description="Minimum quality score to pass stage")
|
||||
|
||||
|
||||
class RecipeQualityConfiguration(BaseModel):
|
||||
"""Schema for recipe quality configuration across all stages"""
|
||||
stages: Dict[str, QualityStageConfiguration] = Field(default_factory=dict, description="Quality configuration per stage")
|
||||
overall_quality_threshold: float = Field(default=7.0, ge=0, le=10, description="Overall quality threshold for batch")
|
||||
critical_stage_blocking: bool = Field(default=True, description="Block progression if critical checks fail")
|
||||
auto_create_quality_checks: bool = Field(default=True, description="Automatically create quality checks for batches")
|
||||
quality_manager_approval_required: bool = Field(default=False, description="Require quality manager approval")
|
||||
|
||||
|
||||
class RecipeQualityConfigurationUpdate(BaseModel):
|
||||
"""Schema for updating recipe quality configuration"""
|
||||
stages: Optional[Dict[str, QualityStageConfiguration]] = None
|
||||
overall_quality_threshold: Optional[float] = Field(None, ge=0, le=10)
|
||||
critical_stage_blocking: Optional[bool] = None
|
||||
auto_create_quality_checks: Optional[bool] = None
|
||||
quality_manager_approval_required: Optional[bool] = None
|
||||
|
||||
|
||||
class RecipeIngredientCreate(BaseModel):
|
||||
"""Schema for creating recipe ingredients"""
|
||||
ingredient_id: UUID
|
||||
@@ -90,6 +118,7 @@ class RecipeCreate(BaseModel):
|
||||
preparation_notes: Optional[str] = None
|
||||
storage_instructions: Optional[str] = None
|
||||
quality_standards: Optional[str] = None
|
||||
quality_check_configuration: Optional[RecipeQualityConfiguration] = None
|
||||
serves_count: Optional[int] = Field(None, ge=1)
|
||||
nutritional_info: Optional[Dict[str, Any]] = None
|
||||
allergen_info: Optional[Dict[str, Any]] = None
|
||||
@@ -128,6 +157,7 @@ class RecipeUpdate(BaseModel):
|
||||
preparation_notes: Optional[str] = None
|
||||
storage_instructions: Optional[str] = None
|
||||
quality_standards: Optional[str] = None
|
||||
quality_check_configuration: Optional[RecipeQualityConfigurationUpdate] = None
|
||||
serves_count: Optional[int] = Field(None, ge=1)
|
||||
nutritional_info: Optional[Dict[str, Any]] = None
|
||||
allergen_info: Optional[Dict[str, Any]] = None
|
||||
@@ -175,6 +205,7 @@ class RecipeResponse(BaseModel):
|
||||
preparation_notes: Optional[str] = None
|
||||
storage_instructions: Optional[str] = None
|
||||
quality_standards: Optional[str] = None
|
||||
quality_check_configuration: Optional[RecipeQualityConfiguration] = None
|
||||
serves_count: Optional[int] = None
|
||||
nutritional_info: Optional[Dict[str, Any]] = None
|
||||
allergen_info: Optional[Dict[str, Any]] = None
|
||||
|
||||
Reference in New Issue
Block a user