ktianc 7fbdcb3b0f 版本升级
1. 新增:微信小程序端新增微信手机号登录功能(必须为企业认证小程序)
2. 新增:加入动态更新常见问题
3. 新增:新增小程序分享功能
4. 新增:小程序新增第一次登录需要修改密码
5. 新增:新增接口权限控制
6. 新增:用户新增is_staff用来判断是否为工作人员
7. 新增:软删除新增is_delete字段来判断,delete_datetime当前主要来记录时间
8. 更新:部分接口删除功能已更新,需要试用软删除的才会试用软删除
9. 更新:更新系统配置缓存功能
10. 更新:接口认证依赖项更新
11. 更新:获取系统基础配置信息与用户协议与隐私协议更新
12. 优化:优化接口与数据库操作
2023-02-27 17:28:27 +08:00

34 lines
1.3 KiB
Python

#!/usr/bin/python
# -*- coding: utf-8 -*-
# @version : 1.0
# @Creaet Time : 2022/7/7 13:41
# @File : role.py
# @IDE : PyCharm
# @desc : 角色模型
from sqlalchemy.orm import relationship
from sqlalchemy_utils import aggregated
from .user import VadminUser
from db.db_base import BaseModel
from sqlalchemy import Column, String, Boolean, Integer, func
from .m2m import vadmin_user_roles, vadmin_role_menus
class VadminRole(BaseModel):
__tablename__ = "vadmin_auth_role"
__table_args__ = ({'comment': '角色表'})
name = Column(String(50), index=True, nullable=False, comment="名称")
role_key = Column(String(50), index=True, nullable=False, comment="权限字符")
disabled = Column(Boolean, default=False, comment="是否禁用")
order = Column(Integer, comment="排序")
desc = Column(String(255), comment="描述")
is_admin = Column(Boolean, comment="是否为超级角色", default=False)
users = relationship("VadminUser", back_populates='roles', secondary=vadmin_user_roles)
menus = relationship("VadminMenu", back_populates='roles', secondary=vadmin_role_menus)
@aggregated('users', Column(Integer, default=0, comment="用户总数"))
def user_total_number(self):
return func.count(VadminUser.id)