41 lines
913 B
Python

from datetime import datetime
from pydantic import BaseModel
class CategoryBase(BaseModel):
name: str
slug: str
description: str | None = None
image: str | None = None
parent_id: str | None = None
is_active: bool | None = True
display_order: int | None = 0
class CategoryCreate(CategoryBase):
pass
class CategoryUpdate(BaseModel):
name: str | None = None
slug: str | None = None
description: str | None = None
image: str | None = None
parent_id: str | None = None
is_active: bool | None = None
display_order: int | None = None
class CategoryInDBBase(CategoryBase):
id: str
created_at: datetime
updated_at: datetime | None = None
class Config:
orm_mode = True
class Category(CategoryInDBBase):
pass
class CategoryWithChildren(Category):
subcategories: list['CategoryWithChildren'] = []
product_count: int = 0