122 lines
3.8 KiB
Python
122 lines
3.8 KiB
Python
|
# _*_ coding : UTF-8 _*_
|
||
|
# @Time : 2025/02/04 15:55
|
||
|
# @UpdateTime : 2025/02/04 15:55
|
||
|
# @Author : sonder
|
||
|
# @File : i18n.py
|
||
|
# @Software : PyCharm
|
||
|
# @Comment : 本程序
|
||
|
from datetime import datetime
|
||
|
from typing import List, Optional
|
||
|
|
||
|
from pydantic import BaseModel, Field, ConfigDict
|
||
|
from pydantic.alias_generators import to_camel
|
||
|
|
||
|
from schemas.common import BaseResponse, ListQueryResult
|
||
|
|
||
|
|
||
|
class LocaleInfo(BaseModel):
|
||
|
"""
|
||
|
语言模型信息
|
||
|
"""
|
||
|
model_config = ConfigDict(alias_generator=to_camel)
|
||
|
id: str = Field(..., description="主键")
|
||
|
create_by: str = Field(default="", description="创建者")
|
||
|
create_time: Optional[datetime] = Field(default=None, description="创建时间")
|
||
|
update_by: str = Field(default="", description="更新者")
|
||
|
update_time: Optional[datetime] = Field(default=None, description="更新时间")
|
||
|
code: str = Field(default="", description="语言代码")
|
||
|
name: str = Field(default="", description="语言名称")
|
||
|
|
||
|
|
||
|
class AddLocaleParams(BaseModel):
|
||
|
"""
|
||
|
添加语言类型参数
|
||
|
"""
|
||
|
code: str = Field(default="", description="语言代码")
|
||
|
name: str = Field(default="", description="语言名称")
|
||
|
|
||
|
|
||
|
class GetLocaleInfoResponse(BaseResponse):
|
||
|
"""
|
||
|
获取语言模型信息响应
|
||
|
"""
|
||
|
data: LocaleInfo = Field(default=None, description="语言模型信息")
|
||
|
|
||
|
|
||
|
class GetLocaleInfoResult(ListQueryResult):
|
||
|
"""
|
||
|
获取语言模型信息结果
|
||
|
"""
|
||
|
result: List[LocaleInfo] = Field(default=[], description="语言模型信息")
|
||
|
|
||
|
|
||
|
class GetLocaleListResponse(BaseResponse):
|
||
|
"""
|
||
|
获取语言模型信息响应
|
||
|
"""
|
||
|
data: GetLocaleInfoResult = Field(default={}, description="语言模型信息")
|
||
|
|
||
|
|
||
|
class I18nInfo(BaseModel):
|
||
|
"""
|
||
|
国际化模型信息
|
||
|
"""
|
||
|
model_config = ConfigDict(alias_generator=to_camel)
|
||
|
id: str = Field(..., description="主键")
|
||
|
create_by: str = Field(default="", description="创建者")
|
||
|
create_time: Optional[datetime] = Field(default=None, description="创建时间")
|
||
|
update_by: str = Field(default="", description="更新者")
|
||
|
update_time: Optional[datetime] = Field(default=None, description="更新时间")
|
||
|
key: str = Field(default="", description="国际化key")
|
||
|
locale_code: str = Field(default="", description="语言代码")
|
||
|
locale_id: str = Field(default="", description="语言ID")
|
||
|
locale_name: str = Field(default="", description="语言名称")
|
||
|
translation: str = Field(default="", description="翻译内容")
|
||
|
|
||
|
|
||
|
class AddI18nParams(BaseModel):
|
||
|
"""
|
||
|
添加国际化参数
|
||
|
"""
|
||
|
key: str = Field(default="", description="国际化key")
|
||
|
locale_id: str = Field(default="", description="语言ID")
|
||
|
translation: str = Field(default="", description="翻译内容")
|
||
|
|
||
|
|
||
|
class GetI18nInfoResponse(BaseResponse):
|
||
|
"""
|
||
|
获取国际化模型信息响应
|
||
|
"""
|
||
|
data: I18nInfo = Field(default=None, description="国际化模型信息")
|
||
|
|
||
|
|
||
|
class GetI18nInfoResult(ListQueryResult):
|
||
|
"""
|
||
|
获取国际化模型信息结果
|
||
|
"""
|
||
|
result: List[I18nInfo] = Field(default=[], description="国际化模型信息")
|
||
|
|
||
|
|
||
|
class GetI18nListResponse(BaseResponse):
|
||
|
"""
|
||
|
获取国际化模型信息响应
|
||
|
"""
|
||
|
data: GetI18nInfoResult = Field(default=None, description="国际化模型信息")
|
||
|
|
||
|
|
||
|
class I18nList(BaseModel):
|
||
|
"""
|
||
|
国际化模型信息
|
||
|
"""
|
||
|
model_config = ConfigDict(alias_generator=to_camel)
|
||
|
locale: str = Field(default="", description="语言名称")
|
||
|
name: str = Field(default="", description="语言名称")
|
||
|
data: dict = Field(default={}, description="国际化模型信息")
|
||
|
|
||
|
|
||
|
class GetI18nInfoListResponse(BaseResponse):
|
||
|
"""
|
||
|
获取国际化模型信息响应
|
||
|
"""
|
||
|
data: I18nList = Field(default=None, description="国际化模型信息")
|