fix: Remove car_id property from adminAddVehicle call to fix TypeScript error
This commit is contained in:
198
temp_solution_schemas.py
Normal file
198
temp_solution_schemas.py
Normal file
@@ -0,0 +1,198 @@
|
||||
from pydantic import BaseModel
|
||||
from datetime import datetime
|
||||
from typing import Optional, List, Any
|
||||
|
||||
|
||||
# ==================== Image Schemas ====================
|
||||
|
||||
class ImageResponse(BaseModel):
|
||||
id: int
|
||||
image_url: str
|
||||
caption: Optional[str] = None
|
||||
|
||||
class Config:
|
||||
from_attributes = True
|
||||
|
||||
|
||||
# ==================== Solution Schemas ====================
|
||||
|
||||
class SolutionBase(BaseModel):
|
||||
title_ko: str
|
||||
title_en: Optional[str] = None
|
||||
title_ja: Optional[str] = None
|
||||
title_zh: Optional[str] = None
|
||||
subtitle_ko: Optional[str] = None
|
||||
subtitle_en: Optional[str] = None
|
||||
subtitle_ja: Optional[str] = None
|
||||
subtitle_zh: Optional[str] = None
|
||||
description_ko: Optional[str] = None
|
||||
description_en: Optional[str] = None
|
||||
description_ja: Optional[str] = None
|
||||
description_zh: Optional[str] = None
|
||||
features_ko: Optional[str] = None
|
||||
features_en: Optional[str] = None
|
||||
features_ja: Optional[str] = None
|
||||
features_zh: Optional[str] = None
|
||||
icon: Optional[str] = None
|
||||
color: Optional[str] = None
|
||||
main_image: Optional[str] = None
|
||||
is_active: bool = True
|
||||
display_order: int = 0
|
||||
|
||||
|
||||
class SolutionCreate(SolutionBase):
|
||||
pass
|
||||
|
||||
|
||||
class SolutionUpdate(BaseModel):
|
||||
title_ko: Optional[str] = None
|
||||
title_en: Optional[str] = None
|
||||
title_ja: Optional[str] = None
|
||||
title_zh: Optional[str] = None
|
||||
subtitle_ko: Optional[str] = None
|
||||
subtitle_en: Optional[str] = None
|
||||
subtitle_ja: Optional[str] = None
|
||||
subtitle_zh: Optional[str] = None
|
||||
description_ko: Optional[str] = None
|
||||
description_en: Optional[str] = None
|
||||
description_ja: Optional[str] = None
|
||||
description_zh: Optional[str] = None
|
||||
features_ko: Optional[str] = None
|
||||
features_en: Optional[str] = None
|
||||
features_ja: Optional[str] = None
|
||||
features_zh: Optional[str] = None
|
||||
icon: Optional[str] = None
|
||||
color: Optional[str] = None
|
||||
main_image: Optional[str] = None
|
||||
is_active: Optional[bool] = None
|
||||
display_order: Optional[int] = None
|
||||
|
||||
|
||||
class SolutionImageResponse(BaseModel):
|
||||
id: int
|
||||
image_url: str
|
||||
caption_ko: Optional[str] = None
|
||||
caption_en: Optional[str] = None
|
||||
caption_ja: Optional[str] = None
|
||||
caption_zh: Optional[str] = None
|
||||
display_order: int = 0
|
||||
|
||||
class Config:
|
||||
from_attributes = True
|
||||
|
||||
|
||||
class SolutionResponse(SolutionBase):
|
||||
id: int
|
||||
created_at: datetime
|
||||
updated_at: datetime
|
||||
images: List[SolutionImageResponse] = []
|
||||
|
||||
class Config:
|
||||
from_attributes = True
|
||||
|
||||
|
||||
class SolutionLocalizedResponse(BaseModel):
|
||||
id: int
|
||||
title: str
|
||||
subtitle: Optional[str]
|
||||
description: Optional[str]
|
||||
features: List[str]
|
||||
icon: Optional[str]
|
||||
color: Optional[str]
|
||||
main_image: Optional[str]
|
||||
images: List[Any] = []
|
||||
|
||||
class Config:
|
||||
from_attributes = True
|
||||
|
||||
|
||||
# ==================== Product Schemas ====================
|
||||
|
||||
class ProductBase(BaseModel):
|
||||
name_ko: str
|
||||
name_en: Optional[str] = None
|
||||
name_ja: Optional[str] = None
|
||||
name_zh: Optional[str] = None
|
||||
category_ko: Optional[str] = None
|
||||
category_en: Optional[str] = None
|
||||
category_ja: Optional[str] = None
|
||||
category_zh: Optional[str] = None
|
||||
description_ko: Optional[str] = None
|
||||
description_en: Optional[str] = None
|
||||
description_ja: Optional[str] = None
|
||||
description_zh: Optional[str] = None
|
||||
detail_ko: Optional[str] = None
|
||||
detail_en: Optional[str] = None
|
||||
detail_ja: Optional[str] = None
|
||||
detail_zh: Optional[str] = None
|
||||
specifications: Optional[str] = None
|
||||
icon: Optional[str] = None
|
||||
main_image: Optional[str] = None
|
||||
is_active: bool = True
|
||||
display_order: int = 0
|
||||
|
||||
|
||||
class ProductCreate(ProductBase):
|
||||
pass
|
||||
|
||||
|
||||
class ProductUpdate(BaseModel):
|
||||
name_ko: Optional[str] = None
|
||||
name_en: Optional[str] = None
|
||||
name_ja: Optional[str] = None
|
||||
name_zh: Optional[str] = None
|
||||
category_ko: Optional[str] = None
|
||||
category_en: Optional[str] = None
|
||||
category_ja: Optional[str] = None
|
||||
category_zh: Optional[str] = None
|
||||
description_ko: Optional[str] = None
|
||||
description_en: Optional[str] = None
|
||||
description_ja: Optional[str] = None
|
||||
description_zh: Optional[str] = None
|
||||
detail_ko: Optional[str] = None
|
||||
detail_en: Optional[str] = None
|
||||
detail_ja: Optional[str] = None
|
||||
detail_zh: Optional[str] = None
|
||||
specifications: Optional[str] = None
|
||||
icon: Optional[str] = None
|
||||
main_image: Optional[str] = None
|
||||
is_active: Optional[bool] = None
|
||||
display_order: Optional[int] = None
|
||||
|
||||
|
||||
class ProductImageResponse(BaseModel):
|
||||
id: int
|
||||
image_url: str
|
||||
caption_ko: Optional[str] = None
|
||||
caption_en: Optional[str] = None
|
||||
caption_ja: Optional[str] = None
|
||||
caption_zh: Optional[str] = None
|
||||
display_order: int = 0
|
||||
|
||||
class Config:
|
||||
from_attributes = True
|
||||
|
||||
|
||||
class ProductResponse(ProductBase):
|
||||
id: int
|
||||
created_at: datetime
|
||||
updated_at: datetime
|
||||
images: List[ProductImageResponse] = []
|
||||
|
||||
class Config:
|
||||
from_attributes = True
|
||||
|
||||
|
||||
class ProductLocalizedResponse(BaseModel):
|
||||
id: int
|
||||
name: str
|
||||
category: Optional[str]
|
||||
description: Optional[str]
|
||||
detail: Optional[str]
|
||||
specifications: Optional[str]
|
||||
icon: Optional[str]
|
||||
main_image: Optional[str]
|
||||
images: List[Any] = []
|
||||
|
||||
class Config:
|
||||
from_attributes = True
|
||||
Reference in New Issue
Block a user