refactor(backend): 统一返回的数据格式

This commit is contained in:
zhengxinonly
2025-07-08 22:16:12 +08:00
parent 65e41ac9f1
commit fa69175e65
18 changed files with 212 additions and 113 deletions
+2 -2
View File
@@ -6,14 +6,14 @@ from .role import RoleORM
from .user import UserORM
user_role = db.Table(
"ums_user_role", # 用户-角色中间表名称
"ums_user_role", # 用户 - 角色中间表名称
db.Column("id", db.Integer, primary_key=True, autoincrement=True, comment="标识"),
db.Column("user_id", db.Integer, db.ForeignKey("ums_user.id"), comment="用户编号"),
db.Column("role_id", db.Integer, db.ForeignKey("ums_role.id"), comment="角色编号"),
)
role_rights = db.Table(
"ums_role_rights", # 用户-权限中间表名称
"ums_role_rights", # 用户 - 权限中间表名称
db.Column("id", db.Integer, primary_key=True, autoincrement=True, comment="标识"),
db.Column("rights_id", db.Integer, db.ForeignKey("ums_rights.id"), comment="用户编号"),
db.Column("role_id", db.Integer, db.ForeignKey("ums_role.id"), comment="角色编号"),
+3
View File
@@ -11,3 +11,6 @@ class BaseORM(db.Model):
def delete(self):
db.session.delete(self)
db.session.commit()
def json(self):
return {c.name: getattr(self, c.name) for c in self.__table__.columns}
+2 -11
View File
@@ -5,10 +5,10 @@ from ._base import BaseORM
class DepartmentORM(BaseORM):
__tablename__ = "ums_department"
id = db.Column(db.Integer, primary_key=True, comment="部门ID")
id = db.Column(db.Integer, primary_key=True, comment="部门 ID")
name = db.Column(db.String(50), comment="部门名称")
leader = db.Column(db.String(50), comment="负责人")
enable = db.Column(db.Boolean, comment="状态(1开启,0关闭)", default=True)
enable = db.Column(db.Boolean, comment="状态 (1 开启0 关闭)", default=True)
users = db.relationship("UserORM", backref="department")
@@ -17,12 +17,3 @@ class DepartmentORM(BaseORM):
"DepartmentORM", back_populates="children", remote_side=[id]
) # 自关联
children = db.relationship("DepartmentORM", back_populates="parent")
def json(self):
return {
"id": self.id,
"pid": self.pid,
"name": self.name,
"leader": self.leader,
"enable": self.enable,
}
-14
View File
@@ -30,20 +30,6 @@ class RightsORM(BaseORM):
) # 自关联
children = db.relationship("RightsORM", back_populates="parent")
def json(self):
return {
"id": self.id,
"name": self.name,
"code": self.code,
"type": self.type,
"url": self.url,
"icon_sign": self.icon_sign,
"status": self.status,
"sort": self.sort,
"open_type": self.open_type,
"pid": self.pid,
}
def menu_json(self):
type_map_dict = {"menu": 0, "path": 1}
+1 -10
View File
@@ -13,18 +13,9 @@ class RoleORM(BaseORM):
rights_ids = db.Column(
db.String(512),
comment="权限ids,1,2,5。冗余字段,用户缓存用户权限",
comment="权限 ids,1,2,5。冗余字段,用户缓存用户权限",
)
rights_list = db.relationship(
"RightsORM", secondary="ums_role_rights", backref=db.backref("role")
)
def json(self):
return {
"id": self.id,
"name": self.name,
"code": self.code,
"desc": self.desc,
"rights_ids": self.rights_ids,
}
+6 -10
View File
@@ -10,7 +10,7 @@ from ._base import BaseORM
class UserORM(BaseORM):
__tablename__ = "ums_user"
id = db.Column(db.Integer, primary_key=True, comment="自增id")
id = db.Column(db.Integer, primary_key=True, comment="自增 id")
nickname = db.Column(db.String(128), nullable=False, comment="昵称")
username = db.Column(db.String(128), nullable=False, comment="登录名")
password_hash = db.Column(db.String(102), nullable=False, comment="登录密码")
@@ -24,7 +24,7 @@ class UserORM(BaseORM):
default=datetime.now,
)
department_id = db.Column(
db.Integer, db.ForeignKey("ums_department.id"), default=1, comment="部门id"
db.Integer, db.ForeignKey("ums_department.id"), default=1, comment="部门 id"
)
role_list = db.relationship(
@@ -35,14 +35,10 @@ class UserORM(BaseORM):
)
def json(self):
return {
"id": self.id,
"username": self.username,
"nickname": self.nickname,
"mobile": self.mobile,
"email": self.email,
"create_at": self.create_at.strftime("%Y-%m-%d %H:%M:%S"),
}
create_at = (self.create_at.strftime("%Y-%m-%d %H:%M:%S"),)
data = super().json()
data["create_at"] = create_at
return data
@property
def password(self):