feat: 添加app 获取对应actions接口

pull/8728/head
feng626 2022-08-09 21:57:22 +08:00 committed by Jiangjie.Bai
parent a14ebc5f0f
commit 28c8ec1fab
2 changed files with 17 additions and 3 deletions

View File

@ -1,8 +1,12 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# #
from applications.models import Application from rest_framework.response import Response
from perms.models import ApplicationPermission from rest_framework.generics import RetrieveAPIView
from perms import serializers from perms import serializers
from perms.models import ApplicationPermission
from applications.models import Application
from common.permissions import IsValidUser
from ..base import BasePermissionViewSet from ..base import BasePermissionViewSet
@ -23,7 +27,7 @@ class ApplicationPermissionViewSet(BasePermissionViewSet):
'application_id', 'application', 'app', 'app_name' 'application_id', 'application', 'app', 'app_name'
] ]
ordering_fields = ('name',) ordering_fields = ('name',)
ordering = ('name', ) ordering = ('name',)
def get_queryset(self): def get_queryset(self):
queryset = super().get_queryset().prefetch_related( queryset = super().get_queryset().prefetch_related(
@ -53,3 +57,11 @@ class ApplicationPermissionViewSet(BasePermissionViewSet):
queryset = self.filter_application(queryset) queryset = self.filter_application(queryset)
return queryset return queryset
class ApplicationPermissionActionsApi(RetrieveAPIView):
permission_classes = (IsValidUser,)
def retrieve(self, request, *args, **kwargs):
category = request.GET.get('category')
actions = ApplicationPermission.get_include_actions_choices(category=category)
return Response(data=actions)

View File

@ -37,6 +37,8 @@ permission_urlpatterns = [
# 验证用户是否有某个应用的权限 # 验证用户是否有某个应用的权限
path('user/validate/', api.ValidateUserApplicationPermissionApi.as_view(), name='validate-user-application-permission'), path('user/validate/', api.ValidateUserApplicationPermissionApi.as_view(), name='validate-user-application-permission'),
path('applications/actions/', api.ApplicationPermissionActionsApi.as_view(), name='application-actions'),
] ]
application_permission_urlpatterns = [ application_permission_urlpatterns = [