nex_basse/backend/app/schemas/param.py

41 lines
892 B
Python

from pydantic import BaseModel, field_validator
from datetime import datetime
class ParamOut(BaseModel):
param_id: int
param_key: str
param_value: str
param_type: str
status: int
is_system: bool
description: str | None = None
created_at: datetime
@field_validator('is_system', mode='before')
@classmethod
def parse_is_system(cls, v):
if isinstance(v, int):
return bool(v)
return v
class Config:
from_attributes = True
class ParamCreate(BaseModel):
param_key: str
param_value: str
param_type: str = "string"
status: int = 1
is_system: bool = False
description: str | None = None
class ParamUpdate(BaseModel):
param_value: str | None = None
param_type: str | None = None
status: int | None = None
is_system: bool | None = None
description: str | None = None