Program/mooc/schemas/users.py

646 lines
18 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

from pydantic import BaseModel
from typing import Optional
# 数据模型基类: ImsUsersBase用于描述基础字段的类型、用途和注意点
class ImsUsersBase(BaseModel):
owner_uid: int
groupid: int
founder_groupid: int
username: str
password: str
salt: str
type: int
status: int
joindate: int
joinip: str
lastvisit: int
lastip: str
remark: str
starttime: int
endtime: int
register_type: int
openid: str
welcome_link: int
notice_setting: str
is_bind: int
class ImsUsersCreate(ImsUsersBase):
"""
用于创建新的ims_users记录:
- 继承自ImsUsersBase不额外添加字段
- 仅表示此Schema专用于'创建'场景
"""
pass
class ImsUsersUpdate(BaseModel):
"""
用于更新已有ims_users记录:
- 只包含可选字段,未在此处的内容将保持不变
- 注意: exclude_unset=True 可以避免更新空值
"""
owner_uid: Optional[int]
groupid: Optional[int]
founder_groupid: Optional[int]
username: Optional[str]
password: Optional[str]
salt: Optional[str]
type: Optional[int]
status: Optional[int]
joindate: Optional[int]
joinip: Optional[str]
lastvisit: Optional[int]
lastip: Optional[str]
remark: Optional[str]
starttime: Optional[int]
endtime: Optional[int]
register_type: Optional[int]
openid: Optional[str]
welcome_link: Optional[int]
notice_setting: Optional[str]
is_bind: Optional[int]
class ImsUsers(ImsUsersBase):
"""
表示完整的ims_users记录:
- uid: 数据库主键ID
- 包含所有字段的最终模型ORM转换时使用
"""
acid: int # 表中的主键ID
class Config:
orm_mode = True
# 数据模型基类: ImsUsersBindBase用于描述基础字段的类型、用途和注意点
class ImsUsersBindBase(BaseModel):
uid: int
bind_sign: str
third_type: int
third_nickname: str
class ImsUsersBindCreate(ImsUsersBindBase):
"""
用于创建新的ims_users_bind记录:
- 继承自ImsUsersBindBase不额外添加字段
- 仅表示此Schema专用于'创建'场景
"""
pass
class ImsUsersBindUpdate(BaseModel):
"""
用于更新已有ims_users_bind记录:
- 只包含可选字段,未在此处的内容将保持不变
- 注意: exclude_unset=True 可以避免更新空值
"""
uid: Optional[int]
bind_sign: Optional[str]
third_type: Optional[int]
third_nickname: Optional[str]
class ImsUsersBind(ImsUsersBindBase):
"""
表示完整的ims_users_bind记录:
- id: 数据库主键ID
- 包含所有字段的最终模型ORM转换时使用
"""
acid: int # 表中的主键ID
class Config:
orm_mode = True
# 数据模型基类: ImsUsersCreateGroupBase用于描述基础字段的类型、用途和注意点
class ImsUsersCreateGroupBase(BaseModel):
group_name: str
maxaccount: int
maxwxapp: int
maxwebapp: int
maxphoneapp: int
maxxzapp: int
maxaliapp: int
createtime: int
maxbaiduapp: int
maxtoutiaoapp: int
class ImsUsersCreateGroupCreate(ImsUsersCreateGroupBase):
"""
用于创建新的ims_users_create_group记录:
- 继承自ImsUsersCreateGroupBase不额外添加字段
- 仅表示此Schema专用于'创建'场景
"""
pass
class ImsUsersCreateGroupUpdate(BaseModel):
"""
用于更新已有ims_users_create_group记录:
- 只包含可选字段,未在此处的内容将保持不变
- 注意: exclude_unset=True 可以避免更新空值
"""
group_name: Optional[str]
maxaccount: Optional[int]
maxwxapp: Optional[int]
maxwebapp: Optional[int]
maxphoneapp: Optional[int]
maxxzapp: Optional[int]
maxaliapp: Optional[int]
createtime: Optional[int]
maxbaiduapp: Optional[int]
maxtoutiaoapp: Optional[int]
class ImsUsersCreateGroup(ImsUsersCreateGroupBase):
"""
表示完整的ims_users_create_group记录:
- id: 数据库主键ID
- 包含所有字段的最终模型ORM转换时使用
"""
acid: int # 表中的主键ID
class Config:
orm_mode = True
# 数据模型基类: ImsUsersGroupBase用于描述基础字段的类型、用途和注意点
class ImsUsersGroupBase(BaseModel):
owner_uid: int
name: str
package: str
maxaccount: int
timelimit: int
maxwxapp: int
maxwebapp: int
maxphoneapp: int
maxxzapp: int
maxaliapp: int
maxbaiduapp: int
maxtoutiaoapp: int
class ImsUsersGroupCreate(ImsUsersGroupBase):
"""
用于创建新的ims_users_group记录:
- 继承自ImsUsersGroupBase不额外添加字段
- 仅表示此Schema专用于'创建'场景
"""
pass
class ImsUsersGroupUpdate(BaseModel):
"""
用于更新已有ims_users_group记录:
- 只包含可选字段,未在此处的内容将保持不变
- 注意: exclude_unset=True 可以避免更新空值
"""
owner_uid: Optional[int]
name: Optional[str]
package: Optional[str]
maxaccount: Optional[int]
timelimit: Optional[int]
maxwxapp: Optional[int]
maxwebapp: Optional[int]
maxphoneapp: Optional[int]
maxxzapp: Optional[int]
maxaliapp: Optional[int]
maxbaiduapp: Optional[int]
maxtoutiaoapp: Optional[int]
class ImsUsersGroup(ImsUsersGroupBase):
"""
表示完整的ims_users_group记录:
- id: 数据库主键ID
- 包含所有字段的最终模型ORM转换时使用
"""
acid: int # 表中的主键ID
class Config:
orm_mode = True
# 数据模型基类: ImsUsersInvitation
# 数据模型基类: ImsUsersExtraGroupBase用于描述基础字段的类型、用途和注意点
class ImsUsersExtraGroupBase(BaseModel):
uid: int
uni_group_id: int
create_group_id: int
class ImsUsersExtraGroupCreate(ImsUsersExtraGroupBase):
"""
用于创建新的ims_users_extra_group记录:
- 继承自ImsUsersExtraGroupBase不额外添加字段
- 仅表示此Schema专用于'创建'场景
"""
pass
class ImsUsersExtraGroupUpdate(BaseModel):
"""
用于更新已有ims_users_extra_group记录:
- 只包含可选字段,未在此处的内容将保持不变
- 注意: exclude_unset=True 可以避免更新空值
"""
uid: Optional[int]
uni_group_id: Optional[int]
create_group_id: Optional[int]
class ImsUsersExtraGroup(ImsUsersExtraGroupBase):
"""
表示完整的ims_users_extra_group记录:
- id: 数据库主键ID
- 包含所有字段的最终模型ORM转换时使用
"""
acid: int # 表中的主键ID
class Config:
orm_mode = True
# 数据模型基类: ImsUsersExtraLimitBase用于描述基础字段的类型、用途和注意点
class ImsUsersExtraLimitBase(BaseModel):
uid: int
maxaccount: int
maxwxapp: int
maxwebapp: int
maxphoneapp: int
maxxzapp: int
maxaliapp: int
timelimit: int
maxbaiduapp: int
maxtoutiaoapp: int
class ImsUsersExtraLimitCreate(ImsUsersExtraLimitBase):
"""
用于创建新的ims_users_extra_limit记录:
- 继承自ImsUsersExtraLimitBase不额外添加字段
- 仅表示此Schema专用于'创建'场景
"""
pass
class ImsUsersExtraLimitUpdate(BaseModel):
"""
用于更新已有ims_users_extra_limit记录:
- 只包含可选字段,未在此处的内容将保持不变
- 注意: exclude_unset=True 可以避免更新空值
"""
uid: Optional[int]
maxaccount: Optional[int]
maxwxapp: Optional[int]
maxwebapp: Optional[int]
maxphoneapp: Optional[int]
maxxzapp: Optional[int]
maxaliapp: Optional[int]
timelimit: Optional[int]
maxbaiduapp: Optional[int]
maxtoutiaoapp: Optional[int]
class ImsUsersExtraLimit(ImsUsersExtraLimitBase):
"""
表示完整的ims_users_extra_limit记录:
- id: 数据库主键ID
- 包含所有字段的最终模型ORM转换时使用
"""
acid: int # 表中的主键ID
class Config:
orm_mode = True
# 数据模型基类: ImsUsersExtraModulesBase用于描述基础字段的类型、用途和注意点
class ImsUsersExtraModulesBase(BaseModel):
uid: int
module_name: str
support: str
class ImsUsersExtraModulesCreate(ImsUsersExtraModulesBase):
"""
用于创建新的ims_users_extra_modules记录:
- 继承自ImsUsersExtraModulesBase不额外添加字段
- 仅表示此Schema专用于'创建'场景
"""
pass
class ImsUsersExtraModulesUpdate(BaseModel):
"""
用于更新已有ims_users_extra_modules记录:
- 只包含可选字段,未在此处的内容将保持不变
- 注意: exclude_unset=True 可以避免更新空值
"""
uid: Optional[int]
module_name: Optional[str]
support: Optional[str]
class ImsUsersExtraModules(ImsUsersExtraModulesBase):
"""
表示完整的ims_users_extra_modules记录:
- id: 数据库主键ID
- 包含所有字段的最终模型ORM转换时使用
"""
acid: int # 表中的主键ID
class Config:
orm_mode = True
# 数据模型基类: ImsUsersExtraTemplatesBase用于描述基础字段的类型、用途和注意点
class ImsUsersExtraTemplatesBase(BaseModel):
uid: int
template_id: int
class ImsUsersExtraTemplatesCreate(ImsUsersExtraTemplatesBase):
"""
用于创建新的ims_users_extra_templates记录:
- 继承自ImsUsersExtraTemplatesBase不额外添加字段
- 仅表示此Schema专用于'创建'场景
"""
pass
class ImsUsersExtraTemplatesUpdate(BaseModel):
"""
用于更新已有ims_users_extra_templates记录:
- 只包含可选字段,未在此处的内容将保持不变
- 注意: exclude_unset=True 可以避免更新空值
"""
uid: Optional[int]
template_id: Optional[int]
class ImsUsersExtraTemplates(ImsUsersExtraTemplatesBase):
"""
表示完整的ims_users_extra_templates记录:
- id: 数据库主键ID
- 包含所有字段的最终模型ORM转换时使用
"""
acid: int # 表中的主键ID
class Config:
orm_mode = True
# 数据模型基类: ImsUsersFailedLoginBase用于描述基础字段的类型、用途和注意点
class ImsUsersFailedLoginBase(BaseModel):
ip: str
username: str
count: int
lastupdate: int
class ImsUsersFailedLoginCreate(ImsUsersFailedLoginBase):
"""
用于创建新的ims_users_failed_login记录:
- 继承自ImsUsersFailedLoginBase不额外添加字段
- 仅表示此Schema专用于'创建'场景
"""
pass
class ImsUsersFailedLoginUpdate(BaseModel):
"""
用于更新已有ims_users_failed_login记录:
- 只包含可选字段,未在此处的内容将保持不变
- 注意: exclude_unset=True 可以避免更新空值
"""
ip: Optional[str]
username: Optional[str]
count: Optional[int]
lastupdate: Optional[int]
class ImsUsersFailedLogin(ImsUsersFailedLoginBase):
"""
表示完整的ims_users_failed_login记录:
- id: 数据库主键ID
- 包含所有字段的最终模型ORM转换时使用
"""
acid: int # 表中的主键ID
class Config:
orm_mode = True
# 数据模型基类: ImsUsersFounderGroupBase用于描述基础字段的类型、用途和注意点
class ImsUsersFounderGroupBase(BaseModel):
name: str
package: str
maxaccount: int
timelimit: int
maxwxapp: int
maxwebapp: int
maxphoneapp: int
maxxzapp: int
maxaliapp: int
maxbaiduapp: int
maxtoutiaoapp: int
class ImsUsersFounderGroupCreate(ImsUsersFounderGroupBase):
"""
用于创建新的ims_users_founder_group记录:
- 继承自ImsUsersFounderGroupBase不额外添加字段
- 仅表示此Schema专用于'创建'场景
"""
pass
class ImsUsersFounderGroupUpdate(BaseModel):
"""
用于更新已有ims_users_founder_group记录:
- 只包含可选字段,未在此处的内容将保持不变
- 注意: exclude_unset=True 可以避免更新空值
"""
name: Optional[str]
package: Optional[str]
maxaccount: Optional[int]
timelimit: Optional[int]
maxwxapp: Optional[int]
maxwebapp: Optional[int]
maxphoneapp: Optional[int]
maxxzapp: Optional[int]
maxaliapp: Optional[int]
maxbaiduapp: Optional[int]
maxtoutiaoapp: Optional[int]
class ImsUsersFounderGroup(ImsUsersFounderGroupBase):
"""
表示完整的ims_users_founder_group记录:
- id: 数据库主键ID
- 包含所有字段的最终模型ORM转换时使用
"""
acid: int # 表中的主键ID
class Config:
orm_mode = True
# 数据模型基类: ImsUsersFounderOwnCreateGroupsBase用于描述基础字段的类型、用途和注意点
class ImsUsersFounderOwnCreateGroupsBase(BaseModel):
founder_uid: int
create_group_id: int
class ImsUsersFounderOwnCreateGroupsCreate(ImsUsersFounderOwnCreateGroupsBase):
"""
用于创建新的ims_users_founder_own_create_groups记录:
- 继承自ImsUsersFounderOwnCreateGroupsBase不额外添加字段
- 仅表示此Schema专用于'创建'场景
"""
pass
class ImsUsersFounderOwnCreateGroupsUpdate(BaseModel):
"""
用于更新已有ims_users_founder_own_create_groups记录:
- 只包含可选字段,未在此处的内容将保持不变
- 注意: exclude_unset=True 可以避免更新空值
"""
founder_uid: Optional[int]
create_group_id: Optional[int]
class ImsUsersFounderOwnCreateGroups(ImsUsersFounderOwnCreateGroupsBase):
"""
表示完整的ims_users_founder_own_create_groups记录:
- id: 数据库主键ID
- 包含所有字段的最终模型ORM转换时使用
"""
acid: int # 表中的主键ID
class Config:
orm_mode = True
# 数据模型基类: ImsUsersFounderOwnUniGroupsBase用于描述基础字段的类型、用途和注意点
class ImsUsersFounderOwnUniGroupsBase(BaseModel):
founder_uid: int
uni_group_id: int
class ImsUsersFounderOwnUniGroupsCreate(ImsUsersFounderOwnUniGroupsBase):
"""
用于创建新的ims_users_founder_own_uni_groups记录:
- 继承自ImsUsersFounderOwnUniGroupsBase不额外添加字段
- 仅表示此Schema专用于'创建'场景
"""
pass
class ImsUsersFounderOwnUniGroupsUpdate(BaseModel):
"""
用于更新已有ims_users_founder_own_uni_groups记录:
- 只包含可选字段,未在此处的内容将保持不变
- 注意: exclude_unset=True 可以避免更新空值
"""
founder_uid: Optional[int]
uni_group_id: Optional[int]
class ImsUsersFounderOwnUniGroups(ImsUsersFounderOwnUniGroupsBase):
"""
表示完整的ims_users_founder_own_uni_groups记录:
- id: 数据库主键ID
- 包含所有字段的最终模型ORM转换时使用
"""
acid: int # 表中的主键ID
class Config:
orm_mode = True
# 数据模型基类: ImsUsersFounderOwnUsersBase用于描述基础字段的类型、用途和注意点
class ImsUsersFounderOwnUsersBase(BaseModel):
uid: int
founder_uid: int
class ImsUsersFounderOwnUsersCreate(ImsUsersFounderOwnUsersBase):
"""
用于创建新的ims_users_founder_own_users记录:
- 继承自ImsUsersFounderOwnUsersBase不额外添加字段
- 仅表示此Schema专用于'创建'场景
"""
pass
class ImsUsersFounderOwnUsersUpdate(BaseModel):
"""
用于更新已有ims_users_founder_own_users记录:
- 只包含可选字段,未在此处的内容将保持不变
- 注意: exclude_unset=True 可以避免更新空值
"""
uid: Optional[int]
founder_uid: Optional[int]
class ImsUsersFounderOwnUsers(ImsUsersFounderOwnUsersBase):
"""
表示完整的ims_users_founder_own_users记录:
- id: 数据库主键ID
- 包含所有字段的最终模型ORM转换时使用
"""
acid: int # 表中的主键ID
class Config:
orm_mode = True
# 数据模型基类: ImsUsersFounderOwnUsersGroupsBase用于描述基础字段的类型、用途和注意点
class ImsUsersFounderOwnUsersGroupsBase(BaseModel):
founder_uid: int
users_group_id: int
class ImsUsersFounderOwnUsersGroupsCreate(ImsUsersFounderOwnUsersGroupsBase):
"""
用于创建新的ims_users_founder_own_users_groups记录:
- 继承自ImsUsersFounderOwnUsersGroupsBase不额外添加字段
- 仅表示此Schema专用于'创建'场景
"""
pass
class ImsUsersFounderOwnUsersGroupsUpdate(BaseModel):
"""
用于更新已有ims_users_founder_own_users_groups记录:
- 只包含可选字段,未在此处的内容将保持不变
- 注意: exclude_unset=True 可以避免更新空值
"""
founder_uid: Optional[int]
users_group_id: Optional[int]
class ImsUsersFounderOwnUsersGroups(ImsUsersFounderOwnUsersGroupsBase):
"""
表示完整的ims_users_founder_own_users_groups记录:
- id: 数据库主键ID
- 包含所有字段的最终模型ORM转换时使用
"""
acid: int # 表中的主键ID
class Config:
orm_mode = True