只改了一个文件:

django/backend/view.py

删除了第 99~125 行的重复定义(旧 PERMISSION_TO_SHENFEN、SHENFEN_PROFILE_MAP、旧 check_fadan_permission)
现在统一使用 django/backend/utils.py 里的正确实现
This commit is contained in:
XingQue
2026-06-16 15:10:43 +08:00
parent 635421b218
commit 78ca10a975

View File

@@ -19,7 +19,7 @@ from django.conf import settings
from django.core.exceptions import ObjectDoesNotExist
from django.core.paginator import Paginator
from django.db import models, transaction, IntegrityError
from django.db.models import Q, Count, Sum, F, Exists, OuterRef
from django.db.models import Q, Count, Sum, F, Exists, OuterRef
from gvsdsdk.fluent import db, func, FQ
from django.db.models.functions import TruncDate, TruncMonth, TruncYear
from django.contrib.auth.hashers import make_password
@@ -96,36 +96,6 @@ from .serializers import PopupPageSerializer
logger = logging.getLogger('houtai')
SHOP_PRODUCT_PERMS = ['1199ab', '1199abc', '1199abd']
# 罚单权限 → 被处罚人身份 映射
PERMISSION_TO_SHENFEN = {
'100001': 1, # 管理打手权限 → 可处罚打手(shenfen=1)
'100002': 2, # 管理管事权限 → 可处罚管事(shenfen=2)
'100003': 3, # 管理商家权限 → 可处罚商家(shenfen=3)
'100004': 4, # 管理组长权限 → 可处罚组长(shenfen=4)
}
# 被处罚人身份 → 用户扩展表属性名 映射
SHENFEN_PROFILE_MAP = {
1: 'dashou_profile', # 打手
2: 'guanshi_profile', # 管事
3: 'shangjia_profile', # 商家
4: 'zuzhang_profile', # 组长
}
def check_fadan_permission(permissions, shenfen):
"""
检查当前权限是否允许操作指定身份的罚单。
permissions: 用户拥有的权限代码列表
shenfen: 被处罚人身份1=打手, 2=管事, 3=商家, 4=组长)
"""
for perm_code, target_shenfen in PERMISSION_TO_SHENFEN.items():
if perm_code in permissions and target_shenfen == shenfen:
return True
return False
class GetRolePermissionView(APIView):
"""
获取所有角色、权限以及角色关联的用户数