初始提交
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
from datetime import datetime
|
||||
|
||||
from sqlalchemy import CHAR, Column, DateTime, Integer, String
|
||||
|
||||
from config.database import Base
|
||||
from config.env import DataBaseConfig
|
||||
from utils.common_util import SqlalchemyUtil
|
||||
|
||||
|
||||
class SysConfig(Base):
|
||||
"""
|
||||
参数配置表
|
||||
"""
|
||||
|
||||
__tablename__ = 'sys_config'
|
||||
__table_args__ = {'comment': '参数配置表'}
|
||||
|
||||
config_id = Column(Integer, primary_key=True, nullable=False, autoincrement=True, comment='参数主键')
|
||||
config_name = Column(String(100), nullable=True, server_default="''", comment='参数名称')
|
||||
config_key = Column(String(100), nullable=True, server_default="''", comment='参数键名')
|
||||
config_value = Column(String(500), nullable=True, server_default="''", comment='参数键值')
|
||||
config_type = Column(CHAR(1), nullable=True, server_default='N', comment='系统内置(Y是 N否)')
|
||||
create_by = Column(String(64), nullable=True, server_default="''", comment='创建者')
|
||||
create_time = Column(DateTime, nullable=True, default=datetime.now(), comment='创建时间')
|
||||
update_by = Column(String(64), nullable=True, server_default="''", comment='更新者')
|
||||
update_time = Column(DateTime, nullable=True, default=datetime.now(), comment='更新时间')
|
||||
remark = Column(
|
||||
String(500),
|
||||
nullable=True,
|
||||
server_default=SqlalchemyUtil.get_server_default_null(DataBaseConfig.db_type),
|
||||
comment='备注',
|
||||
)
|
||||
@@ -0,0 +1,46 @@
|
||||
from datetime import datetime
|
||||
|
||||
from sqlalchemy import CHAR, BigInteger, Column, DateTime, Integer, String
|
||||
|
||||
from config.database import Base
|
||||
from config.env import DataBaseConfig
|
||||
from utils.common_util import SqlalchemyUtil
|
||||
|
||||
|
||||
class SysDept(Base):
|
||||
"""
|
||||
部门表
|
||||
"""
|
||||
|
||||
__tablename__ = 'sys_dept'
|
||||
__table_args__ = {'comment': '部门表'}
|
||||
|
||||
dept_id = Column(BigInteger, primary_key=True, autoincrement=True, comment='部门id')
|
||||
parent_id = Column(BigInteger, server_default='0', comment='父部门id')
|
||||
ancestors = Column(String(50), nullable=True, server_default="''", comment='祖级列表')
|
||||
dept_name = Column(String(30), nullable=True, server_default="''", comment='部门名称')
|
||||
order_num = Column(Integer, server_default='0', comment='显示顺序')
|
||||
leader = Column(
|
||||
String(20),
|
||||
nullable=True,
|
||||
server_default=SqlalchemyUtil.get_server_default_null(DataBaseConfig.db_type),
|
||||
comment='负责人',
|
||||
)
|
||||
phone = Column(
|
||||
String(11),
|
||||
nullable=True,
|
||||
server_default=SqlalchemyUtil.get_server_default_null(DataBaseConfig.db_type),
|
||||
comment='联系电话',
|
||||
)
|
||||
email = Column(
|
||||
String(50),
|
||||
nullable=True,
|
||||
server_default=SqlalchemyUtil.get_server_default_null(DataBaseConfig.db_type),
|
||||
comment='邮箱',
|
||||
)
|
||||
status = Column(CHAR(1), nullable=True, server_default='0', comment='部门状态(0正常 1停用)')
|
||||
del_flag = Column(CHAR(1), nullable=True, server_default='0', comment='删除标志(0代表存在 2代表删除)')
|
||||
create_by = Column(String(64), nullable=True, server_default="''", comment='创建者')
|
||||
create_time = Column(DateTime, nullable=True, default=datetime.now(), comment='创建时间')
|
||||
update_by = Column(String(64), nullable=True, server_default="''", comment='更新者')
|
||||
update_time = Column(DateTime, nullable=True, default=datetime.now(), comment='更新时间')
|
||||
@@ -0,0 +1,70 @@
|
||||
from datetime import datetime
|
||||
|
||||
from sqlalchemy import CHAR, BigInteger, Column, DateTime, Integer, String
|
||||
|
||||
from config.database import Base
|
||||
from config.env import DataBaseConfig
|
||||
from utils.common_util import SqlalchemyUtil
|
||||
|
||||
|
||||
class SysDictType(Base):
|
||||
"""
|
||||
字典类型表
|
||||
"""
|
||||
|
||||
__tablename__ = 'sys_dict_type'
|
||||
__table_args__ = {'comment': '字典类型表'}
|
||||
|
||||
dict_id = Column(BigInteger, primary_key=True, nullable=False, autoincrement=True, comment='字典主键')
|
||||
dict_name = Column(String(100), nullable=True, server_default="''", comment='字典名称')
|
||||
dict_type = Column(String(100), unique=True, nullable=True, server_default="''", comment='字典类型')
|
||||
status = Column(CHAR(1), nullable=True, server_default='0', comment='状态(0正常 1停用)')
|
||||
create_by = Column(String(64), nullable=True, server_default="''", comment='创建者')
|
||||
create_time = Column(DateTime, nullable=True, default=datetime.now(), comment='创建时间')
|
||||
update_by = Column(String(64), nullable=True, server_default="''", comment='更新者')
|
||||
update_time = Column(DateTime, nullable=True, default=datetime.now(), comment='更新时间')
|
||||
remark = Column(
|
||||
String(500),
|
||||
nullable=True,
|
||||
server_default=SqlalchemyUtil.get_server_default_null(DataBaseConfig.db_type),
|
||||
comment='备注',
|
||||
)
|
||||
|
||||
|
||||
class SysDictData(Base):
|
||||
"""
|
||||
字典数据表
|
||||
"""
|
||||
|
||||
__tablename__ = 'sys_dict_data'
|
||||
__table_args__ = {'comment': '字典数据表'}
|
||||
|
||||
dict_code = Column(BigInteger, primary_key=True, nullable=False, autoincrement=True, comment='字典编码')
|
||||
dict_sort = Column(Integer, nullable=True, server_default='0', comment='字典排序')
|
||||
dict_label = Column(String(100), nullable=True, server_default="''", comment='字典标签')
|
||||
dict_value = Column(String(100), nullable=True, server_default="''", comment='字典键值')
|
||||
dict_type = Column(String(100), nullable=True, server_default="''", comment='字典类型')
|
||||
css_class = Column(
|
||||
String(100),
|
||||
nullable=True,
|
||||
server_default=SqlalchemyUtil.get_server_default_null(DataBaseConfig.db_type),
|
||||
comment='样式属性(其他样式扩展)',
|
||||
)
|
||||
list_class = Column(
|
||||
String(100),
|
||||
nullable=True,
|
||||
server_default=SqlalchemyUtil.get_server_default_null(DataBaseConfig.db_type),
|
||||
comment='表格回显样式',
|
||||
)
|
||||
is_default = Column(CHAR(1), nullable=True, server_default='N', comment='是否默认(Y是 N否)')
|
||||
status = Column(CHAR(1), nullable=True, server_default='0', comment='状态(0正常 1停用)')
|
||||
create_by = Column(String(64), nullable=True, server_default="''", comment='创建者')
|
||||
create_time = Column(DateTime, nullable=True, default=datetime.now(), comment='创建时间')
|
||||
update_by = Column(String(64), nullable=True, server_default="''", comment='更新者')
|
||||
update_time = Column(DateTime, nullable=True, default=datetime.now(), comment='更新时间')
|
||||
remark = Column(
|
||||
String(500),
|
||||
nullable=True,
|
||||
server_default=SqlalchemyUtil.get_server_default_null(DataBaseConfig.db_type),
|
||||
comment='备注',
|
||||
)
|
||||
@@ -0,0 +1,58 @@
|
||||
from datetime import datetime
|
||||
|
||||
from sqlalchemy import CHAR, BigInteger, Column, DateTime, String
|
||||
|
||||
from config.database import Base
|
||||
|
||||
|
||||
class SysJob(Base):
|
||||
"""
|
||||
定时任务调度表
|
||||
"""
|
||||
|
||||
__tablename__ = 'sys_job'
|
||||
__table_args__ = {'comment': '定时任务调度表'}
|
||||
|
||||
job_id = Column(BigInteger, primary_key=True, nullable=False, autoincrement=True, comment='任务ID')
|
||||
job_name = Column(String(64), primary_key=True, nullable=False, server_default="''", comment='任务名称')
|
||||
job_group = Column(String(64), primary_key=True, nullable=False, server_default='default', comment='任务组名')
|
||||
job_executor = Column(String(64), nullable=True, server_default='default', comment='任务执行器')
|
||||
invoke_target = Column(String(500), nullable=False, comment='调用目标字符串')
|
||||
job_args = Column(String(255), nullable=True, server_default="''", comment='位置参数')
|
||||
job_kwargs = Column(String(255), nullable=True, server_default="''", comment='关键字参数')
|
||||
cron_expression = Column(String(255), nullable=True, server_default="''", comment='cron执行表达式')
|
||||
misfire_policy = Column(
|
||||
String(20),
|
||||
nullable=True,
|
||||
server_default='3',
|
||||
comment='计划执行错误策略(1立即执行 2执行一次 3放弃执行)',
|
||||
)
|
||||
concurrent = Column(CHAR(1), nullable=True, server_default='1', comment='是否并发执行(0允许 1禁止)')
|
||||
status = Column(CHAR(1), nullable=True, server_default='0', comment='状态(0正常 1暂停)')
|
||||
create_by = Column(String(64), nullable=True, server_default="''", comment='创建者')
|
||||
create_time = Column(DateTime, nullable=True, default=datetime.now(), comment='创建时间')
|
||||
update_by = Column(String(64), nullable=True, server_default="''", comment='更新者')
|
||||
update_time = Column(DateTime, nullable=True, default=datetime.now(), comment='更新时间')
|
||||
remark = Column(String(500), nullable=True, server_default="''", comment='备注信息')
|
||||
|
||||
|
||||
class SysJobLog(Base):
|
||||
"""
|
||||
定时任务调度日志表
|
||||
"""
|
||||
|
||||
__tablename__ = 'sys_job_log'
|
||||
__table_args__ = {'comment': '定时任务调度日志表'}
|
||||
|
||||
job_log_id = Column(BigInteger, primary_key=True, nullable=False, autoincrement=True, comment='任务日志ID')
|
||||
job_name = Column(String(64), nullable=False, comment='任务名称')
|
||||
job_group = Column(String(64), nullable=False, comment='任务组名')
|
||||
job_executor = Column(String(64), nullable=False, comment='任务执行器')
|
||||
invoke_target = Column(String(500), nullable=False, comment='调用目标字符串')
|
||||
job_args = Column(String(255), nullable=True, server_default="''", comment='位置参数')
|
||||
job_kwargs = Column(String(255), nullable=True, server_default="''", comment='关键字参数')
|
||||
job_trigger = Column(String(255), nullable=True, server_default="''", comment='任务触发器')
|
||||
job_message = Column(String(500), nullable=True, comment='日志信息')
|
||||
status = Column(CHAR(1), nullable=True, server_default='0', comment='执行状态(0正常 1失败)')
|
||||
exception_info = Column(String(2000), nullable=True, server_default="''", comment='异常信息')
|
||||
create_time = Column(DateTime, nullable=True, default=datetime.now(), comment='创建时间')
|
||||
@@ -0,0 +1,60 @@
|
||||
from datetime import datetime
|
||||
|
||||
from sqlalchemy import CHAR, BigInteger, Column, DateTime, Index, Integer, String
|
||||
|
||||
from config.database import Base
|
||||
|
||||
|
||||
class SysLogininfor(Base):
|
||||
"""
|
||||
系统访问记录
|
||||
"""
|
||||
|
||||
__tablename__ = 'sys_logininfor'
|
||||
__table_args__ = {'comment': '系统访问记录'}
|
||||
|
||||
info_id = Column(BigInteger, primary_key=True, nullable=False, autoincrement=True, comment='访问ID')
|
||||
user_name = Column(String(50), nullable=True, server_default="''", comment='用户账号')
|
||||
ipaddr = Column(String(128), nullable=True, server_default="''", comment='登录IP地址')
|
||||
login_location = Column(String(255), nullable=True, server_default="''", comment='登录地点')
|
||||
browser = Column(String(50), nullable=True, server_default="''", comment='浏览器类型')
|
||||
os = Column(String(50), nullable=True, server_default="''", comment='操作系统')
|
||||
status = Column(CHAR(1), nullable=True, server_default='0', comment='登录状态(0成功 1失败)')
|
||||
msg = Column(String(255), nullable=True, server_default="''", comment='提示消息')
|
||||
login_time = Column(DateTime, nullable=True, default=datetime.now(), comment='访问时间')
|
||||
|
||||
idx_sys_logininfor_s = Index('idx_sys_logininfor_s', status)
|
||||
idx_sys_logininfor_lt = Index('idx_sys_logininfor_lt', login_time)
|
||||
|
||||
|
||||
class SysOperLog(Base):
|
||||
"""
|
||||
操作日志记录
|
||||
"""
|
||||
|
||||
__tablename__ = 'sys_oper_log'
|
||||
__table_args__ = {'comment': '操作日志记录'}
|
||||
|
||||
oper_id = Column(BigInteger, primary_key=True, nullable=False, autoincrement=True, comment='日志主键')
|
||||
title = Column(String(50), nullable=True, server_default="''", comment='模块标题')
|
||||
business_type = Column(Integer, nullable=True, server_default='0', comment='业务类型(0其它 1新增 2修改 3删除)')
|
||||
method = Column(String(100), nullable=True, server_default="''", comment='方法名称')
|
||||
request_method = Column(String(10), nullable=True, server_default="''", comment='请求方式')
|
||||
operator_type = Column(
|
||||
Integer, nullable=True, server_default='0', comment='操作类别(0其它 1后台用户 2手机端用户)'
|
||||
)
|
||||
oper_name = Column(String(50), nullable=True, server_default="''", comment='操作人员')
|
||||
dept_name = Column(String(50), nullable=True, server_default="''", comment='部门名称')
|
||||
oper_url = Column(String(255), nullable=True, server_default="''", comment='请求URL')
|
||||
oper_ip = Column(String(128), nullable=True, server_default="''", comment='主机地址')
|
||||
oper_location = Column(String(255), nullable=True, server_default="''", comment='操作地点')
|
||||
oper_param = Column(String(2000), nullable=True, server_default="''", comment='请求参数')
|
||||
json_result = Column(String(2000), nullable=True, server_default="''", comment='返回参数')
|
||||
status = Column(Integer, nullable=True, server_default='0', comment='操作状态(0正常 1异常)')
|
||||
error_msg = Column(String(2000), nullable=True, server_default="''", comment='错误消息')
|
||||
oper_time = Column(DateTime, nullable=True, default=datetime.now(), comment='操作时间')
|
||||
cost_time = Column(BigInteger, nullable=True, server_default='0', comment='消耗时间')
|
||||
|
||||
idx_sys_oper_log_bt = Index('idx_sys_oper_log_bt', business_type)
|
||||
idx_sys_oper_log_s = Index('idx_sys_oper_log_s', status)
|
||||
idx_sys_oper_log_ot = Index('idx_sys_oper_log_ot', oper_time)
|
||||
@@ -0,0 +1,52 @@
|
||||
from datetime import datetime
|
||||
|
||||
from sqlalchemy import CHAR, BigInteger, Column, DateTime, Integer, String
|
||||
|
||||
from config.database import Base
|
||||
from config.env import DataBaseConfig
|
||||
from utils.common_util import SqlalchemyUtil
|
||||
|
||||
|
||||
class SysMenu(Base):
|
||||
"""
|
||||
菜单权限表
|
||||
"""
|
||||
|
||||
__tablename__ = 'sys_menu'
|
||||
__table_args__ = {'comment': '菜单权限表'}
|
||||
|
||||
menu_id = Column(BigInteger, primary_key=True, nullable=False, autoincrement=True, comment='菜单ID')
|
||||
menu_name = Column(String(50), nullable=False, comment='菜单名称')
|
||||
parent_id = Column(BigInteger, nullable=True, server_default='0', comment='父菜单ID')
|
||||
order_num = Column(Integer, server_default='0', comment='显示顺序')
|
||||
path = Column(String(200), nullable=True, server_default="''", comment='路由地址')
|
||||
component = Column(
|
||||
String(255),
|
||||
nullable=True,
|
||||
server_default=SqlalchemyUtil.get_server_default_null(DataBaseConfig.db_type),
|
||||
comment='组件路径',
|
||||
)
|
||||
query = Column(
|
||||
String(255),
|
||||
nullable=True,
|
||||
server_default=SqlalchemyUtil.get_server_default_null(DataBaseConfig.db_type),
|
||||
comment='路由参数',
|
||||
)
|
||||
route_name = Column(String(50), nullable=True, server_default="''", comment='路由名称')
|
||||
is_frame = Column(Integer, nullable=True, server_default='1', comment='是否为外链(0是 1否)')
|
||||
is_cache = Column(Integer, nullable=True, server_default='0', comment='是否缓存(0缓存 1不缓存)')
|
||||
menu_type = Column(CHAR(1), nullable=True, server_default="''", comment='菜单类型(M目录 C菜单 F按钮)')
|
||||
visible = Column(CHAR(1), nullable=True, server_default='0', comment='菜单状态(0显示 1隐藏)')
|
||||
status = Column(CHAR(1), nullable=True, server_default='0', comment='菜单状态(0正常 1停用)')
|
||||
perms = Column(
|
||||
String(100),
|
||||
nullable=True,
|
||||
server_default=SqlalchemyUtil.get_server_default_null(DataBaseConfig.db_type),
|
||||
comment='权限标识',
|
||||
)
|
||||
icon = Column(String(100), nullable=True, server_default='#', comment='菜单图标')
|
||||
create_by = Column(String(64), nullable=True, server_default="''", comment='创建者')
|
||||
create_time = Column(DateTime, nullable=True, default=datetime.now(), comment='创建时间')
|
||||
update_by = Column(String(64), nullable=True, server_default="''", comment='更新者')
|
||||
update_time = Column(DateTime, nullable=True, default=datetime.now(), comment='更新时间')
|
||||
remark = Column(String(500), nullable=True, server_default="''", comment='备注')
|
||||
@@ -0,0 +1,38 @@
|
||||
from datetime import datetime
|
||||
|
||||
from sqlalchemy import CHAR, Column, DateTime, Integer, LargeBinary, String
|
||||
from sqlalchemy.dialects import mysql
|
||||
|
||||
from config.database import Base
|
||||
from config.env import DataBaseConfig
|
||||
from utils.common_util import SqlalchemyUtil
|
||||
|
||||
|
||||
class SysNotice(Base):
|
||||
"""
|
||||
通知公告表
|
||||
"""
|
||||
|
||||
__tablename__ = 'sys_notice'
|
||||
__table_args__ = {'comment': '通知公告表'}
|
||||
|
||||
notice_id = Column(Integer, primary_key=True, nullable=False, autoincrement=True, comment='公告ID')
|
||||
notice_title = Column(String(50), nullable=False, comment='公告标题')
|
||||
notice_type = Column(CHAR(1), nullable=False, comment='公告类型(1通知 2公告)')
|
||||
notice_content = Column(
|
||||
mysql.LONGBLOB if DataBaseConfig.db_type == 'mysql' else LargeBinary,
|
||||
nullable=True,
|
||||
server_default=SqlalchemyUtil.get_server_default_null(DataBaseConfig.db_type, False),
|
||||
comment='公告内容',
|
||||
)
|
||||
status = Column(CHAR(1), nullable=True, server_default='0', comment='公告状态(0正常 1关闭)')
|
||||
create_by = Column(String(64), nullable=True, server_default="''", comment='创建者')
|
||||
create_time = Column(DateTime, nullable=True, comment='创建时间', default=datetime.now())
|
||||
update_by = Column(String(64), nullable=True, server_default="''", comment='更新者')
|
||||
update_time = Column(DateTime, nullable=True, comment='更新时间', default=datetime.now())
|
||||
remark = Column(
|
||||
String(255),
|
||||
nullable=True,
|
||||
server_default=SqlalchemyUtil.get_server_default_null(DataBaseConfig.db_type),
|
||||
comment='备注',
|
||||
)
|
||||
@@ -0,0 +1,32 @@
|
||||
from datetime import datetime
|
||||
|
||||
from sqlalchemy import CHAR, BigInteger, Column, DateTime, Integer, String
|
||||
|
||||
from config.database import Base
|
||||
from config.env import DataBaseConfig
|
||||
from utils.common_util import SqlalchemyUtil
|
||||
|
||||
|
||||
class SysPost(Base):
|
||||
"""
|
||||
岗位信息表
|
||||
"""
|
||||
|
||||
__tablename__ = 'sys_post'
|
||||
__table_args__ = {'comment': '岗位信息表'}
|
||||
|
||||
post_id = Column(BigInteger, primary_key=True, nullable=False, autoincrement=True, comment='岗位ID')
|
||||
post_code = Column(String(64), nullable=False, comment='岗位编码')
|
||||
post_name = Column(String(50), nullable=False, comment='岗位名称')
|
||||
post_sort = Column(Integer, nullable=False, comment='显示顺序')
|
||||
status = Column(CHAR(1), nullable=False, comment='状态(0正常 1停用)')
|
||||
create_by = Column(String(64), nullable=True, server_default="''", comment='创建者')
|
||||
create_time = Column(DateTime, nullable=True, default=datetime.now(), comment='创建时间')
|
||||
update_by = Column(String(64), nullable=True, server_default="''", comment='更新者')
|
||||
update_time = Column(DateTime, nullable=True, default=datetime.now(), comment='更新时间')
|
||||
remark = Column(
|
||||
String(500),
|
||||
nullable=True,
|
||||
server_default=SqlalchemyUtil.get_server_default_null(DataBaseConfig.db_type),
|
||||
comment='备注',
|
||||
)
|
||||
@@ -0,0 +1,76 @@
|
||||
from datetime import datetime
|
||||
|
||||
from sqlalchemy import CHAR, BigInteger, Column, DateTime, Integer, SmallInteger, String
|
||||
from sqlalchemy.dialects import mysql
|
||||
|
||||
from config.database import Base
|
||||
from config.env import DataBaseConfig
|
||||
from utils.common_util import SqlalchemyUtil
|
||||
|
||||
|
||||
class SysRole(Base):
|
||||
"""
|
||||
角色信息表
|
||||
"""
|
||||
|
||||
__tablename__ = 'sys_role'
|
||||
__table_args__ = {'comment': '角色信息表'}
|
||||
|
||||
role_id = Column(BigInteger, primary_key=True, nullable=False, autoincrement=True, comment='角色ID')
|
||||
role_name = Column(String(30), nullable=False, comment='角色名称')
|
||||
role_key = Column(String(100), nullable=False, comment='角色权限字符串')
|
||||
role_sort = Column(Integer, nullable=False, comment='显示顺序')
|
||||
data_scope = Column(
|
||||
CHAR(1),
|
||||
nullable=True,
|
||||
server_default='1',
|
||||
comment='数据范围(1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限)',
|
||||
)
|
||||
menu_check_strictly = Column(
|
||||
mysql.TINYINT(display_width=1) if DataBaseConfig.db_type == 'mysql' else SmallInteger,
|
||||
nullable=True,
|
||||
server_default='1',
|
||||
comment='菜单树选择项是否关联显示',
|
||||
)
|
||||
dept_check_strictly = Column(
|
||||
mysql.TINYINT(display_width=1) if DataBaseConfig.db_type == 'mysql' else SmallInteger,
|
||||
nullable=True,
|
||||
server_default='1',
|
||||
comment='部门树选择项是否关联显示',
|
||||
)
|
||||
status = Column(CHAR(1), nullable=False, comment='角色状态(0正常 1停用)')
|
||||
del_flag = Column(CHAR(1), nullable=True, server_default='0', comment='删除标志(0代表存在 2代表删除)')
|
||||
create_by = Column(String(64), nullable=True, server_default="''", comment='创建者')
|
||||
create_time = Column(DateTime, nullable=True, default=datetime.now(), comment='创建时间')
|
||||
update_by = Column(String(64), nullable=True, server_default="''", comment='更新者')
|
||||
update_time = Column(DateTime, nullable=True, default=datetime.now(), comment='更新时间')
|
||||
remark = Column(
|
||||
String(500),
|
||||
nullable=True,
|
||||
server_default=SqlalchemyUtil.get_server_default_null(DataBaseConfig.db_type),
|
||||
comment='备注',
|
||||
)
|
||||
|
||||
|
||||
class SysRoleDept(Base):
|
||||
"""
|
||||
角色和部门关联表
|
||||
"""
|
||||
|
||||
__tablename__ = 'sys_role_dept'
|
||||
__table_args__ = {'comment': '角色和部门关联表'}
|
||||
|
||||
role_id = Column(BigInteger, primary_key=True, nullable=False, comment='角色ID')
|
||||
dept_id = Column(BigInteger, primary_key=True, nullable=False, comment='部门ID')
|
||||
|
||||
|
||||
class SysRoleMenu(Base):
|
||||
"""
|
||||
角色和菜单关联表
|
||||
"""
|
||||
|
||||
__tablename__ = 'sys_role_menu'
|
||||
__table_args__ = {'comment': '角色和菜单关联表'}
|
||||
|
||||
role_id = Column(BigInteger, primary_key=True, nullable=False, comment='角色ID')
|
||||
menu_id = Column(BigInteger, primary_key=True, nullable=False, comment='菜单ID')
|
||||
@@ -0,0 +1,71 @@
|
||||
from datetime import datetime
|
||||
|
||||
from sqlalchemy import CHAR, BigInteger, Column, DateTime, String
|
||||
|
||||
from config.database import Base
|
||||
from config.env import DataBaseConfig
|
||||
from utils.common_util import SqlalchemyUtil
|
||||
|
||||
|
||||
class SysUser(Base):
|
||||
"""
|
||||
用户信息表
|
||||
"""
|
||||
|
||||
__tablename__ = 'sys_user'
|
||||
__table_args__ = {'comment': '用户信息表'}
|
||||
|
||||
user_id = Column(BigInteger, primary_key=True, nullable=False, autoincrement=True, comment='用户ID')
|
||||
dept_id = Column(
|
||||
BigInteger,
|
||||
nullable=True,
|
||||
server_default=SqlalchemyUtil.get_server_default_null(DataBaseConfig.db_type, False),
|
||||
comment='部门ID',
|
||||
)
|
||||
user_name = Column(String(30), nullable=False, comment='用户账号')
|
||||
nick_name = Column(String(30), nullable=False, comment='用户昵称')
|
||||
user_type = Column(String(2), nullable=True, server_default='00', comment='用户类型(00系统用户)')
|
||||
email = Column(String(50), nullable=True, server_default="''", comment='用户邮箱')
|
||||
phonenumber = Column(String(11), nullable=True, server_default="''", comment='手机号码')
|
||||
sex = Column(CHAR(1), nullable=True, server_default='0', comment='用户性别(0男 1女 2未知)')
|
||||
avatar = Column(String(100), nullable=True, server_default="''", comment='头像地址')
|
||||
password = Column(String(100), nullable=True, server_default="''", comment='密码')
|
||||
status = Column(CHAR(1), nullable=True, server_default='0', comment='帐号状态(0正常 1停用)')
|
||||
del_flag = Column(CHAR(1), nullable=True, server_default='0', comment='删除标志(0代表存在 2代表删除)')
|
||||
login_ip = Column(String(128), nullable=True, server_default="''", comment='最后登录IP')
|
||||
login_date = Column(DateTime, nullable=True, comment='最后登录时间')
|
||||
pwd_update_date = Column(DateTime, nullable=True, comment='密码最后更新时间')
|
||||
create_by = Column(String(64), nullable=True, server_default="''", comment='创建者')
|
||||
create_time = Column(DateTime, nullable=True, comment='创建时间', default=datetime.now())
|
||||
update_by = Column(String(64), nullable=True, server_default="''", comment='更新者')
|
||||
update_time = Column(DateTime, nullable=True, comment='更新时间', default=datetime.now())
|
||||
remark = Column(
|
||||
String(500),
|
||||
nullable=True,
|
||||
server_default=SqlalchemyUtil.get_server_default_null(DataBaseConfig.db_type),
|
||||
comment='备注',
|
||||
)
|
||||
|
||||
|
||||
class SysUserRole(Base):
|
||||
"""
|
||||
用户和角色关联表
|
||||
"""
|
||||
|
||||
__tablename__ = 'sys_user_role'
|
||||
__table_args__ = {'comment': '用户和角色关联表'}
|
||||
|
||||
user_id = Column(BigInteger, primary_key=True, nullable=False, comment='用户ID')
|
||||
role_id = Column(BigInteger, primary_key=True, nullable=False, comment='角色ID')
|
||||
|
||||
|
||||
class SysUserPost(Base):
|
||||
"""
|
||||
用户与岗位关联表
|
||||
"""
|
||||
|
||||
__tablename__ = 'sys_user_post'
|
||||
__table_args__ = {'comment': '用户与岗位关联表'}
|
||||
|
||||
user_id = Column(BigInteger, primary_key=True, nullable=False, comment='用户ID')
|
||||
post_id = Column(BigInteger, primary_key=True, nullable=False, comment='岗位ID')
|
||||
Reference in New Issue
Block a user