swagger update

This commit is contained in:
jain
2023-08-22 11:28:52 +05:30
parent 214566ec8f
commit 930c10b578
5 changed files with 137 additions and 40 deletions

View File

@ -117,13 +117,22 @@ class GoogleLoginViewSet(GoogleLoginMixin, viewsets.GenericViewSet):
serializer_class = GoogleLoginSerializer serializer_class = GoogleLoginSerializer
def create(self, request): def create(self, request):
"""create method""" """Payload
{
"access_token",
"user_type": "1"
}"""
serializer = self.get_serializer(data=request.data) serializer = self.get_serializer(data=request.data)
serializer.is_valid(raise_exception=True) serializer.is_valid(raise_exception=True)
return self.google_login(request) return self.google_login(request)
class SigninWithApple(views.APIView): class SigninWithApple(views.APIView):
"""This API is for sign in with Apple for app.""" """This API is for sign in with Apple for app.
Payload
{
"access_token",
"user_type": "1"
}"""
def post(self, request): def post(self, request):
token = request.data.get("access_token") token = request.data.get("access_token")
user_type = request.data.get("user_type") user_type = request.data.get("user_type")
@ -202,6 +211,10 @@ class ChangePasswordAPIView(views.APIView):
def post(self, request): def post(self, request):
""" """
POST request to change current login user password POST request to change current login user password
Payload
{ "current_password":"Demo@123",
"new_password":"Demo@123"
}
""" """
serializer = ChangePasswordSerializer( serializer = ChangePasswordSerializer(
context=request.user, context=request.user,
@ -219,7 +232,12 @@ class ChangePasswordAPIView(views.APIView):
) )
class ResetPasswordAPIView(views.APIView): class ResetPasswordAPIView(views.APIView):
"""Reset password""" """Reset password
Payload
{
"verification_code":"373770",
"password":"Demo@1323"
}"""
def post(self, request): def post(self, request):
serializer = ResetPasswordSerializer(data=request.data) serializer = ResetPasswordSerializer(data=request.data)
if serializer.is_valid(): if serializer.is_valid():
@ -236,7 +254,10 @@ class ForgotPasswordAPIView(views.APIView):
def post(self, request): def post(self, request):
""" """
Post method to validate serializer Payload
{
"email": "abc@yopmail.com"
}
""" """
serializer = self.serializer_class(data=request.data) serializer = self.serializer_class(data=request.data)
serializer.is_valid(raise_exception=True) serializer.is_valid(raise_exception=True)
@ -420,7 +441,12 @@ class AdminLoginViewSet(viewsets.GenericViewSet):
class UserEmailVerification(viewsets.ModelViewSet): class UserEmailVerification(viewsets.ModelViewSet):
"""User Email verification""" """User Email verification
Payload
{
"email":"ramu@yopmail.com",
"otp":"361123"
}"""
serializer_class = EmailVerificationSerializer serializer_class = EmailVerificationSerializer
http_method_names = ('post',) http_method_names = ('post',)
@ -495,7 +521,9 @@ class ProfileAPIViewSet(viewsets.ModelViewSet):
http_method_names = ('get',) http_method_names = ('get',)
def list(self, request, *args, **kwargs): def list(self, request, *args, **kwargs):
"""profile view""" """profile view
Params
user_type"""
if str(self.request.GET.get('user_type')) == '1': if str(self.request.GET.get('user_type')) == '1':
junior_data = Junior.objects.filter(auth=self.request.user).last() junior_data = Junior.objects.filter(auth=self.request.user).last()
if junior_data: if junior_data:
@ -510,6 +538,7 @@ class ProfileAPIViewSet(viewsets.ModelViewSet):
class UploadImageAPIViewSet(viewsets.ModelViewSet): class UploadImageAPIViewSet(viewsets.ModelViewSet):
"""upload task image""" """upload task image"""
serializer_class = DefaultTaskImagesSerializer serializer_class = DefaultTaskImagesSerializer
http_method_names = ('post',)
def create(self, request, *args, **kwargs): def create(self, request, *args, **kwargs):
"""upload images""" """upload images"""
image_data = request.data['image_url'] image_data = request.data['image_url']
@ -529,6 +558,7 @@ class DefaultImageAPIViewSet(viewsets.ModelViewSet):
"""Profile viewset""" """Profile viewset"""
serializer_class = DefaultTaskImagesDetailsSerializer serializer_class = DefaultTaskImagesDetailsSerializer
permission_classes = [IsAuthenticated] permission_classes = [IsAuthenticated]
http_method_names = ('get',)
def list(self, request, *args, **kwargs): def list(self, request, *args, **kwargs):
"""profile view""" """profile view"""
queryset = DefaultTaskImages.objects.all() queryset = DefaultTaskImages.objects.all()
@ -565,8 +595,9 @@ class UserNotificationAPIViewSet(viewsets.ModelViewSet):
"""notification viewset""" """notification viewset"""
serializer_class = UserNotificationSerializer serializer_class = UserNotificationSerializer
permission_classes = [IsAuthenticated] permission_classes = [IsAuthenticated]
http_method_names = ('get',)
def list(self, request, *args, **kwargs): def list(self, request, *args, **kwargs):
"""profile view""" """notification view"""
queryset = UserNotification.objects.filter(user=request.user) queryset = UserNotification.objects.filter(user=request.user)
serializer = UserNotificationSerializer(queryset, many=True) serializer = UserNotificationSerializer(queryset, many=True)
return custom_response(None, serializer.data, response_status=status.HTTP_200_OK) return custom_response(None, serializer.data, response_status=status.HTTP_200_OK)
@ -576,9 +607,14 @@ class UpdateUserNotificationAPIViewSet(viewsets.ModelViewSet):
"""Update notification viewset""" """Update notification viewset"""
serializer_class = UpdateUserNotificationSerializer serializer_class = UpdateUserNotificationSerializer
permission_classes = [IsAuthenticated] permission_classes = [IsAuthenticated]
http_method_names = ('post',)
def create(self, request, *args, **kwargs): def create(self, request, *args, **kwargs):
"""profile view""" """Payload
{"email_notification": false,
"sms_notification": false,
"push_notification": false}
"""
serializer = UpdateUserNotificationSerializer(data=request.data, serializer = UpdateUserNotificationSerializer(data=request.data,
context=request.user) context=request.user)
if serializer.is_valid(): if serializer.is_valid():
@ -588,7 +624,12 @@ class UpdateUserNotificationAPIViewSet(viewsets.ModelViewSet):
class SendSupportEmail(views.APIView): class SendSupportEmail(views.APIView):
"""support email api""" """support email api
payload
name
email
message
"""
permission_classes = (IsAuthenticated,) permission_classes = (IsAuthenticated,)
def post(self, request): def post(self, request):

