From 2a9397de42b655eaa60705f4423c0f19cb46f591 Mon Sep 17 00:00:00 2001 From: Adi8712 Date: Fri, 25 Oct 2024 20:37:02 +0530 Subject: [PATCH 1/9] chore: added linting --- .gitignore | 2 ++ .pre-commit-config.yaml | 14 +++++++++++++ requirements.txt | 1 + ruff.toml | 46 +++++++++++++++++++++++++++++++++++++++++ 4 files changed, 63 insertions(+) create mode 100644 .pre-commit-config.yaml create mode 100644 ruff.toml diff --git a/.gitignore b/.gitignore index a88681399..83d6642c9 100644 --- a/.gitignore +++ b/.gitignore @@ -76,3 +76,5 @@ package-lock.json .DS_Store **/generated.pdf + +.ruff_cache/ diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 000000000..979f857c5 --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,14 @@ +repos: +- repo: https://github.com/pre-commit/pre-commit-hooks + rev: v3.2.0 + hooks: + - id: trailing-whitespace + - id: end-of-file-fixer + - id: check-yaml + - id: check-added-large-files +- repo: https://github.com/astral-sh/ruff-pre-commit + rev: v0.6.9 + hooks: + - id: ruff + args: [ --fix ] + - id: ruff-format diff --git a/requirements.txt b/requirements.txt index 4b97f144f..27a124177 100644 --- a/requirements.txt +++ b/requirements.txt @@ -45,6 +45,7 @@ numpy==1.22.3 oauthlib==3.1.0 openpyxl==3.0.7 Pillow==8.1.0 +pre-commit==3.5.0 prompt-toolkit==3.0.10 psycopg2-binary==2.8.6 pycparser==2.20 diff --git a/ruff.toml b/ruff.toml new file mode 100644 index 000000000..8dea846ed --- /dev/null +++ b/ruff.toml @@ -0,0 +1,46 @@ +exclude = [ + ".bzr", + ".direnv", + ".eggs", + ".git", + ".git-rewrite", + ".hg", + ".ipynb_checkpoints", + ".mypy_cache", + ".nox", + ".pants.d", + ".pyenv", + ".pytest_cache", + ".pytype", + ".ruff_cache", + ".svn", + ".tox", + ".venv", + ".vscode", + "__pypackages__", + "_build", + "buck-out", + "build", + "dist", + "node_modules", + "site-packages", + "venv", +] + +line-length = 88 +indent-width = 4 +target-version = "py38" +show-fixes = true + +[lint] +select = ["F", "E", "W", "UP", "I", "PL"] +ignore = ["F403", "F405"] +fixable = ["ALL"] +unfixable = [] +dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$" + +[format] +quote-style = "double" +indent-style = "space" +skip-magic-trailing-comma = false +line-ending = "auto" From 558062591394f9dc01d94a23efa42cd36641af76 Mon Sep 17 00:00:00 2001 From: S-tej <132924903+S-tej@users.noreply.github.com> Date: Tue, 19 Nov 2024 02:37:15 +0530 Subject: [PATCH 2/9] changes in feedbackAPI --- .../applications/central_mess/api/views.py | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/FusionIIIT/applications/central_mess/api/views.py b/FusionIIIT/applications/central_mess/api/views.py index 4a6076ec4..bacaced33 100644 --- a/FusionIIIT/applications/central_mess/api/views.py +++ b/FusionIIIT/applications/central_mess/api/views.py @@ -61,6 +61,29 @@ def put(self, request): feedback_request.save() return Response({'status':200}) + + def delete(self, request): + data = request.data + student_id = data.get('student_id') + mess = data.get('mess') + feedback_type = data.get('feedback_type') + description = data.get('description') + fdate = data.get('fdate') + + # Locate the feedback record + feedback_request = get_object_or_404( + Feedback, + student_id=student_id, + mess=mess, + feedback_type=feedback_type, + description=description, + fdate=fdate, + ) + + # Delete the feedback record + feedback_request.delete() + + return Response({'status': 200, 'message': 'Feedback deleted successfully.'}) class MessinfoApi(APIView): @@ -126,6 +149,7 @@ def post(self, request): class Monthly_billApi(APIView): def get(self, request): + monthly_bill_obj = Monthly_bill.objects.all(); serialized_obj = Monthly_billSerializer(monthly_bill_obj, many=True) return Response({'status':200, 'payload':serialized_obj.data}) @@ -168,7 +192,11 @@ def post(self, request): class PaymentsApi(APIView): def get(self, request): + username = get_object_or_404(User,username=request.user.username) + idd = ExtraInfo.objects.get(user=username) + student = Student.objects.get(id=idd.id) payments_obj = Payments.objects.all(); + payments_obj = payments_obj.filter(student_id=student) serialized_obj = PaymentsSerializer(payments_obj, many=True) return Response({'status':200, 'payload':serialized_obj.data}) @@ -201,6 +229,7 @@ def get(self, request): def post(self, request): data = request.data + print(data) mess_option = data['mess_option'] meal_time = data['meal_time'] @@ -228,6 +257,12 @@ def post(self, request): end_date = data['end_date'] purpose = data['purpose'] status = data['status'] + """ + status: + '2' -> approved + '1' -> pending + '0' -> declined + """ app_date = data['app_date'] leave_type = data['leave_type'] From ef22a7264150df0fa063484f42da1d17486cddfe Mon Sep 17 00:00:00 2001 From: Padarthi Karthik <133255355+karthikpadarthi@users.noreply.github.com> Date: Sun, 9 Feb 2025 17:31:24 +0530 Subject: [PATCH 3/9] feat: added update bill excel (#4) --- FusionIIIT/Fusion/urls.py | 3 + .../applications/central_mess/api/views.py | 64 ++++++++++++++++++- .../applications/central_mess/models.py | 2 +- 3 files changed, 67 insertions(+), 2 deletions(-) diff --git a/FusionIIIT/Fusion/urls.py b/FusionIIIT/Fusion/urls.py index b9c03eeb8..1b79cf086 100755 --- a/FusionIIIT/Fusion/urls.py +++ b/FusionIIIT/Fusion/urls.py @@ -22,6 +22,8 @@ from django.contrib import admin from django.contrib.auth import views as auth_views +from django.views.static import serve + urlpatterns = [ url(r'^', include('applications.globals.urls')), @@ -62,4 +64,5 @@ url(r'^recruitment/', include('applications.recruitment.urls')), url(r'^examination/', include('applications.examination.urls')), url(r'^otheracademic/', include('applications.otheracademic.urls')), + url(r'^media/(?P.*)$', serve, {"document_root": settings.MEDIA_ROOT},), ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) diff --git a/FusionIIIT/applications/central_mess/api/views.py b/FusionIIIT/applications/central_mess/api/views.py index bacaced33..bc7da7767 100644 --- a/FusionIIIT/applications/central_mess/api/views.py +++ b/FusionIIIT/applications/central_mess/api/views.py @@ -827,4 +827,66 @@ def put(self, request): return Response({'status': 200}) except Exception as e: print({'error': str(e)}) - return Response({'error': str(e)}, status=400) \ No newline at end of file + return Response({'error': str(e)}, status=400) + +from rest_framework.parsers import MultiPartParser, FormParser +from rest_framework import status +from openpyxl import load_workbook + +class UpdateBillExcelAPI(APIView): + parser_classes = (MultiPartParser, FormParser) + + def post(self, request): + if 'file' not in request.FILES: + return Response({'error': 'No file provided'}, status=status.HTTP_400_BAD_REQUEST) + + file = request.FILES['file'] + if not file.name.endswith(('.xlsx', '.xls')): + return Response({'error': 'Invalid file format. Only .xlsx and .xls are allowed.'}, status=status.HTTP_400_BAD_REQUEST) + + try: + wb = load_workbook(file) + sheet = wb.active + flag = False + + for row in sheet.iter_rows(min_row=2): + student_id = str(row[0].value).upper() + try: + student = Student.objects.select_related('id', 'id__user', 'id__department').get(id=student_id) + except Student.DoesNotExist: + continue + + month = str(row[1].value) + year = row[2].value + amt = row[3].value + rebate_cnt = row[4].value + rebate_amt = row[5].value + total_amt = row[6].value + try: + bill = Monthly_bill.objects.get(student_id=student_id, month=month, year=year) + reg_main = Reg_main.objects.get(student_id=student_id) + reg_main.balance += bill.total_bill + bill.amount = amt + bill.rebate_count = rebate_cnt + bill.rebate_amount = rebate_amt + bill.total_bill = total_amt + reg_main.balance -= total_amt + + bill.save() + reg_main.save() + except Monthly_bill.DoesNotExist: + bill = Monthly_bill( + student_id=student, + month=month, + year=year, + amount=amt, + rebate_count=rebate_cnt, + rebate_amount=rebate_amt, + total_bill=total_amt + ) + bill.save() + + return Response({'message': 'File processed successfully'}, status=status.HTTP_200_OK) + + except Exception as e: + return Response({'error': f'An error occurred: {str(e)}'}, status=status.HTTP_500_INTERNAL_SERVER_ERROR) \ No newline at end of file diff --git a/FusionIIIT/applications/central_mess/models.py b/FusionIIIT/applications/central_mess/models.py index 3e6030952..c9ef74c14 100644 --- a/FusionIIIT/applications/central_mess/models.py +++ b/FusionIIIT/applications/central_mess/models.py @@ -283,7 +283,7 @@ def __str__(self): class Registration_Request(models.Model): student_id = models.ForeignKey(Student, on_delete=models.CASCADE) Txn_no =models.CharField(max_length=20) - img = models.ImageField(upload_to='images/',default=None) + img = models.ImageField(upload_to='mess/images/registration_request/%Y/%m/%d/',default=None) amount=models.IntegerField(default=0) status=models.CharField(max_length=10,default='pending') registration_remark=models.CharField(max_length=50,default='NA') From 35c5586174d3d9e8b17a6f58d3459298d5c6d00b Mon Sep 17 00:00:00 2001 From: Adi8712 Date: Sun, 9 Feb 2025 18:07:36 +0530 Subject: [PATCH 4/9] fix: migrations --- .../central_mess/migrations/0001_initial.py | 11 ----------- .../migrations/0003_auto_20250209_1736.py | 18 ++++++++++++++++++ 2 files changed, 18 insertions(+), 11 deletions(-) create mode 100644 FusionIIIT/applications/central_mess/migrations/0003_auto_20250209_1736.py diff --git a/FusionIIIT/applications/central_mess/migrations/0001_initial.py b/FusionIIIT/applications/central_mess/migrations/0001_initial.py index 7e80bedf5..bbac3081f 100644 --- a/FusionIIIT/applications/central_mess/migrations/0001_initial.py +++ b/FusionIIIT/applications/central_mess/migrations/0001_initial.py @@ -149,17 +149,6 @@ class Migration(migrations.Migration): ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), ], ), - migrations.CreateModel( - name='Payments', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('amount_paid', models.IntegerField(default=0)), - ('payment_month', models.CharField(default=applications.central_mess.models.current_month, max_length=20)), - ('payment_year', models.IntegerField(default=applications.central_mess.models.current_year)), - ('payment_date', models.DateField(default=datetime.date(2024, 6, 19))), - ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), - ], - ), migrations.CreateModel( name='Mess_minutes', fields=[ diff --git a/FusionIIIT/applications/central_mess/migrations/0003_auto_20250209_1736.py b/FusionIIIT/applications/central_mess/migrations/0003_auto_20250209_1736.py new file mode 100644 index 000000000..181e0e991 --- /dev/null +++ b/FusionIIIT/applications/central_mess/migrations/0003_auto_20250209_1736.py @@ -0,0 +1,18 @@ +# Generated by Django 3.1.5 on 2025-02-09 17:36 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('central_mess', '0002_auto_20241012_1459'), + ] + + operations = [ + migrations.AlterField( + model_name='registration_request', + name='img', + field=models.ImageField(default=None, upload_to='mess/images/registration_request/%Y/%m/%d/'), + ), + ] From 9a201f8d47dfdea3d79c20d11857b592c2a5f026 Mon Sep 17 00:00:00 2001 From: Green Mansion <90859709+PrinceBujethia@users.noreply.github.com> Date: Sun, 23 Feb 2025 11:39:59 +0530 Subject: [PATCH 5/9] Fix: Fixed an api endpoint allowed method (#5) --- FusionIIIT/applications/central_mess/api/views.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/FusionIIIT/applications/central_mess/api/views.py b/FusionIIIT/applications/central_mess/api/views.py index bc7da7767..7d5da3db2 100644 --- a/FusionIIIT/applications/central_mess/api/views.py +++ b/FusionIIIT/applications/central_mess/api/views.py @@ -603,11 +603,15 @@ def post(self,request): return response class Get_Reg_Records(APIView): - + def get(self,request): + student_id = request.GET.get('student_id') + reg_record = Reg_records.objects.filter(student_id=student_id) + serialized_obj = reg_recordSerialzer(reg_record,many=True) + return Response({'payload':serialized_obj.data}) + def post(self,request): student = request.data['student_id'] reg_record = Reg_records.objects.filter(student_id=student) - serialized_obj = reg_recordSerialzer(reg_record,many=True) return Response({'payload':serialized_obj.data}) From bbceacf58974acb4156126b06aa5143e9fd24b89 Mon Sep 17 00:00:00 2001 From: S-tej <132924903+S-tej@users.noreply.github.com> Date: Sun, 23 Feb 2025 11:44:21 +0530 Subject: [PATCH 6/9] Added New API for Student Records, Implement Checks in RebateAPI. (#6) * Change in feedbackAPI * New API and filter in RebateApi --- .../applications/central_mess/api/urls.py | 1 + .../applications/central_mess/api/views.py | 60 +++++++++++++++++-- 2 files changed, 57 insertions(+), 4 deletions(-) diff --git a/FusionIIIT/applications/central_mess/api/urls.py b/FusionIIIT/applications/central_mess/api/urls.py index e0a86b9d7..aad7b4891 100644 --- a/FusionIIIT/applications/central_mess/api/urls.py +++ b/FusionIIIT/applications/central_mess/api/urls.py @@ -28,4 +28,5 @@ url('deRegistrationRequestApi', views.DeregistrationRequestApi.as_view(), name='deRegistrationRequestApi'), url('deRegistrationApi', views.DeregistrationApi.as_view(), name='deRegistrationApi'), url('updatePaymentRequestApi', views.UpdatePaymentRequestApi.as_view(), name='updatePaymentRequestApi'), + url('get_mess_balance_statusApi', views.Get_Mess_Balance_Status.as_view(), name='get_mess_balance_statusApi'), ] \ No newline at end of file diff --git a/FusionIIIT/applications/central_mess/api/views.py b/FusionIIIT/applications/central_mess/api/views.py index 7d5da3db2..9643e1fd4 100644 --- a/FusionIIIT/applications/central_mess/api/views.py +++ b/FusionIIIT/applications/central_mess/api/views.py @@ -1,7 +1,9 @@ #APIs +from datetime import date, datetime, timedelta from django.db.models import F from rest_framework.views import APIView from rest_framework.response import Response +# from FusionIIIT.notification.views import central_mess_notif from .serializers import * from django.shortcuts import get_object_or_404 from applications.central_mess.models import * @@ -9,6 +11,8 @@ from applications.globals.models import ExtraInfo, HoldsDesignation, Designation from django.http import JsonResponse +today_g = datetime.datetime.now() + class FeedbackApi(APIView): def get(self, request): @@ -253,6 +257,7 @@ def post(self, request): data = request.data # student_id = data['mess_option'] + flag=1 start_date = data['start_date'] end_date = data['end_date'] purpose = data['purpose'] @@ -266,10 +271,30 @@ def post(self, request): app_date = data['app_date'] leave_type = data['leave_type'] + if (end_date < start_date): + flag = 0 + return Response({'status': 3, 'message': 'Please check the dates'}) + username = get_object_or_404(User,username=request.user.username) idd = ExtraInfo.objects.get(user=username) student = Student.objects.get(id=idd.id) + date_format = "%Y-%m-%d" + b = datetime.datetime.strptime(str(start_date), date_format) + d = datetime.datetime.strptime(str(end_date), date_format) + + rebate_check = Rebate.objects.filter(student_id=student, status='2') + for r in rebate_check: + a = datetime.datetime.strptime(str(r.start_date), date_format) + c = datetime.datetime.strptime(str(r.end_date), date_format) + if ((b <= a and (d >= a and d <= c)) or (b >= a and (d >= a and d <= c)) + or (b <= a and (d >= c)) or ((b >= a and b <= c) and (d >= c))): + flag = 0 + data = { + 'status': 3, + 'message': "Already applied for these dates", + } + return Response({'status': 3, 'message': 'Already applied for these dates'}) obj = Rebate( student_id = student, @@ -280,6 +305,10 @@ def post(self, request): end_date= end_date, start_date = start_date ) + + if flag == 1: + message = 'Your leave request has been accepted between dates ' + str(b.date()) + ' and ' + str(d.date()) + # central_mess_notif(request.user, student.id.user, 'leave_request', message) obj.save() return Response({'status':200}) @@ -439,8 +468,7 @@ def get(self, request): def post(self, request): data = request.data - - + start_date = data['start_date'] end_date = data['end_date'] status = data['status'] @@ -787,7 +815,12 @@ def post(self, request): class UpdatePaymentRequestApi(APIView): def get(self, request): - update_payment_requests = Update_Payment.objects.all() + student_id = request.query_params.get('student_id') + if student_id: + update_payment_requests = Update_Payment.objects.filter(student_id=student_id) + else: + update_payment_requests = Update_Payment.objects.all() + serializer = UpdatePaymentRequestSerializer(update_payment_requests, many=True) return Response({'status': 200, 'payload': serializer.data}) @@ -893,4 +926,23 @@ def post(self, request): return Response({'message': 'File processed successfully'}, status=status.HTTP_200_OK) except Exception as e: - return Response({'error': f'An error occurred: {str(e)}'}, status=status.HTTP_500_INTERNAL_SERVER_ERROR) \ No newline at end of file + return Response({'error': f'An error occurred: {str(e)}'}, status=status.HTTP_500_INTERNAL_SERVER_ERROR) + +class Get_Mess_Balance_Status(APIView): + def get(self, request): + username = get_object_or_404(User,username=request.user.username) + idd = ExtraInfo.objects.get(user=username) + student_id = Student.objects.get(id=idd.id) + try: + mess_optn = Reg_main.objects.select_related('student_id','student_id__id','student_id__id__user','student_id__id__department').get(student_id=student_id) + # y = Menu.objects.filter(mess_option=mess_optn.mess_option) + current_rem_balance = mess_optn.balance + current_mess_status = mess_optn.current_mess_status + except: + mess_optn={} + mess_optn={'mess_option':'no-mess'} + # y = Menu.objects.filter(mess_option="mess1") + current_rem_balance = 0 + current_mess_status = 'Deregistered' + + return Response({'payload': {'mess_option': mess_optn.mess_option, 'current_rem_balance': current_rem_balance, 'current_mess_status': current_mess_status}}) From 70ba9ab9e8621fcdbc941de428f71365b58d83f1 Mon Sep 17 00:00:00 2001 From: Adi8712 Date: Sun, 23 Feb 2025 11:53:55 +0530 Subject: [PATCH 7/9] Fix merge --- FusionIIIT/applications/central_mess/api/views.py | 6 ------ 1 file changed, 6 deletions(-) diff --git a/FusionIIIT/applications/central_mess/api/views.py b/FusionIIIT/applications/central_mess/api/views.py index 9643e1fd4..034cfd124 100644 --- a/FusionIIIT/applications/central_mess/api/views.py +++ b/FusionIIIT/applications/central_mess/api/views.py @@ -636,12 +636,6 @@ def get(self,request): reg_record = Reg_records.objects.filter(student_id=student_id) serialized_obj = reg_recordSerialzer(reg_record,many=True) return Response({'payload':serialized_obj.data}) - - def post(self,request): - student = request.data['student_id'] - reg_record = Reg_records.objects.filter(student_id=student) - serialized_obj = reg_recordSerialzer(reg_record,many=True) - return Response({'payload':serialized_obj.data}) class Get_Student_bill(APIView): From d3980e90c189903faa6fd6f3ed83eb935db026b7 Mon Sep 17 00:00:00 2001 From: Adi8712 Date: Sun, 23 Feb 2025 16:58:14 +0530 Subject: [PATCH 8/9] fix: api cleanup --- .../applications/central_mess/api/views.py | 79 ++++++++++--------- 1 file changed, 40 insertions(+), 39 deletions(-) diff --git a/FusionIIIT/applications/central_mess/api/views.py b/FusionIIIT/applications/central_mess/api/views.py index 034cfd124..f91453d5b 100644 --- a/FusionIIIT/applications/central_mess/api/views.py +++ b/FusionIIIT/applications/central_mess/api/views.py @@ -204,27 +204,28 @@ def get(self, request): serialized_obj = PaymentsSerializer(payments_obj, many=True) return Response({'status':200, 'payload':serialized_obj.data}) - def post(self, request): - data = request.data + # def post(self, request): + # data = request.data - # sem = data['sem'] - # year = data['year'] - amount_paid = data['amount_paid'] + # # sem = data['sem'] + # # year = data['year'] + # amount_paid = data['amount_paid'] - username = get_object_or_404(User,username=request.user.username) - idd = ExtraInfo.objects.get(user=username) - student = Student.objects.get(id=idd.id) + # username = get_object_or_404(User,username=request.user.username) + # idd = ExtraInfo.objects.get(user=username) + # student = Student.objects.get(id=idd.id) - obj = Payments( - student_id = student, - # sem = sem, - # year = year, - amount_paid = amount_paid, - ) - obj.save() - return Response({'status':200}) + # obj = Payments( + # student_id = student, + # # sem = sem, + # # year = year, + # amount_paid = amount_paid, + # ) + # obj.save() + # return Response({'status':200}) + class MenuApi(APIView): def get(self, request): menu_obj = Menu.objects.all(); @@ -783,29 +784,29 @@ def put(self, request): print({'error': str(e)}) return Response({'error': str(e)}, status=400) -class DeregistrationApi(APIView): - def post(self, request): - try: - data = request.data - print(data) - student_id = data['student_id'] - end_date = data['end_date'] - - username = get_object_or_404(User, username=student_id) - idd = ExtraInfo.objects.get(user=username) - student = Student.objects.get(id=idd.id) - - reg_main = Reg_main.objects.get(student_id=student) - reg_main.current_mess_status = "Deregistered" - reg_main.save() - - reg_record = Reg_records.objects.filter(student_id=student).latest('start_date') - reg_record.end_date = end_date - reg_record.save() - return Response({'status': 200}) - except Exception as e: - print({'error': str(e)}) - return Response({'error': str(e)}, status=400) +# class DeregistrationApi(APIView): +# def post(self, request): +# try: +# data = request.data +# print(data) +# student_id = data['student_id'] +# end_date = data['end_date'] + +# username = get_object_or_404(User, username=student_id) +# idd = ExtraInfo.objects.get(user=username) +# student = Student.objects.get(id=idd.id) + +# reg_main = Reg_main.objects.get(student_id=student) +# reg_main.current_mess_status = "Deregistered" +# reg_main.save() + +# reg_record = Reg_records.objects.filter(student_id=student).latest('start_date') +# reg_record.end_date = end_date +# reg_record.save() +# return Response({'status': 200}) +# except Exception as e: +# print({'error': str(e)}) +# return Response({'error': str(e)}, status=400) class UpdatePaymentRequestApi(APIView): def get(self, request): From f7f88bcd53d7814518030e66f28661af0186955b Mon Sep 17 00:00:00 2001 From: Adi8712 Date: Tue, 4 Mar 2025 17:28:42 +0530 Subject: [PATCH 9/9] deployment fixes --- FusionIIIT/applications/central_mess/api/urls.py | 1 - 1 file changed, 1 deletion(-) diff --git a/FusionIIIT/applications/central_mess/api/urls.py b/FusionIIIT/applications/central_mess/api/urls.py index aad7b4891..9f0af6c1d 100644 --- a/FusionIIIT/applications/central_mess/api/urls.py +++ b/FusionIIIT/applications/central_mess/api/urls.py @@ -26,7 +26,6 @@ url("get_student_all_details",views.Get_Student_Details.as_view(),name="get_student_details_API"), url('registrationRequestApi', views.RegistrationRequestApi.as_view(), name='registrationRequestApi'), url('deRegistrationRequestApi', views.DeregistrationRequestApi.as_view(), name='deRegistrationRequestApi'), - url('deRegistrationApi', views.DeregistrationApi.as_view(), name='deRegistrationApi'), url('updatePaymentRequestApi', views.UpdatePaymentRequestApi.as_view(), name='updatePaymentRequestApi'), url('get_mess_balance_statusApi', views.Get_Mess_Balance_Status.as_view(), name='get_mess_balance_statusApi'), ] \ No newline at end of file