from typing import Optional from pydantic import Field from domain.dtos.base_dto import DtoBase class SysDictTypeBaseDto(DtoBase): dict_name: str = Field(..., title="字典名称", max_length=30) status: int = Field(0, title="状态", ge=0, le=1) remark: Optional[str] = Field(None, title="备注", max_length=500) class Config: from_attributes = True class SysDictTypeDto(SysDictTypeBaseDto): id: int = Field(..., title="字典ID", gt=0) dict_type: str = Field(..., title="字典类型", max_length=60) # class SysDictTypeCreateDto(SysDictTypeBaseDto): # dict_name: str = Field(..., title="字典名称", max_length=30) # dict_type: str = Field(..., title="字典类型", max_length=60) class SysDictTypeUpdateDto(SysDictTypeBaseDto): id: int = Field(..., title="字典ID", gt=0) dict_type: Optional[str] = Field(None, title="字典类型", max_length=60) class SysDictDataBaseDto(DtoBase): dict_label: str = Field(..., title="字典标签", max_length=100) css_class: str = Field(..., title="样式属性(其他样式扩展)", max_length=100) list_class: str = Field(..., title="表格回显样式", max_length=100) remark: Optional[str] = Field(None, title="备注", max_length=500) status: int = Field(0, title="状态", ge=0, le=1) class SysDictDataDto(SysDictDataBaseDto): id: int = Field(..., title="字典ID", gt=0) dict_code: int = Field(..., title="字典编码", gt=0) dict_type: str = Field(..., title="字典类型", max_length=100) dict_value: str = Field(..., title="字典键值", max_length=100) order_num: int = Field(0, title="字典排序") is_default: int = Field(0, title="是否默认", ge=0, le=1) class SysDictDataUpdateDto(SysDictDataBaseDto): id: int = Field(..., title="字典ID", gt=0)