add new api

This commit is contained in:
behruz-dev
2025-08-13 15:57:50 +05:00
parent 5df85f1a85
commit c290a4a97f
4 changed files with 23 additions and 2 deletions

View File

@@ -60,4 +60,10 @@ class ConfirmUserSerializer(serializers.Serializer):
class ChoiseRoleSerializer(serializers.Serializer):
role = serializers.ChoiceField(choices=ROLE_CHOICES)
role = serializers.ChoiceField(choices=ROLE_CHOICES)
class UserPhoneListSerializer(serializers.ModelSerializer):
class Meta:
model = User
fields = ['id', 'phone']

View File

@@ -1,6 +1,6 @@
from django.urls import path, include
from core.apps.accounts.views.auth import LoginApiView, RegisterApiView, ConfirUserApiView, ChoiceUserRoleApiView
from core.apps.accounts.views.auth import LoginApiView, RegisterApiView, ConfirUserApiView, ChoiceUserRoleApiView, SearchUserPhoneApiView
urlpatterns = [
path('auth/', include(
@@ -10,5 +10,10 @@ urlpatterns = [
path('confirm_user/', ConfirUserApiView.as_view(), name='confirm-user'),
path('choise_user_role/', ChoiceUserRoleApiView.as_view(), name='choise-user-role'),
]
)),
path('user/', include(
[
path('<str:number>/search/', SearchUserPhoneApiView.as_view()),
]
))
]

View File

@@ -88,3 +88,13 @@ class ChoiceUserRoleApiView(generics.GenericAPIView):
user.save()
return success_message('role choices', 200)
return error_message(serializer.errors, 400)
class SearchUserPhoneApiView(generics.GenericAPIView):
serializer_class = None
queryset = User.objects.all()
def get(self, request, number):
users = User.objects.filter(phone__istartswith=number)
serializer = auth_serializer.UserPhoneListSerializer(users, many=True)
return Response(serializer.data, status=200)