View File

@ -129,7 +129,11 @@ class AllTaskListAPIView(viewsets.ModelViewSet):
class TaskListAPIView(viewsets.ModelViewSet): class TaskListAPIView(viewsets.ModelViewSet):
"""Update guardian profile""" """Task list
Params
status
search
page"""
serializer_class = TaskDetailsSerializer serializer_class = TaskDetailsSerializer
permission_classes = [IsAuthenticated] permission_classes = [IsAuthenticated]
filter_backends = (SearchFilter,) filter_backends = (SearchFilter,)
@ -206,7 +210,7 @@ class CreateTaskAPIView(viewsets.ModelViewSet):
return custom_error_response(str(e), response_status=status.HTTP_400_BAD_REQUEST) return custom_error_response(str(e), response_status=status.HTTP_400_BAD_REQUEST)
class SearchTaskListAPIView(viewsets.ModelViewSet): class SearchTaskListAPIView(viewsets.ModelViewSet):
"""Update guardian profile""" """Filter task"""
serializer_class = TaskDetailsSerializer serializer_class = TaskDetailsSerializer
permission_classes = [IsAuthenticated] permission_classes = [IsAuthenticated]
pagination_class = PageNumberPagination pagination_class = PageNumberPagination
@ -221,7 +225,7 @@ class SearchTaskListAPIView(viewsets.ModelViewSet):
return junior_queryset return junior_queryset
def list(self, request, *args, **kwargs): def list(self, request, *args, **kwargs):
"""Create guardian profile""" """Filter task"""
try: try:
queryset = self.get_queryset() queryset = self.get_queryset()
paginator = self.pagination_class() paginator = self.pagination_class()
@ -235,10 +239,12 @@ class SearchTaskListAPIView(viewsets.ModelViewSet):
class TopJuniorListAPIView(viewsets.ModelViewSet): class TopJuniorListAPIView(viewsets.ModelViewSet):
"""Top juniors list""" """Top juniors list
No Params"""
queryset = JuniorPoints.objects.all() queryset = JuniorPoints.objects.all()
serializer_class = TopJuniorSerializer serializer_class = TopJuniorSerializer
permission_classes = [IsAuthenticated] permission_classes = [IsAuthenticated]
http_method_names = ('get',)
def get_serializer_context(self): def get_serializer_context(self):
# context list # context list
@ -349,7 +355,8 @@ class GuardianListAPIView(viewsets.ModelViewSet):
http_method_names = ('get',) http_method_names = ('get',)
def list(self, request, *args, **kwargs): def list(self, request, *args, **kwargs):
""" junior list""" """ Guardian list of assosicated junior
No Params"""
try: try:
guardian_data = JuniorGuardianRelationship.objects.filter(junior__auth__email=self.request.user) guardian_data = JuniorGuardianRelationship.objects.filter(junior__auth__email=self.request.user)
# fetch junior object # fetch junior object

