From 9f8fe2c83e659133691bb33bcc3dbf6bf2094724 Mon Sep 17 00:00:00 2001 From: wojiaoyishang Date: Mon, 20 Jan 2025 14:59:41 +0800 Subject: [PATCH] =?UTF-8?q?Update:=20=EF=BC=88=E6=AD=A5=E9=AA=A4=E5=A4=87?= =?UTF-8?q?=E4=BB=BD=EF=BC=89=E8=A7=92=E8=89=B2=E7=AE=A1=E7=90=86=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E6=9B=B4=E6=96=B0=E5=AE=8C=E6=88=90=E5=B9=B6=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E5=8F=82=E6=95=B0=E6=95=88=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- applications/view/system/rights.py | 6 ---- applications/view/system/role.py | 58 +++++++++++++++++++++--------- templates/system/role/add.html | 16 ++++----- templates/system/role/edit.html | 17 +++++---- templates/system/role/main.html | 25 ++++++------- templates/system/role/power.html | 7 ++-- templates/system/user/main.html | 6 ++-- 7 files changed, 79 insertions(+), 56 deletions(-) diff --git a/applications/view/system/rights.py b/applications/view/system/rights.py index 1491298..c1a107f 100644 --- a/applications/view/system/rights.py +++ b/applications/view/system/rights.py @@ -119,9 +119,6 @@ def menu(): # 当前节点添加子节点 _dict['children'] = copy.deepcopy(menu_dict[_dict['id']]) _dict['children'].sort(key=lambda item: item['sort']) - # 为每个子菜单添加 "openType": "_component" - for child in _dict['children']: - child['openType'] = '_component' # 删除子节点 del menu_dict[_dict['id']] @@ -142,9 +139,6 @@ def menu(): # 当前节点添加子节点 _dict['children'] = copy.deepcopy(menu_dict[_dict['id']]) _dict['children'].sort(key=lambda item: item['sort']) - # 为每个子菜单添加 "openType": "_component" - for child in _dict['children']: - child['openType'] = '_component' # 删除子节点 del menu_dict[_dict['id']] diff --git a/applications/view/system/role.py b/applications/view/system/role.py index 54b9f81..888a473 100644 --- a/applications/view/system/role.py +++ b/applications/view/system/role.py @@ -45,21 +45,31 @@ def add(): @authorize("system:role:add", log=True) def save(): req = request.get_json(force=True) - details = str_escape(req.get("details")) - enable = str_escape(req.get("enable")) - roleCode = str_escape(req.get("roleCode")) - roleName = str_escape(req.get("roleName")) - sort = str_escape(req.get("sort")) - role = Role( - details=details, - enable=enable, - code=roleCode, - name=roleName, - sort=sort - ) + + data = { + "details": str_escape(req.get("details")), + "enable": str_escape(req.get("enable")), + "code": str_escape(req.get("roleCode")), # 角色标识 + "name": str_escape(req.get("roleName")), # 角色名称 + "sort": str_escape(req.get("sort")) + } + + details = data.get('details') + del data['details'] + + if not all(data.values()): + return fail_api(msg="参数不足") + + data['details'] = details + + # 参数效验 + if not data['sort'].isdigit(): + return fail_api(msg="参数 sort 需为整数") + + role = Role(**data) db.session.add(role) db.session.commit() - return success_api(msg="成功") + return success_api(msg="添加角色成功") # 角色授权 @@ -103,6 +113,9 @@ def save_role_power(): role_id = req_form.get("roleId") role = Role.query.filter_by(id=role_id).first() + if not role: + return fail_api(msg="角色不存在") + powers = Power.query.filter(Power.id.in_(power_list)).all() role.power = powers @@ -124,6 +137,7 @@ def edit(id): def update(): req_json = request.get_json(force=True) id = req_json.get("roleId") + data = { "code": str_escape(req_json.get("roleCode")), "name": str_escape(req_json.get("roleName")), @@ -131,10 +145,18 @@ def update(): "enable": str_escape(req_json.get("enable")), "details": str_escape(req_json.get("details")) } + + if not data['enable'].isdigit(): + return fail_api(msg="参数 enable 需为整数") + + if not data['sort'].isdigit(): + return fail_api(msg="参数 sort 需为整数") + role = Role.query.filter_by(id=id).update(data) db.session.commit() if not role: return fail_api(msg="更新角色失败") + return success_api(msg="更新角色成功") @@ -142,9 +164,9 @@ def update(): @bp.put('/enable') @authorize("system:role:edit", log=True) def enable(): - id = request.get_json(force=True).get('roleId') - if id: - res = enable_status(Role, id) + _id = request.get_json(force=True).get('roleId') + if _id: + res = enable_status(Role, _id) if not res: return fail_api(msg="出错啦") return success_api(msg="启动成功") @@ -169,6 +191,10 @@ def dis_enable(): @authorize("system:role:remove", log=True) def remove(id): role = Role.query.filter_by(id=id).first() + + if not role: + return fail_api(msg="角色不存在") + # 删除该角色的权限和用户 role.power = [] role.user = [] diff --git a/templates/system/role/add.html b/templates/system/role/add.html index 86c76df..17075e3 100644 --- a/templates/system/role/add.html +++ b/templates/system/role/add.html @@ -11,14 +11,14 @@
-
-
@@ -31,15 +31,15 @@
-
- +
+
- +
@@ -47,11 +47,11 @@
- - diff --git a/templates/system/role/edit.html b/templates/system/role/edit.html index c840284..360bcf6 100644 --- a/templates/system/role/edit.html +++ b/templates/system/role/edit.html @@ -12,21 +12,21 @@
+ autocomplete="off" placeholder="角色编号" class="layui-input">
+ autocomplete="off" placeholder="角色名称" class="layui-input">
+ autocomplete="off" placeholder="角色标识" class="layui-input">
@@ -40,16 +40,15 @@
-
+
+ placeholder="排序" min="0" step="1" lay-affix="number" class="layui-input">
-
@@ -58,12 +57,12 @@
- - diff --git a/templates/system/role/main.html b/templates/system/role/main.html index 850cecd..8463b11 100644 --- a/templates/system/role/main.html +++ b/templates/system/role/main.html @@ -2,12 +2,13 @@ 用户管理 - {% include 'system/common/header.html' %} + {% include 'system/common/header.html' %} +
-
+
@@ -16,11 +17,11 @@
- - @@ -34,11 +35,11 @@
- +{% include 'system/common/footer.html' %} -{% include 'system/common/footer.html' %} +