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
+9 -13
View File
@@ -1,6 +1,7 @@
from flask import Blueprint, request
from flask_sqlalchemy.pagination import Pagination
from pear_admin.common.utils.responses import JsonResponse
from pear_admin.extensions import db
from pear_admin.orms import DepartmentORM
@@ -26,17 +27,11 @@ def department_list():
# son_data["isParent"] = True
child_data["children"].append(son_data)
ret.append(child_data)
return {"code": 0, "message": "请求权限数据成功", "data": ret}
return JsonResponse().set_body(ret).set_msg("请求权限数据成功").ok()
q = db.select(DepartmentORM)
pages: Pagination = db.paginate(q, page=page, per_page=per_page)
return {
"code": 0,
"msg": "获取部门数据成功",
"data": [item.json() for item in pages.items],
"count": pages.total,
}
return JsonResponse().set_table(pages).set_msg("获取部门数据成功").ok()
@department_api.post("/department")
@@ -46,7 +41,7 @@ def create_department():
del data["id"]
department = DepartmentORM(**data)
department.save()
return {"code": 0, "msg": "新增部门成功"}
return JsonResponse().set_msg("新增部门成功").ok()
@department_api.put("/department/<int:rid>")
@@ -55,14 +50,15 @@ def change_department(rid):
del data["id"]
department_obj = DepartmentORM.query.get(rid)
for key, value in data.items():
setattr(department_obj, key, value)
for column in DepartmentORM.__table__.columns:
if column.name in data:
setattr(department_obj, column.name, data[column.name])
department_obj.save()
return {"code": 0, "msg": "修改部门成功"}
return JsonResponse().set_msg("修改部门成功").ok()
@department_api.delete("/department/<int:rid>")
def del_department(rid):
department_obj = DepartmentORM.query.get(rid)
department_obj.delete()
return {"code": 0, "msg": "删除删除成功"}
return JsonResponse().set_msg("删除删除成功").ok()
+4 -3
View File
@@ -9,6 +9,7 @@ from flask_jwt_extended import (
jwt_required,
)
from pear_admin.common.utils.responses import JsonResponse
from pear_admin.extensions import db
from pear_admin.orms import RightsORM, RoleORM, UserORM
@@ -24,9 +25,9 @@ def login_in():
).scalar()
if not user:
return {"message": "用户不存在", "code": -1}, 401
return JsonResponse().set_msg("用户不存在").failure(), 401
if not user.check_password(data["password"]):
return {"message": "用户密码错误", "code": -1}, 401
return JsonResponse().set_msg("用户密码错误").failure(), 401
access_token = create_access_token(user)
refresh_token = create_refresh_token(user)
@@ -46,7 +47,7 @@ def login_in():
@passport_api.route("/logout", methods=["GET", "POST"])
@jwt_required()
def logout():
return {"msg": "退出登录成功", "code": 0}
return JsonResponse().set_msg("退出登录成功").ok()
@passport_api.get("/menu")
+8 -6
View File
@@ -3,6 +3,7 @@ from copy import deepcopy
from flask import Blueprint, request
from flask_jwt_extended import jwt_required
from pear_admin.common.utils.responses import JsonResponse
from pear_admin.extensions import db
from pear_admin.orms import RightsORM
@@ -38,7 +39,8 @@ def rights_list():
else:
tree_dict[rights_dict["pid"]].append(rights_dict)
return {"code": 0, "data": tree_dict.get(0)}
return JsonResponse().set_body(tree_dict.get(0)).ok()
if t == "treetable": # tree table 数据
page = request.args.get("page", type=int, default=1)
per_page = request.args.get("per_page", type=int, default=10)
@@ -63,8 +65,8 @@ def rights_list():
data["children"].append(child_data)
data["isParent"] = True
ret.append(data)
return {"code": 0, "msg": "请求权限数据成功", "count": pages.total, "data": ret}
return {"code": 0, "msg": "请求权限数据成功"}
return JsonResponse().set_msg("请求权限数据成功").set_body(ret).ok()
return JsonResponse().set_msg("请求权限数据成功").ok()
@rights_api.post("/rights")
@@ -77,7 +79,7 @@ def create_rights():
data["sort"] = int(data["sort"])
rights_obj = RightsORM(**data)
rights_obj.save()
return {"code": 0, "msg": "新增权限数据成功"}
return JsonResponse().set_msg("新增权限数据成功").ok()
@rights_api.put("/rights/<int:rid>")
@@ -90,7 +92,7 @@ def change_rights(rid):
for key, value in data.items():
setattr(rights_obj, key, value)
rights_obj.save()
return {"code": 0, "msg": "修改权限数据成功"}
return JsonResponse().set_msg("修改权限数据成功").ok()
@rights_api.delete("/rights/<int:rid>")
@@ -98,4 +100,4 @@ def change_rights(rid):
def delete_rights(rid):
rights_obj = RightsORM.query.get(rid)
rights_obj.delete()
return {"code": 0, "msg": "删除权限数据成功"}
return JsonResponse().set_msg("删除权限数据成功").ok()
+7 -16
View File
@@ -1,6 +1,7 @@
from flask import Blueprint, request
from flask_sqlalchemy.pagination import Pagination
from pear_admin.common.utils.responses import JsonResponse
from pear_admin.extensions import db
from pear_admin.orms import RightsORM, RoleORM
@@ -14,13 +15,7 @@ def role_list():
q = db.select(RoleORM)
pages: Pagination = db.paginate(q, page=page, per_page=per_page)
return {
"code": 0,
"msg": "获取角色数据成功",
"data": [item.json() for item in pages.items],
"count": pages.total,
}
return JsonResponse().set_table(pages).set_msg("获取角色数据成功").ok()
@role_api.post("/role")
@@ -30,7 +25,7 @@ def create_role():
del data["id"]
role = RoleORM(**data)
role.save()
return {"code": 0, "msg": "新增角色成功"}
return JsonResponse().set_msg("新增角色成功").ok()
@role_api.put("/role/<int:rid>")
@@ -42,14 +37,14 @@ def change_role(rid):
for key, value in data.items():
setattr(role_obj, key, value)
role_obj.save()
return {"code": 0, "msg": "修改角色权限成功"}
return JsonResponse().set_msg("修改角色权限成功").ok()
@role_api.delete("/role/<int:rid>")
def del_role(rid):
role_obj = RoleORM.query.get(rid)
role_obj.delete()
return {"code": 0, "msg": "删除角色成功"}
return JsonResponse().set_msg("删除角色成功").ok()
@role_api.get("/role/role_rights/<int:rid>")
@@ -59,11 +54,7 @@ def role_rights(rid):
).scalar()
own_rights_list = [r.id for r in role.rights_list]
return {
"code": 0,
"msg": "返回角色权限数据成功",
"data": own_rights_list,
}
return JsonResponse().set_body(own_rights_list).set_msg("删除角色成功").ok()
@role_api.put("/role/role_rights/<int:rid>")
@@ -79,4 +70,4 @@ def change_role_rights(rid):
).all()
role.rights_list = [r[0] for r in rights_obj_list]
role.save()
return {"code": 0, "msg": "授权成功"}
return JsonResponse().set_msg("授权成功").ok()
+8 -21
View File
@@ -4,6 +4,7 @@ from flask import Blueprint, request
from flask_jwt_extended import current_user, jwt_required
from flask_sqlalchemy.pagination import Pagination
from pear_admin.common.utils.responses import JsonResponse
from pear_admin.extensions import db
from pear_admin.orms import RoleORM, UserORM
@@ -18,12 +19,7 @@ def user_list():
pages: Pagination = db.paginate(q, page=page, per_page=per_page)
return {
"code": 0,
"msg": "获取用户数据成功",
"data": [item.json() for item in pages.items],
"count": pages.total,
}
return JsonResponse().set_table(pages).set_msg("获取用户数据成功").ok()
@user_api.post("/user")
@@ -37,7 +33,7 @@ def create_user():
role.create_at = datetime.strptime(create_at, "%Y-%m-%d %H:%M:%S")
role.password = "123456"
role.save()
return {"code": 0, "msg": "新增用户成功"}
return JsonResponse().set_msg("新增用户成功").ok()
@user_api.put("/user/<int:uid>")
@@ -51,14 +47,14 @@ def change_user(uid):
value = datetime.strptime(value, "%Y-%m-%d %H:%M:%S")
setattr(user_obj, key, value)
user_obj.save()
return {"code": 0, "msg": "修改用户信息成功"}
return JsonResponse().set_msg("修改用户信息成功").ok()
@user_api.delete("/user/<int:rid>")
def del_user(rid):
user_obj = UserORM.query.get(rid)
user_obj.delete()
return {"code": 0, "msg": "删除用户成功"}
return JsonResponse().set_msg("删除用户成功").ok()
@user_api.get("/user/user_role/<int:uid>")
@@ -68,12 +64,7 @@ def get_user_role(uid):
).scalar()
wn_role_list = [r.id for r in user.role_list]
return {
"code": 0,
"msg": "返回角色权限数据成功",
"data": wn_role_list,
}
return JsonResponse().set_body(wn_role_list).set_msg("返回角色权限数据成功").ok()
@user_api.put("/user/user_role/<int:rid>")
@@ -89,14 +80,10 @@ def change_user_role(rid):
).all()
user.role_list = [r[0] for r in role_obj_list]
user.save()
return {"code": 0, "msg": "授权成功"}
return JsonResponse().set_msg("授权成功").ok()
@user_api.get("/user/profile")
@jwt_required()
def user_profile():
return {
"code": 0,
"msg": "获取个人数据成功",
"data": current_user.json(),
}
return JsonResponse().set_body(current_user.json()).set_msg("获取个人数据成功").ok()