new feature: customer panel accsess
This commit is contained in:
1 parent
5052bde49a
commit
e983e0cc43
12 files changed
+175
-4
No files matched your search
@@ -7,3 +7,4 @@ from .customer import *
|
||||
from .form_item import *
|
||||
from .customer_summary import *
|
||||
from .customer_note import *
|
||||
from .customer_panel import *
|
||||
@@ -22,6 +22,14 @@ class CustomerRetrieveApi(APIView):
|
||||
permission_classes = (IsAuthenticated, custom_permissions.WorkspaceOperatorPermission)
|
||||
|
||||
class OutputSerializer(serializers.ModelSerializer):
|
||||
cuser_role = inline_serializer(fields={
|
||||
'id': serializers.IntegerField(required=False),
|
||||
'cuser': inline_serializer(fields={
|
||||
'id': serializers.IntegerField(),
|
||||
'mobile': serializers.IntegerField(),
|
||||
}),
|
||||
'customer_panel': serializers.BooleanField(required=False)
|
||||
})
|
||||
class Meta:
|
||||
model = CustomerModel
|
||||
fields = '__all__'
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
from rest_framework.views import APIView
|
||||
from rest_framework import status
|
||||
from rest_framework.response import Response
|
||||
from rest_framework import serializers
|
||||
from apps.customer.services import customer_panel_access
|
||||
from rest_framework.permissions import IsAuthenticated
|
||||
from utils import custom_permissions
|
||||
|
||||
|
||||
class CustomerPanelApi(APIView):
|
||||
|
||||
permission_classes = (IsAuthenticated, custom_permissions.WorkspaceOperatorPermission)
|
||||
|
||||
class InputSerializer(serializers.Serializer):
|
||||
mobile = serializers.IntegerField(required=True)
|
||||
customer_id = serializers.IntegerField(required=True)
|
||||
status = serializers.BooleanField(required=True)
|
||||
|
||||
def post(self, request):
|
||||
serializer = self.InputSerializer(data=request.data)
|
||||
serializer.is_valid(raise_exception=True)
|
||||
|
||||
cuser_role = customer_panel_access(request=request, **serializer.validated_data)
|
||||
|
||||
return Response(data={'cuser_role_id': cuser_role.id}, status=status.HTTP_200_OK)
|
||||
|
||||
|
||||
Reference in new issue
Block a user