121 lines
3.0 KiB
Python
121 lines
3.0 KiB
Python
|
# _*_ coding : UTF-8 _*_
|
|||
|
# @Time : 2025/01/18 03:21
|
|||
|
# @UpdateTime : 2025/01/18 03:21
|
|||
|
# @Author : sonder
|
|||
|
# @File : department.py
|
|||
|
# @Software : PyCharm
|
|||
|
# @Comment : 本程序
|
|||
|
from tortoise import fields
|
|||
|
|
|||
|
from models.common import BaseModel
|
|||
|
|
|||
|
|
|||
|
class Department(BaseModel):
|
|||
|
"""
|
|||
|
部门表模型。
|
|||
|
"""
|
|||
|
|
|||
|
name = fields.CharField(
|
|||
|
max_length=100,
|
|||
|
description="部门名称",
|
|||
|
source_field="name" # 映射到数据库字段 name
|
|||
|
)
|
|||
|
"""
|
|||
|
部门名称。
|
|||
|
- 最大长度为 100 个字符。
|
|||
|
- 映射到数据库字段 name。
|
|||
|
"""
|
|||
|
|
|||
|
parent_id = fields.CharField(
|
|||
|
max_length=36,
|
|||
|
default="",
|
|||
|
null=True,
|
|||
|
description="父部门ID",
|
|||
|
source_field="parent_id" # 映射到数据库字段 parent_id
|
|||
|
)
|
|||
|
"""
|
|||
|
父部门ID。
|
|||
|
- 用于表示部门的层级关系。
|
|||
|
- 默认为空字符串,表示顶级部门。
|
|||
|
- 映射到数据库字段 parent_id。
|
|||
|
"""
|
|||
|
|
|||
|
sort = fields.IntField(
|
|||
|
default=0,
|
|||
|
description="排序权重(0最高)",
|
|||
|
source_field="sort" # 映射到数据库字段 sort
|
|||
|
)
|
|||
|
"""
|
|||
|
排序权重。
|
|||
|
- 用于部门列表的排序,值越小越靠前。
|
|||
|
- 默认为 0。
|
|||
|
- 映射到数据库字段 sort。
|
|||
|
"""
|
|||
|
|
|||
|
phone = fields.CharField(
|
|||
|
max_length=30,
|
|||
|
null=True,
|
|||
|
description="部门电话",
|
|||
|
source_field="phone" # 映射到数据库字段 phone
|
|||
|
)
|
|||
|
"""
|
|||
|
部门电话。
|
|||
|
- 最大长度为 30 个字符。
|
|||
|
- 允许为空。
|
|||
|
- 映射到数据库字段 phone。
|
|||
|
"""
|
|||
|
|
|||
|
principal = fields.CharField(
|
|||
|
max_length=64,
|
|||
|
description="部门负责人",
|
|||
|
source_field="principal" # 映射到数据库字段 principal
|
|||
|
)
|
|||
|
"""
|
|||
|
部门负责人。
|
|||
|
- 最大长度为 64 个字符。
|
|||
|
- 映射到数据库字段 principal。
|
|||
|
"""
|
|||
|
|
|||
|
email = fields.CharField(
|
|||
|
max_length=128,
|
|||
|
null=True,
|
|||
|
description="部门邮箱",
|
|||
|
source_field="email" # 映射到数据库字段 email
|
|||
|
)
|
|||
|
"""
|
|||
|
部门邮箱。
|
|||
|
- 最大长度为 128 个字符。
|
|||
|
- 允许为空。
|
|||
|
- 映射到数据库字段 email。
|
|||
|
"""
|
|||
|
|
|||
|
status = fields.SmallIntField(
|
|||
|
default=1,
|
|||
|
description="状态(0正常 1停用)",
|
|||
|
source_field="status" # 映射到数据库字段 status
|
|||
|
)
|
|||
|
"""
|
|||
|
状态。
|
|||
|
- 1 表示正常,0 表示停用。
|
|||
|
- 默认为 1。
|
|||
|
- 映射到数据库字段 status。
|
|||
|
"""
|
|||
|
|
|||
|
remark = fields.CharField(
|
|||
|
max_length=255,
|
|||
|
null=True,
|
|||
|
description="备注信息",
|
|||
|
source_field="remark" # 映射到数据库字段 remark
|
|||
|
)
|
|||
|
"""
|
|||
|
备注信息。
|
|||
|
- 最大长度为 255 个字符。
|
|||
|
- 允许为空。
|
|||
|
- 映射到数据库字段 remark。
|
|||
|
"""
|
|||
|
|
|||
|
class Meta:
|
|||
|
table = "department" # 数据库表名
|
|||
|
table_description = "部门表" # 表描述
|
|||
|
ordering = ["sort", "-create_time"] # 默认按排序权重和创建时间排序
|