Files
fastapi_best_architecture/backend/plugin/dict/schema/dict_data.py
Wu Clan 319ba13df1 Optimize routes to better align with RESTful (#673)
* Optimize routes to better align with RESTful

* Add codes endpoint description

* Update jinja templates

* fix typo

* fix sql
2025-06-19 11:06:34 +08:00

51 lines
1.4 KiB
Python

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
from datetime import datetime
from pydantic import ConfigDict, Field
from backend.common.enums import StatusType
from backend.common.schema import SchemaBase
from backend.plugin.dict.schema.dict_type import GetDictTypeDetail
class DictDataSchemaBase(SchemaBase):
"""字典数据基础模型"""
type_id: int = Field(description='字典类型 ID')
label: str = Field(description='字典标签')
value: str = Field(description='字典值')
sort: int = Field(description='排序')
status: StatusType = Field(StatusType.enable, description='状态')
remark: str | None = Field(None, description='备注')
class CreateDictDataParam(DictDataSchemaBase):
"""创建字典数据参数"""
class UpdateDictDataParam(DictDataSchemaBase):
"""更新字典数据参数"""
class DeleteDictDataParam(SchemaBase):
"""删除字典数据参数"""
pks: list[int] = Field(description='字典数据 ID 列表')
class GetDictDataDetail(DictDataSchemaBase):
"""字典数据详情"""
model_config = ConfigDict(from_attributes=True)
id: int = Field(description='字典数据 ID')
created_time: datetime = Field(description='创建时间')
updated_time: datetime | None = Field(None, description='更新时间')
class GetDictDataWithRelation(DictDataSchemaBase):
"""字典数据关联详情"""
type: GetDictTypeDetail | None = Field(None, description='字典类型信息')