View File

@ -74,7 +74,7 @@ class UpdateJuniorProfile(viewsets.ModelViewSet):
http_method_names = ('post',) http_method_names = ('post',)
def create(self, request, *args, **kwargs): def create(self, request, *args, **kwargs):
"""Use CreateJuniorSerializer""" """Create Junior Profile"""
try: try:
request_data = request.data request_data = request.data
image = request.data.get('image') image = request.data.get('image')
@ -104,9 +104,13 @@ class UpdateJuniorProfile(viewsets.ModelViewSet):
class ValidateGuardianCode(viewsets.ModelViewSet): class ValidateGuardianCode(viewsets.ModelViewSet):
"""Check guardian code exist or not""" """Check guardian code exist or not"""
permission_classes = [IsAuthenticated] permission_classes = [IsAuthenticated]
http_method_names = ('get',)
def list(self, request, *args, **kwargs): def list(self, request, *args, **kwargs):
"""check guardian code""" """check guardian code
Params
"guardian_code"
"""
try: try:
guardian_code = self.request.GET.get('guardian_code').split(',') guardian_code = self.request.GET.get('guardian_code').split(',')
for code in guardian_code: for code in guardian_code:
@ -216,7 +220,7 @@ class AddJuniorAPIView(viewsets.ModelViewSet):
class InvitedJuniorAPIView(viewsets.ModelViewSet): class InvitedJuniorAPIView(viewsets.ModelViewSet):
"""Junior list of assosicated guardian""" """Invited Junior list of assosicated guardian"""
serializer_class = JuniorDetailListSerializer serializer_class = JuniorDetailListSerializer
permission_classes = [IsAuthenticated] permission_classes = [IsAuthenticated]
@ -230,7 +234,8 @@ class InvitedJuniorAPIView(viewsets.ModelViewSet):
is_invited=True) is_invited=True)
return junior_queryset return junior_queryset
def list(self, request, *args, **kwargs): def list(self, request, *args, **kwargs):
""" junior list""" """ Invited Junior list of assosicated guardian
No Params"""
try: try:
queryset = self.get_queryset() queryset = self.get_queryset()
paginator = self.pagination_class() paginator = self.pagination_class()
@ -273,7 +278,7 @@ class FilterJuniorAPIView(viewsets.ModelViewSet):
return queryset return queryset
def list(self, request, *args, **kwargs): def list(self, request, *args, **kwargs):
"""Create guardian profile""" """Filter junior"""
try: try:
queryset = self.get_queryset() queryset = self.get_queryset()
paginator = self.pagination_class() paginator = self.pagination_class()
@ -287,7 +292,9 @@ class FilterJuniorAPIView(viewsets.ModelViewSet):
class RemoveJuniorAPIView(views.APIView): class RemoveJuniorAPIView(views.APIView):
"""Remove junior API""" """Remove junior API
Params
id=37"""
serializer_class = RemoveJuniorSerializer serializer_class = RemoveJuniorSerializer
model = Junior model = Junior
permission_classes = [IsAuthenticated] permission_classes = [IsAuthenticated]
@ -315,14 +322,17 @@ class RemoveJuniorAPIView(views.APIView):
class JuniorTaskListAPIView(viewsets.ModelViewSet): class JuniorTaskListAPIView(viewsets.ModelViewSet):
"""Update guardian profile""" """Junior task list"""
serializer_class = TaskDetailsjuniorSerializer serializer_class = TaskDetailsjuniorSerializer
permission_classes = [IsAuthenticated] permission_classes = [IsAuthenticated]
pagination_class = PageNumberPagination pagination_class = PageNumberPagination
http_method_names = ('get',) http_method_names = ('get',)
def list(self, request, *args, **kwargs): def list(self, request, *args, **kwargs):
"""Create guardian profile""" """Junior task list
status=0
search='title'
page=1"""
try: try:
status_value = self.request.GET.get('status') status_value = self.request.GET.get('status')
search = self.request.GET.get('search') search = self.request.GET.get('search')
@ -352,7 +362,9 @@ class JuniorTaskListAPIView(viewsets.ModelViewSet):
class CompleteJuniorTaskAPIView(views.APIView): class CompleteJuniorTaskAPIView(views.APIView):
"""Update junior task API""" """Payload
task_id
image"""
serializer_class = CompleteTaskSerializer serializer_class = CompleteTaskSerializer
model = JuniorTask model = JuniorTask
permission_classes = [IsAuthenticated] permission_classes = [IsAuthenticated]
@ -397,7 +409,8 @@ class JuniorPointsListAPIView(viewsets.ModelViewSet):
http_method_names = ('get',) http_method_names = ('get',)
def list(self, request, *args, **kwargs): def list(self, request, *args, **kwargs):
"""profile view""" """Junior Points
No Params"""
try: try:
update_positions_based_on_points() update_positions_based_on_points()
queryset = JuniorPoints.objects.filter(junior__auth__email=self.request.user).last() queryset = JuniorPoints.objects.filter(junior__auth__email=self.request.user).last()
@ -467,7 +480,11 @@ class InviteGuardianAPIView(viewsets.ModelViewSet):
class StartTaskAPIView(views.APIView): class StartTaskAPIView(views.APIView):
"""Update junior task API""" """Update junior task API
Paylod
{
"task_id":28
}"""
serializer_class = StartTaskSerializer serializer_class = StartTaskSerializer
model = JuniorTask model = JuniorTask
permission_classes = [IsAuthenticated] permission_classes = [IsAuthenticated]
@ -491,7 +508,13 @@ class StartTaskAPIView(views.APIView):
return custom_error_response(str(e), response_status=status.HTTP_400_BAD_REQUEST) return custom_error_response(str(e), response_status=status.HTTP_400_BAD_REQUEST)
class ReAssignJuniorTaskAPIView(views.APIView): class ReAssignJuniorTaskAPIView(views.APIView):
"""Update junior task API""" """Update junior task API
Payload
{
"task_id":34,
"due_date":"2023-08-22"
}
"""
serializer_class = ReAssignTaskSerializer serializer_class = ReAssignTaskSerializer
model = JuniorTask model = JuniorTask
permission_classes = [IsAuthenticated] permission_classes = [IsAuthenticated]
@ -520,7 +543,10 @@ class StartArticleAPIView(viewsets.ModelViewSet):
http_method_names = ('post',) http_method_names = ('post',)
def create(self, request, *args, **kwargs): def create(self, request, *args, **kwargs):
""" junior list""" """ Payload
{
"article_id":"2"
}"""
try: try:
junior_instance = Junior.objects.filter(auth=self.request.user).last() junior_instance = Junior.objects.filter(auth=self.request.user).last()
article_id = request.data.get('article_id') article_id = request.data.get('article_id')
@ -542,7 +568,7 @@ class StartArticleAPIView(viewsets.ModelViewSet):
return custom_error_response(str(e), response_status=status.HTTP_400_BAD_REQUEST) return custom_error_response(str(e), response_status=status.HTTP_400_BAD_REQUEST)
class StartAssessmentAPIView(viewsets.ModelViewSet): class StartAssessmentAPIView(viewsets.ModelViewSet):
"""Junior Points viewset""" """Question answer viewset"""
serializer_class = StartAssessmentSerializer serializer_class = StartAssessmentSerializer
permission_classes = [IsAuthenticated] permission_classes = [IsAuthenticated]
http_method_names = ('get',) http_method_names = ('get',)
@ -555,7 +581,9 @@ class StartAssessmentAPIView(viewsets.ModelViewSet):
).order_by('-created_at') ).order_by('-created_at')
return article return article
def list(self, request, *args, **kwargs): def list(self, request, *args, **kwargs):
"""profile view""" """Params
article_id
"""
try: try:
queryset = self.get_queryset() queryset = self.get_queryset()
@ -567,7 +595,9 @@ class StartAssessmentAPIView(viewsets.ModelViewSet):
return custom_error_response(str(e), response_status=status.HTTP_400_BAD_REQUEST) return custom_error_response(str(e), response_status=status.HTTP_400_BAD_REQUEST)
class CheckAnswerAPIView(viewsets.ModelViewSet): class CheckAnswerAPIView(viewsets.ModelViewSet):
"""Junior Points viewset""" """Params
question_id=1
answer_id=1"""
permission_classes = [IsAuthenticated] permission_classes = [IsAuthenticated]
http_method_names = ('get',) http_method_names = ('get',)
@ -576,7 +606,10 @@ class CheckAnswerAPIView(viewsets.ModelViewSet):
article = ArticleSurvey.objects.filter(id=question_id).last() article = ArticleSurvey.objects.filter(id=question_id).last()
return article return article
def list(self, request, *args, **kwargs): def list(self, request, *args, **kwargs):
"""profile view""" """ Params
question_id=1
answer_id=1
"""
try: try:
answer_id = self.request.GET.get('answer_id') answer_id = self.request.GET.get('answer_id')
@ -600,7 +633,9 @@ class CheckAnswerAPIView(viewsets.ModelViewSet):
return custom_error_response(str(e), response_status=status.HTTP_400_BAD_REQUEST) return custom_error_response(str(e), response_status=status.HTTP_400_BAD_REQUEST)
class CompleteArticleAPIView(views.APIView): class CompleteArticleAPIView(views.APIView):
"""Remove junior API""" """Params
article_id
"""
permission_classes = [IsAuthenticated] permission_classes = [IsAuthenticated]
http_method_names = ('put', 'get',) http_method_names = ('put', 'get',)
def put(self, request, format=None): def put(self, request, format=None):
@ -614,7 +649,8 @@ class CompleteArticleAPIView(views.APIView):
return custom_error_response(str(e), response_status=status.HTTP_400_BAD_REQUEST) return custom_error_response(str(e), response_status=status.HTTP_400_BAD_REQUEST)
def get(self, request, *args, **kwargs): def get(self, request, *args, **kwargs):
""" junior list""" """ Params
article_id=1"""
try: try:
article_id = self.request.GET.get('article_id') article_id = self.request.GET.get('article_id')
total_earn_points = JuniorArticlePoints.objects.filter(junior__auth=request.user, total_earn_points = JuniorArticlePoints.objects.filter(junior__auth=request.user,
@ -628,12 +664,16 @@ class CompleteArticleAPIView(views.APIView):
class ReadArticleCardAPIView(views.APIView): class ReadArticleCardAPIView(views.APIView):
"""Remove junior API""" """Read article card API"""
permission_classes = [IsAuthenticated] permission_classes = [IsAuthenticated]
http_method_names = ('put',) http_method_names = ('put',)
def put(self, request, *args, **kwargs): def put(self, request, *args, **kwargs):
""" junior list""" """ Read article card
Payload
{"article_id":"1",
"article_card":"2",
"current_page":"2"}"""
try: try:
junior_instance = Junior.objects.filter(auth=self.request.user).last() junior_instance = Junior.objects.filter(auth=self.request.user).last()
article = self.request.data.get('article_id') article = self.request.data.get('article_id')
@ -677,7 +717,8 @@ class CreateArticleCardAPIView(viewsets.ModelViewSet):
return custom_error_response(str(e), response_status=status.HTTP_400_BAD_REQUEST) return custom_error_response(str(e), response_status=status.HTTP_400_BAD_REQUEST)
class RemoveGuardianCodeAPIView(views.APIView): class RemoveGuardianCodeAPIView(views.APIView):
"""Update junior task API""" """Remove guardian code request API
No Payload"""
serializer_class = RemoveGuardianCodeSerializer serializer_class = RemoveGuardianCodeSerializer
permission_classes = [IsAuthenticated] permission_classes = [IsAuthenticated]
@ -714,7 +755,7 @@ class FAQViewSet(GenericViewSet, mixins.CreateModelMixin,
""" """
faq create api method faq create api method
:param request: :param request:
:param args: :param args: question, description
:param kwargs: :param kwargs:
:return: success message :return: success message
""" """

View File

@ -77,7 +77,11 @@ class NotificationViewSet(viewsets.GenericViewSet):
class ReadNotification(views.APIView): class ReadNotification(views.APIView):
"""Update notification API""" """Update notification API
Payload
{
"notification_id": []
}"""
serializer_class = ReadNotificationSerializer serializer_class = ReadNotificationSerializer
model = Notification model = Notification
permission_classes = [IsAuthenticated] permission_classes = [IsAuthenticated]

View File

@ -248,7 +248,9 @@ class ArticleListViewSet(GenericViewSet, mixins.ListModelMixin):
return custom_response(None, data=serializer.data) return custom_response(None, data=serializer.data)
class ArticleCardListViewSet(viewsets.ModelViewSet): class ArticleCardListViewSet(viewsets.ModelViewSet):
"""Junior Points viewset""" """Article card list
use below query param
article_id"""
serializer_class = ArticleCardlistSerializer serializer_class = ArticleCardlistSerializer
permission_classes = [IsAuthenticated] permission_classes = [IsAuthenticated]
http_method_names = ('get',) http_method_names = ('get',)
@ -257,7 +259,9 @@ class ArticleCardListViewSet(viewsets.ModelViewSet):
"""get queryset""" """get queryset"""
return ArticleCard.objects.filter(article=self.request.GET.get('article_id')) return ArticleCard.objects.filter(article=self.request.GET.get('article_id'))
def list(self, request, *args, **kwargs): def list(self, request, *args, **kwargs):
"""profile view""" """Article card list
use below query param
article_id"""
try: try:
queryset = self.get_queryset() queryset = self.get_queryset()