refactor(B1): migrate to domain-driven project structure
Move all models/schemas/services/routers into app/domains/. Keep backward-compat shims in old locations for imports. Preserves domains/rendering/tasks.py from Phase A. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,91 @@
|
||||
import uuid
|
||||
from datetime import datetime
|
||||
from pydantic import BaseModel
|
||||
|
||||
|
||||
class OutputTypeCreate(BaseModel):
|
||||
name: str
|
||||
description: str | None = None
|
||||
renderer: str = "threejs"
|
||||
render_settings: dict = {}
|
||||
output_format: str = "png"
|
||||
sort_order: int = 0
|
||||
is_active: bool = True
|
||||
compatible_categories: list[str] = []
|
||||
render_backend: str = "auto"
|
||||
is_animation: bool = False
|
||||
transparent_bg: bool = False
|
||||
pricing_tier_id: int | None = None
|
||||
cycles_device: str | None = None
|
||||
|
||||
|
||||
class OutputTypePatch(BaseModel):
|
||||
name: str | None = None
|
||||
description: str | None = None
|
||||
renderer: str | None = None
|
||||
render_settings: dict | None = None
|
||||
output_format: str | None = None
|
||||
sort_order: int | None = None
|
||||
is_active: bool | None = None
|
||||
compatible_categories: list[str] | None = None
|
||||
render_backend: str | None = None
|
||||
is_animation: bool | None = None
|
||||
transparent_bg: bool | None = None
|
||||
pricing_tier_id: int | None = None
|
||||
cycles_device: str | None = None
|
||||
|
||||
|
||||
class OutputTypeOut(BaseModel):
|
||||
id: uuid.UUID
|
||||
name: str
|
||||
description: str | None
|
||||
renderer: str
|
||||
render_settings: dict
|
||||
output_format: str
|
||||
sort_order: int
|
||||
compatible_categories: list[str]
|
||||
render_backend: str
|
||||
is_animation: bool
|
||||
transparent_bg: bool
|
||||
cycles_device: str | None = None
|
||||
pricing_tier_id: int | None = None
|
||||
pricing_tier_name: str | None = None
|
||||
price_per_item: float | None = None
|
||||
is_active: bool
|
||||
created_at: datetime
|
||||
updated_at: datetime
|
||||
|
||||
model_config = {"from_attributes": True}
|
||||
|
||||
|
||||
class RenderPositionCreate(BaseModel):
|
||||
name: str
|
||||
rotation_x: float = 0.0
|
||||
rotation_y: float = 0.0
|
||||
rotation_z: float = 0.0
|
||||
is_default: bool = False
|
||||
sort_order: int = 0
|
||||
|
||||
|
||||
class RenderPositionPatch(BaseModel):
|
||||
name: str | None = None
|
||||
rotation_x: float | None = None
|
||||
rotation_y: float | None = None
|
||||
rotation_z: float | None = None
|
||||
is_default: bool | None = None
|
||||
sort_order: int | None = None
|
||||
|
||||
|
||||
class RenderPositionOut(BaseModel):
|
||||
id: uuid.UUID
|
||||
product_id: uuid.UUID
|
||||
name: str
|
||||
rotation_x: float
|
||||
rotation_y: float
|
||||
rotation_z: float
|
||||
is_default: bool
|
||||
sort_order: int
|
||||
created_at: datetime
|
||||
updated_at: datetime
|
||||
|
||||
model_config = {"from_attributes": True}
|
||||
Reference in New Issue
Block a user