From f7b8ad1a7851917c047b39a3ab0b8a6d5950a3a9 Mon Sep 17 00:00:00 2001 From: Ms Kumkum Kadhala <22bcs165@iiitdmj.ac.in> Date: Thu, 17 Oct 2024 00:55:59 +0530 Subject: [PATCH 01/37] Add new migration files --- .../migrations/0002_auto_20241016_1905.py | 23 +++++++++++ .../migrations/0003_auto_20241016_1905.py | 18 +++++++++ .../migrations/0002_auto_20241016_1905.py | 40 +++++++++++++++++++ .../migrations/0002_auto_20241016_1905.py | 19 +++++++++ 4 files changed, 100 insertions(+) create mode 100644 FusionIIIT/applications/central_mess/migrations/0002_auto_20241016_1905.py create mode 100644 FusionIIIT/applications/globals/migrations/0003_auto_20241016_1905.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0002_auto_20241016_1905.py create mode 100644 FusionIIIT/applications/research_procedures/migrations/0002_auto_20241016_1905.py diff --git a/FusionIIIT/applications/central_mess/migrations/0002_auto_20241016_1905.py b/FusionIIIT/applications/central_mess/migrations/0002_auto_20241016_1905.py new file mode 100644 index 000000000..c7c1f7c98 --- /dev/null +++ b/FusionIIIT/applications/central_mess/migrations/0002_auto_20241016_1905.py @@ -0,0 +1,23 @@ +# Generated by Django 3.1.5 on 2024-10-16 19:05 + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('central_mess', '0001_initial'), + ] + + operations = [ + migrations.AlterField( + model_name='payments', + name='payment_date', + field=models.DateField(default=datetime.date(2024, 10, 16)), + ), + migrations.AlterUniqueTogether( + name='payments', + unique_together=set(), + ), + ] diff --git a/FusionIIIT/applications/globals/migrations/0003_auto_20241016_1905.py b/FusionIIIT/applications/globals/migrations/0003_auto_20241016_1905.py new file mode 100644 index 000000000..5f8aea90e --- /dev/null +++ b/FusionIIIT/applications/globals/migrations/0003_auto_20241016_1905.py @@ -0,0 +1,18 @@ +# Generated by Django 3.1.5 on 2024-10-16 19:05 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('globals', '0002_auto_20241007_2302'), + ] + + operations = [ + migrations.AlterField( + model_name='extrainfo', + name='user_status', + field=models.CharField(choices=[('PRESENT', 'PRESENT'), ('NEW', 'NEW')], default='PRESENT', max_length=50), + ), + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241016_1905.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241016_1905.py new file mode 100644 index 000000000..90739623d --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241016_1905.py @@ -0,0 +1,40 @@ +# Generated by Django 3.1.5 on 2024-10-16 19:05 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('academic_information', '0001_initial'), + ('online_cms', '0001_initial'), + ] + + operations = [ + migrations.AddField( + model_name='attendance', + name='no_of_attendance', + field=models.IntegerField(default=1), + ), + migrations.AlterField( + model_name='attendance', + name='present', + field=models.IntegerField(default=0), + ), + migrations.AlterField( + model_name='gradingscheme', + name='type_of_evaluation', + field=models.CharField(max_length=100), + ), + migrations.CreateModel( + name='StudentEvaluation', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), + ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), + ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), + ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), + ], + ), + ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0002_auto_20241016_1905.py b/FusionIIIT/applications/research_procedures/migrations/0002_auto_20241016_1905.py new file mode 100644 index 000000000..4973df44f --- /dev/null +++ b/FusionIIIT/applications/research_procedures/migrations/0002_auto_20241016_1905.py @@ -0,0 +1,19 @@ +# Generated by Django 3.1.5 on 2024-10-16 19:05 + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('research_procedures', '0001_initial'), + ] + + operations = [ + migrations.AlterField( + model_name='staff_allocations', + name='start_date', + field=models.DateField(default=datetime.date(2024, 10, 16)), + ), + ] From cb7b74c40abffffd156710482715e93e128f0f1e Mon Sep 17 00:00:00 2001 From: Harsh Date: Thu, 17 Oct 2024 10:25:39 +0530 Subject: [PATCH 02/37] created api folder --- .../migrations/0002_auto_20241017_0040.py | 23 +++++++++++ .../migrations/0003_auto_20241017_0040.py | 18 +++++++++ .../migrations/0002_auto_20241017_0040.py | 40 +++++++++++++++++++ .../migrations/0002_auto_20241017_0040.py | 19 +++++++++ .../scholarships/api/serializers.py | 0 .../applications/scholarships/api/urls.py | 0 .../applications/scholarships/api/views.py | 0 7 files changed, 100 insertions(+) create mode 100644 FusionIIIT/applications/central_mess/migrations/0002_auto_20241017_0040.py create mode 100644 FusionIIIT/applications/globals/migrations/0003_auto_20241017_0040.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0002_auto_20241017_0040.py create mode 100644 FusionIIIT/applications/research_procedures/migrations/0002_auto_20241017_0040.py create mode 100644 FusionIIIT/applications/scholarships/api/serializers.py create mode 100644 FusionIIIT/applications/scholarships/api/urls.py create mode 100644 FusionIIIT/applications/scholarships/api/views.py diff --git a/FusionIIIT/applications/central_mess/migrations/0002_auto_20241017_0040.py b/FusionIIIT/applications/central_mess/migrations/0002_auto_20241017_0040.py new file mode 100644 index 000000000..c2ad27e7a --- /dev/null +++ b/FusionIIIT/applications/central_mess/migrations/0002_auto_20241017_0040.py @@ -0,0 +1,23 @@ +# Generated by Django 3.1.5 on 2024-10-17 00:40 + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('central_mess', '0001_initial'), + ] + + operations = [ + migrations.AlterField( + model_name='payments', + name='payment_date', + field=models.DateField(default=datetime.date(2024, 10, 17)), + ), + migrations.AlterUniqueTogether( + name='payments', + unique_together=set(), + ), + ] diff --git a/FusionIIIT/applications/globals/migrations/0003_auto_20241017_0040.py b/FusionIIIT/applications/globals/migrations/0003_auto_20241017_0040.py new file mode 100644 index 000000000..ba964aa12 --- /dev/null +++ b/FusionIIIT/applications/globals/migrations/0003_auto_20241017_0040.py @@ -0,0 +1,18 @@ +# Generated by Django 3.1.5 on 2024-10-17 00:40 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('globals', '0002_auto_20241007_2302'), + ] + + operations = [ + migrations.AlterField( + model_name='extrainfo', + name='user_status', + field=models.CharField(choices=[('PRESENT', 'PRESENT'), ('NEW', 'NEW')], default='PRESENT', max_length=50), + ), + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241017_0040.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241017_0040.py new file mode 100644 index 000000000..1669cce6d --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241017_0040.py @@ -0,0 +1,40 @@ +# Generated by Django 3.1.5 on 2024-10-17 00:40 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('academic_information', '0001_initial'), + ('online_cms', '0001_initial'), + ] + + operations = [ + migrations.AddField( + model_name='attendance', + name='no_of_attendance', + field=models.IntegerField(default=1), + ), + migrations.AlterField( + model_name='attendance', + name='present', + field=models.IntegerField(default=0), + ), + migrations.AlterField( + model_name='gradingscheme', + name='type_of_evaluation', + field=models.CharField(max_length=100), + ), + migrations.CreateModel( + name='StudentEvaluation', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), + ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), + ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), + ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), + ], + ), + ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0002_auto_20241017_0040.py b/FusionIIIT/applications/research_procedures/migrations/0002_auto_20241017_0040.py new file mode 100644 index 000000000..837aff62b --- /dev/null +++ b/FusionIIIT/applications/research_procedures/migrations/0002_auto_20241017_0040.py @@ -0,0 +1,19 @@ +# Generated by Django 3.1.5 on 2024-10-17 00:40 + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('research_procedures', '0001_initial'), + ] + + operations = [ + migrations.AlterField( + model_name='staff_allocations', + name='start_date', + field=models.DateField(default=datetime.date(2024, 10, 17)), + ), + ] diff --git a/FusionIIIT/applications/scholarships/api/serializers.py b/FusionIIIT/applications/scholarships/api/serializers.py new file mode 100644 index 000000000..e69de29bb diff --git a/FusionIIIT/applications/scholarships/api/urls.py b/FusionIIIT/applications/scholarships/api/urls.py new file mode 100644 index 000000000..e69de29bb diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py new file mode 100644 index 000000000..e69de29bb From b85b3d6b313753354b4ccc8e18336846ed3cfaf7 Mon Sep 17 00:00:00 2001 From: Ms Kumkum Kadhala <22bcs165@iiitdmj.ac.in> Date: Thu, 17 Oct 2024 17:30:30 +0530 Subject: [PATCH 03/37] Added files in the scholarships/api directory --- FusionIIIT/applications/scholarships/api/serializers.py | 0 FusionIIIT/applications/scholarships/api/urls.py | 0 FusionIIIT/applications/scholarships/api/views.py | 0 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 FusionIIIT/applications/scholarships/api/serializers.py create mode 100644 FusionIIIT/applications/scholarships/api/urls.py create mode 100644 FusionIIIT/applications/scholarships/api/views.py diff --git a/FusionIIIT/applications/scholarships/api/serializers.py b/FusionIIIT/applications/scholarships/api/serializers.py new file mode 100644 index 000000000..e69de29bb diff --git a/FusionIIIT/applications/scholarships/api/urls.py b/FusionIIIT/applications/scholarships/api/urls.py new file mode 100644 index 000000000..e69de29bb diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py new file mode 100644 index 000000000..e69de29bb From d378779ef790f4c1818e7c4fdde524f0b014ac04 Mon Sep 17 00:00:00 2001 From: Harsh Date: Sun, 20 Oct 2024 19:35:25 +0530 Subject: [PATCH 04/37] previous winners api --- .../scholarships/api/serializers.py | 102 ++++++++++++++++++ .../applications/scholarships/api/urls.py | 22 ++++ .../applications/scholarships/api/views.py | 49 +++++++++ .../applications/scholarships/models.py | 2 - FusionIIIT/applications/scholarships/urls.py | 3 + 5 files changed, 176 insertions(+), 2 deletions(-) diff --git a/FusionIIIT/applications/scholarships/api/serializers.py b/FusionIIIT/applications/scholarships/api/serializers.py index e69de29bb..c2937ed2c 100644 --- a/FusionIIIT/applications/scholarships/api/serializers.py +++ b/FusionIIIT/applications/scholarships/api/serializers.py @@ -0,0 +1,102 @@ +from rest_framework import serializers +from applications.academic_information.models import Student +from applications.globals.models import ExtraInfo +from applications.scholarships.models import Award_and_scholarship,Previous_winner + + +class AwardAndScholarshipSerializer(serializers.ModelSerializer): + class Meta: + model = Award_and_scholarship + fields = ['award_name', 'catalog'] + + +class PreviousWinnerSerializer(serializers.ModelSerializer): + class Meta: + model = Previous_winner + fields = ['student', 'programme', 'year', 'award_id'] + + + +# class McmSerializer(serializers.ModelSerializer): +# class Meta: +# model = Mcm +# fields = [ +# 'brother_name', 'brother_occupation', 'sister_name', 'sister_occupation', +# 'income_father', 'income_mother', 'income_other', 'father_occ', 'mother_occ', +# 'father_occ_desc', 'mother_occ_desc', 'four_wheeler', 'four_wheeler_desc', +# 'two_wheeler', 'two_wheeler_desc', 'house', 'plot_area', 'constructed_area', +# 'school_fee', 'school_name', 'bank_name', 'loan_amount', 'college_fee', +# 'college_name', 'income_certificate', 'forms', 'status', 'student', +# 'annual_income', 'date', 'award_id' +# ] + + +# class NotionalPrizeSerializer(serializers.ModelSerializer): +# class Meta: +# model = Notional_prize +# fields = ['spi', 'cpi', 'year', 'award_id'] + + +# class ReleaseSerializer(serializers.ModelSerializer): +# class Meta: +# model = Release +# fields = [ +# 'date_time', 'programme', 'startdate', 'enddate', 'award', +# 'remarks', 'batch', 'notif_visible' +# ] + +# class NotificationSerializer(serializers.ModelSerializer): +# class Meta: +# model = Notification +# fields = [ +# 'release_id', 'student_id', 'notification_mcm_flag', +# 'notification_convocation_flag', 'invite_mcm_accept_flag', +# 'invite_convocation_accept_flag' +# ] + +# class ApplicationSerializer(serializers.ModelSerializer): +# class Meta: +# model = Application +# fields = ['application_id', 'student_id', 'applied_flag', 'award'] + + +# class DirectorSilverSerializer(serializers.ModelSerializer): +# class Meta: +# model = Director_silver +# fields = [ +# 'nearest_policestation', 'nearest_railwaystation', 'correspondence_address', +# 'student', 'award_id', 'award_type', 'status', 'relevant_document', 'date', +# 'financial_assistance', 'grand_total', 'inside_achievements', 'justification', +# 'outside_achievements' +# ] + + + +# class ProficiencyDmSerializer(serializers.ModelSerializer): +# class Meta: +# model = Proficiency_dm +# fields = [ +# 'relevant_document', 'title_name', 'student', 'award_id', 'award_type', +# 'status', 'nearest_policestation', 'nearest_railwaystation', +# 'correspondence_address', 'no_of_students', 'date', 'roll_no1', 'roll_no2', +# 'roll_no3', 'roll_no4', 'roll_no5', 'financial_assistance', +# 'brief_description', 'justification', 'grand_total', 'ece_topic', 'cse_topic', +# 'mech_topic', 'design_topic', 'ece_percentage', 'cse_percentage', +# 'mech_percentage', 'design_percentage' +# ] + + +# class DirectorGoldSerializer(serializers.ModelSerializer): +# class Meta: +# model = Director_gold +# fields = [ +# 'student', 'status', 'correspondence_address', 'nearest_policestation', +# 'nearest_railwaystation', 'relevant_document', 'date', 'award_id', +# 'financial_assistance', 'academic_achievements', 'science_inside', +# 'science_outside', 'games_inside', 'games_outside', 'cultural_inside', +# 'cultural_outside', 'social', 'corporate', 'hall_activities', +# 'gymkhana_activities', 'institute_activities', 'counselling_activities', +# 'other_activities', 'justification', 'grand_total' +# ] + + diff --git a/FusionIIIT/applications/scholarships/api/urls.py b/FusionIIIT/applications/scholarships/api/urls.py index e69de29bb..328404f51 100644 --- a/FusionIIIT/applications/scholarships/api/urls.py +++ b/FusionIIIT/applications/scholarships/api/urls.py @@ -0,0 +1,22 @@ +from django.conf.urls import url + +from . import views + +app_name = 'spacs' + +urlpatterns = [ + + # url(r'^$', views.spacs, name='spacs'), + # url(r'^student_view/$', views.student_view, name='student_view'), + # url(r'^convener_view/$', views.convener_view, name='convener_view'), + # url(r'^staff_view/$', views.staff_view, name='staff_view'), + # url(r'^stats/$', views.stats, name='stats'), + # url(r'^convenerCatalogue/$', views.convenerCatalogue, name='convenerCatalogue'), + # url(r'^getWinners/$', views.getWinners, name='getWinners'), + # url(r'^get_MCM_Flag/$', views.get_MCM_Flag, name='get_MCM_Flag'), + # url(r'^getConvocationFlag/$', views.getConvocationFlag, name='getConvocationFlag'), + # url(r'^getContent/$', views.getContent, name='getContent'), + # url(r'^updateEndDate/$', views.updateEndDate, name='updateEndDate'), + path('get-winners/', GetWinnersView.as_view(), name='get-winners') + +] \ No newline at end of file diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index e69de29bb..706ae75c7 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -0,0 +1,49 @@ +from rest_framework.views import APIView +from rest_framework.response import Response +from rest_framework import status +from applications.scholarships.models import Previous_winner, Award_and_scholarship +from applications.academic_information.models import Spi, Student +from applications.globals.models import (Designation, ExtraInfo, + HoldsDesignation) +from .serializers import PreviousWinnerSerializer + +class GetWinnersView(APIView): + + def post(self, request, *args, **kwargs): + award_id = request.data.get('award_id') + batch_year = int(request.data.get('batch')) + programme_name = request.data.get('programme') + + try: + award = Award_and_scholarship.objects.get(id=award_id) + except Award_and_scholarship.DoesNotExist: + return Response({'result': 'Failure', 'error': 'Award not found'}, status=status.HTTP_404_NOT_FOUND) + + winners = Previous_winner.objects.select_related('student', 'award_id').filter( + year=batch_year, award_id=award, programme=programme_name + ) + + context = { + 'student_name': [], + 'student_program': [], + 'roll': [] + } + + if winners.exists(): + for winner in winners: + extra_info = ExtraInfo.objects.get(id=winner.student_id) + student_id = Student.objects.get(id=extra_info) + student_name = extra_info.user.first_name + student_roll = winner.student_id + student_program = student_id.programme + + context['student_name'].append(student_name) + context['roll'].append(student_roll) + context['student_program'].append(student_program) + print(student_roll) + + context['result'] = 'Success' + return Response(context, status=status.HTTP_200_OK) + + else: + return Response({'result': 'Failure', 'error': 'No winners found'}, status=status.HTTP_404_NOT_FOUND) diff --git a/FusionIIIT/applications/scholarships/models.py b/FusionIIIT/applications/scholarships/models.py index 9f81e976e..df24c5f8d 100755 --- a/FusionIIIT/applications/scholarships/models.py +++ b/FusionIIIT/applications/scholarships/models.py @@ -1,7 +1,5 @@ import datetime - from django.db import models - from applications.academic_information.models import Student from applications.globals.models import ExtraInfo diff --git a/FusionIIIT/applications/scholarships/urls.py b/FusionIIIT/applications/scholarships/urls.py index 121cdd116..cf3286d03 100755 --- a/FusionIIIT/applications/scholarships/urls.py +++ b/FusionIIIT/applications/scholarships/urls.py @@ -1,6 +1,7 @@ from django.conf.urls import url from . import views +from applications.scholarships.api.views import GetWinnersView app_name = 'spacs' @@ -17,5 +18,7 @@ url(r'^getConvocationFlag/$', views.getConvocationFlag, name='getConvocationFlag'), url(r'^getContent/$', views.getContent, name='getContent'), url(r'^updateEndDate/$', views.updateEndDate, name='updateEndDate'), + #app + url(r'get-winners/', GetWinnersView.as_view(), name='get-winners') ] \ No newline at end of file From c2f97211c10ef0359de2a8b32666513f5af37ce0 Mon Sep 17 00:00:00 2001 From: Harsh Date: Sun, 20 Oct 2024 22:05:01 +0530 Subject: [PATCH 05/37] Api Created for previous winners --- .../applications/scholarships/api/serializers.py | 2 +- FusionIIIT/applications/scholarships/api/views.py | 15 ++++++++++++++- FusionIIIT/applications/scholarships/models.py | 2 +- FusionIIIT/applications/scholarships/urls.py | 3 ++- 4 files changed, 18 insertions(+), 4 deletions(-) diff --git a/FusionIIIT/applications/scholarships/api/serializers.py b/FusionIIIT/applications/scholarships/api/serializers.py index c2937ed2c..a4e9444e8 100644 --- a/FusionIIIT/applications/scholarships/api/serializers.py +++ b/FusionIIIT/applications/scholarships/api/serializers.py @@ -7,7 +7,7 @@ class AwardAndScholarshipSerializer(serializers.ModelSerializer): class Meta: model = Award_and_scholarship - fields = ['award_name', 'catalog'] + fields = '__all__' # This will include all fields of the model class PreviousWinnerSerializer(serializers.ModelSerializer): diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index 706ae75c7..d2d034bda 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -5,7 +5,20 @@ from applications.academic_information.models import Spi, Student from applications.globals.models import (Designation, ExtraInfo, HoldsDesignation) -from .serializers import PreviousWinnerSerializer +from rest_framework import viewsets +from .serializers import PreviousWinnerSerializer,AwardAndScholarshipSerializer + + + + + +class AwardAndScholarshipViewSet(viewsets.ModelViewSet): + queryset = Award_and_scholarship.objects.all() # Fetches all records + serializer_class = AwardAndScholarshipSerializer # Links the serializer to the ViewSet + + + + class GetWinnersView(APIView): diff --git a/FusionIIIT/applications/scholarships/models.py b/FusionIIIT/applications/scholarships/models.py index df24c5f8d..9f78e26c0 100755 --- a/FusionIIIT/applications/scholarships/models.py +++ b/FusionIIIT/applications/scholarships/models.py @@ -72,7 +72,7 @@ class Award_and_scholarship(models.Model): class Meta: db_table = 'Award_and_scholarship' - + def __str__(self): return self.award_name diff --git a/FusionIIIT/applications/scholarships/urls.py b/FusionIIIT/applications/scholarships/urls.py index cf3286d03..a7ac076f9 100755 --- a/FusionIIIT/applications/scholarships/urls.py +++ b/FusionIIIT/applications/scholarships/urls.py @@ -19,6 +19,7 @@ url(r'^getContent/$', views.getContent, name='getContent'), url(r'^updateEndDate/$', views.updateEndDate, name='updateEndDate'), #app - url(r'get-winners/', GetWinnersView.as_view(), name='get-winners') + url(r'get-winners/', GetWinnersView.as_view(), name='get-winners'), + ] \ No newline at end of file From 1f454740240d21f1ef7ce055796d1d3b780dcf27 Mon Sep 17 00:00:00 2001 From: Harsh Date: Mon, 21 Oct 2024 00:19:38 +0530 Subject: [PATCH 06/37] api made of previous winner and catalog --- .../applications/scholarships/api/serializers.py | 5 ++++- FusionIIIT/applications/scholarships/api/views.py | 12 +++++++----- FusionIIIT/applications/scholarships/models.py | 12 +++++++++++- FusionIIIT/applications/scholarships/urls.py | 8 +++++++- 4 files changed, 29 insertions(+), 8 deletions(-) diff --git a/FusionIIIT/applications/scholarships/api/serializers.py b/FusionIIIT/applications/scholarships/api/serializers.py index a4e9444e8..998e97ea6 100644 --- a/FusionIIIT/applications/scholarships/api/serializers.py +++ b/FusionIIIT/applications/scholarships/api/serializers.py @@ -7,7 +7,10 @@ class AwardAndScholarshipSerializer(serializers.ModelSerializer): class Meta: model = Award_and_scholarship - fields = '__all__' # This will include all fields of the model + fields = ['id', 'award_name', 'catalog'] + extra_kwargs = { + 'catalog': {'required': True, 'allow_null': False} # Make catalog optional + } class PreviousWinnerSerializer(serializers.ModelSerializer): diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index d2d034bda..52e9f32b5 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -1,21 +1,23 @@ from rest_framework.views import APIView from rest_framework.response import Response +from rest_framework.decorators import api_view from rest_framework import status from applications.scholarships.models import Previous_winner, Award_and_scholarship from applications.academic_information.models import Spi, Student from applications.globals.models import (Designation, ExtraInfo, HoldsDesignation) from rest_framework import viewsets -from .serializers import PreviousWinnerSerializer,AwardAndScholarshipSerializer +from applications.scholarships.api.serializers import PreviousWinnerSerializer,AwardAndScholarshipSerializer +class create_award(APIView): + def get(self, request, *args, **kwargs): + awards = Award_and_scholarship.objects.all() # Fetch all awards + serializer = AwardAndScholarshipSerializer(awards, many=True) # Serialize the awards + return Response(serializer.data, status=status.HTTP_200_OK) -class AwardAndScholarshipViewSet(viewsets.ModelViewSet): - queryset = Award_and_scholarship.objects.all() # Fetches all records - serializer_class = AwardAndScholarshipSerializer # Links the serializer to the ViewSet - diff --git a/FusionIIIT/applications/scholarships/models.py b/FusionIIIT/applications/scholarships/models.py index 9f78e26c0..6cd98d630 100755 --- a/FusionIIIT/applications/scholarships/models.py +++ b/FusionIIIT/applications/scholarships/models.py @@ -72,10 +72,20 @@ class Award_and_scholarship(models.Model): class Meta: db_table = 'Award_and_scholarship' - + def __str__(self): return self.award_name +# class Award_and_scholarship(models.Model): +# award_name = models.CharField(max_length=100, default='') +# catalog = models.TextField(max_length=5000, blank=True, null=False) # blank=True for forms, null=True for database + +# class Meta: +# db_table = 'Award_and_scholarship' + +# def __str__(self): +# return self.award_name + class Mcm(models.Model): brother_name = models.CharField(max_length=30, null=True) diff --git a/FusionIIIT/applications/scholarships/urls.py b/FusionIIIT/applications/scholarships/urls.py index a7ac076f9..1b6d10194 100755 --- a/FusionIIIT/applications/scholarships/urls.py +++ b/FusionIIIT/applications/scholarships/urls.py @@ -1,7 +1,10 @@ from django.conf.urls import url +from django.urls import path, include +from rest_framework.routers import DefaultRouter from . import views from applications.scholarships.api.views import GetWinnersView +from applications.scholarships.api.views import create_award app_name = 'spacs' @@ -20,6 +23,9 @@ url(r'^updateEndDate/$', views.updateEndDate, name='updateEndDate'), #app url(r'get-winners/', GetWinnersView.as_view(), name='get-winners'), - + url(r'create-award/', create_award.as_view(), name='create-award'), + + + ] \ No newline at end of file From e9ad1e62781b9eaaffde14e6a2376beb30b33efc Mon Sep 17 00:00:00 2001 From: Priyanshu <115771027+PriyanshuXcoder@users.noreply.github.com> Date: Sun, 10 Nov 2024 12:05:37 +0530 Subject: [PATCH 07/37] API's made for MCM & all three medals --- .../migrations/0002_auto_20241018_0342.py | 23 ++++++++ .../migrations/0003_auto_20241018_0342.py | 18 ++++++ .../migrations/0002_auto_20241018_0342.py | 40 +++++++++++++ .../migrations/0002_auto_20241018_0342.py | 19 ++++++ .../scholarships/api/serializers.py | 20 ++++++- .../applications/scholarships/api/views.py | 58 ++++++++++++++++++- .../applications/scholarships/models.py | 1 + FusionIIIT/applications/scholarships/urls.py | 7 ++- 8 files changed, 181 insertions(+), 5 deletions(-) create mode 100644 FusionIIIT/applications/central_mess/migrations/0002_auto_20241018_0342.py create mode 100644 FusionIIIT/applications/globals/migrations/0003_auto_20241018_0342.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0002_auto_20241018_0342.py create mode 100644 FusionIIIT/applications/research_procedures/migrations/0002_auto_20241018_0342.py diff --git a/FusionIIIT/applications/central_mess/migrations/0002_auto_20241018_0342.py b/FusionIIIT/applications/central_mess/migrations/0002_auto_20241018_0342.py new file mode 100644 index 000000000..1099cf271 --- /dev/null +++ b/FusionIIIT/applications/central_mess/migrations/0002_auto_20241018_0342.py @@ -0,0 +1,23 @@ +# Generated by Django 3.1.5 on 2024-10-18 03:42 + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('central_mess', '0001_initial'), + ] + + operations = [ + migrations.AlterField( + model_name='payments', + name='payment_date', + field=models.DateField(default=datetime.date(2024, 10, 18)), + ), + migrations.AlterUniqueTogether( + name='payments', + unique_together=set(), + ), + ] diff --git a/FusionIIIT/applications/globals/migrations/0003_auto_20241018_0342.py b/FusionIIIT/applications/globals/migrations/0003_auto_20241018_0342.py new file mode 100644 index 000000000..3d25d53d1 --- /dev/null +++ b/FusionIIIT/applications/globals/migrations/0003_auto_20241018_0342.py @@ -0,0 +1,18 @@ +# Generated by Django 3.1.5 on 2024-10-18 03:42 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('globals', '0002_auto_20241007_2302'), + ] + + operations = [ + migrations.AlterField( + model_name='extrainfo', + name='user_status', + field=models.CharField(choices=[('PRESENT', 'PRESENT'), ('NEW', 'NEW')], default='PRESENT', max_length=50), + ), + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241018_0342.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241018_0342.py new file mode 100644 index 000000000..3411068ae --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241018_0342.py @@ -0,0 +1,40 @@ +# Generated by Django 3.1.5 on 2024-10-18 03:42 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('academic_information', '0001_initial'), + ('online_cms', '0001_initial'), + ] + + operations = [ + migrations.AddField( + model_name='attendance', + name='no_of_attendance', + field=models.IntegerField(default=1), + ), + migrations.AlterField( + model_name='attendance', + name='present', + field=models.IntegerField(default=0), + ), + migrations.AlterField( + model_name='gradingscheme', + name='type_of_evaluation', + field=models.CharField(max_length=100), + ), + migrations.CreateModel( + name='StudentEvaluation', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), + ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), + ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), + ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), + ], + ), + ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0002_auto_20241018_0342.py b/FusionIIIT/applications/research_procedures/migrations/0002_auto_20241018_0342.py new file mode 100644 index 000000000..2995814f6 --- /dev/null +++ b/FusionIIIT/applications/research_procedures/migrations/0002_auto_20241018_0342.py @@ -0,0 +1,19 @@ +# Generated by Django 3.1.5 on 2024-10-18 03:42 + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('research_procedures', '0001_initial'), + ] + + operations = [ + migrations.AlterField( + model_name='staff_allocations', + name='start_date', + field=models.DateField(default=datetime.date(2024, 10, 18)), + ), + ] diff --git a/FusionIIIT/applications/scholarships/api/serializers.py b/FusionIIIT/applications/scholarships/api/serializers.py index 998e97ea6..683437ef8 100644 --- a/FusionIIIT/applications/scholarships/api/serializers.py +++ b/FusionIIIT/applications/scholarships/api/serializers.py @@ -1,7 +1,7 @@ from rest_framework import serializers from applications.academic_information.models import Student from applications.globals.models import ExtraInfo -from applications.scholarships.models import Award_and_scholarship,Previous_winner +from applications.scholarships.models import Award_and_scholarship,Previous_winner,Director_gold,Director_silver,Proficiency_dm,Mcm class AwardAndScholarshipSerializer(serializers.ModelSerializer): @@ -19,7 +19,25 @@ class Meta: fields = ['student', 'programme', 'year', 'award_id'] +class DirectorGoldSerializer(serializers.ModelSerializer): + class Meta: + model = Director_gold + fields = '__all__' + +class DirectorSilverSerializer(serializers.ModelSerializer): + class Meta: + model = Director_silver + fields = '__all__' +class ProficiencyDMSerializer(serializers.ModelSerializer): + class Meta: + model = Proficiency_dm + fields = '__all__' + +class McmSerializer(serializers.ModelSerializer): + class Meta: + model = Mcm + fields = '__all__' # class McmSerializer(serializers.ModelSerializer): # class Meta: # model = Mcm diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index 52e9f32b5..b2959ddaa 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -2,12 +2,12 @@ from rest_framework.response import Response from rest_framework.decorators import api_view from rest_framework import status -from applications.scholarships.models import Previous_winner, Award_and_scholarship +from applications.scholarships.models import Previous_winner, Award_and_scholarship,Director_gold,Director_silver from applications.academic_information.models import Spi, Student from applications.globals.models import (Designation, ExtraInfo, HoldsDesignation) from rest_framework import viewsets -from applications.scholarships.api.serializers import PreviousWinnerSerializer,AwardAndScholarshipSerializer +from applications.scholarships.api.serializers import PreviousWinnerSerializer,AwardAndScholarshipSerializer,DirectorGoldSerializer,DirectorSilverSerializer,ProficiencyDMSerializer,McmSerializer class create_award(APIView): @@ -62,3 +62,57 @@ def post(self, request, *args, **kwargs): else: return Response({'result': 'Failure', 'error': 'No winners found'}, status=status.HTTP_404_NOT_FOUND) + + + +class DirectorGoldUpdateView(APIView): + def put(self, request): + # Deserialize the data without specifying an instance, allowing for creation or update + serializer = DirectorGoldSerializer(data=request.data) + + if serializer.is_valid(): + # Save the object; if the data contains an 'id', it will update the existing record + serializer.save() + return Response(serializer.data, status=status.HTTP_200_OK) + + return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) + + +class DirectorSilverUpdateView(APIView): + def put(self, request): + # Deserialize the data, which includes the ID for identifying the record to update + serializer = DirectorSilverSerializer(data=request.data) + + if serializer.is_valid(): + # Save the object; if the data contains an 'id', it will update the existing record + serializer.save() + return Response(serializer.data, status=status.HTTP_200_OK) + + return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) + + +class ProficiencyDMUpdateView(APIView): + def put(self, request): + # Deserialize the data, which includes the ID for identifying the record to update + serializer = ProficiencyDMSerializer(data=request.data) + + if serializer.is_valid(): + # Save the object; if the data contains an 'id', it will update the existing record + serializer.save() + return Response(serializer.data, status=status.HTTP_200_OK) + + return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) + + +class McmUpdateView(APIView): + def put(self, request): + # Deserialize the data from the request + serializer = McmSerializer(data=request.data) + + # Validate and save data if valid + if serializer.is_valid(): + serializer.save() + return Response(serializer.data, status=status.HTTP_200_OK) + + # Return error details if validation fails + return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) \ No newline at end of file diff --git a/FusionIIIT/applications/scholarships/models.py b/FusionIIIT/applications/scholarships/models.py index 6cd98d630..f9a52d40e 100755 --- a/FusionIIIT/applications/scholarships/models.py +++ b/FusionIIIT/applications/scholarships/models.py @@ -117,6 +117,7 @@ class Mcm(models.Model): college_fee = models.IntegerField(blank=True, null=True) college_name = models.CharField(max_length=30, null=True) income_certificate = models.FileField(null=True, blank=True) + # marksheet = models.FileField(upload_to='marksheets/', null=False, blank=False) forms = models.FileField(null=True, blank=True) status = models.CharField(max_length=10, choices=Constants.STATUS_CHOICES, default='INCOMPLETE') student = models.ForeignKey(Student, diff --git a/FusionIIIT/applications/scholarships/urls.py b/FusionIIIT/applications/scholarships/urls.py index 1b6d10194..5f9e869b4 100755 --- a/FusionIIIT/applications/scholarships/urls.py +++ b/FusionIIIT/applications/scholarships/urls.py @@ -5,6 +5,7 @@ from . import views from applications.scholarships.api.views import GetWinnersView from applications.scholarships.api.views import create_award +from applications.scholarships.api.views import DirectorGoldUpdateView,DirectorSilverUpdateView,ProficiencyDMUpdateView,McmUpdateView app_name = 'spacs' @@ -24,8 +25,10 @@ #app url(r'get-winners/', GetWinnersView.as_view(), name='get-winners'), url(r'create-award/', create_award.as_view(), name='create-award'), - - + url(r'director-gold/', DirectorGoldUpdateView.as_view(), name='director-gold-update'), + path('director-silver/', DirectorSilverUpdateView.as_view(), name='director-silver-update'), + path('proficiency-dm/', ProficiencyDMUpdateView.as_view(), name='proficiency-dm-update'), + path('mcm/', McmUpdateView.as_view(), name='mcm-update'), ] \ No newline at end of file From 4d59343a2a82d482ad6010ec798bd59a8b3572e0 Mon Sep 17 00:00:00 2001 From: harshit Date: Sun, 10 Nov 2024 23:48:59 +0530 Subject: [PATCH 08/37] making APIs to check status --- .../scholarships/api/serializers.py | 23 +++- .../applications/scholarships/api/views.py | 100 ++++++++++++++++-- FusionIIIT/applications/scholarships/urls.py | 11 +- 3 files changed, 122 insertions(+), 12 deletions(-) diff --git a/FusionIIIT/applications/scholarships/api/serializers.py b/FusionIIIT/applications/scholarships/api/serializers.py index 998e97ea6..cfcfa4295 100644 --- a/FusionIIIT/applications/scholarships/api/serializers.py +++ b/FusionIIIT/applications/scholarships/api/serializers.py @@ -1,7 +1,7 @@ from rest_framework import serializers from applications.academic_information.models import Student from applications.globals.models import ExtraInfo -from applications.scholarships.models import Award_and_scholarship,Previous_winner +from applications.scholarships.models import Award_and_scholarship,Previous_winner,Mcm,Director_silver,Director_gold,Notional_prize,Proficiency_dm class AwardAndScholarshipSerializer(serializers.ModelSerializer): @@ -19,7 +19,26 @@ class Meta: fields = ['student', 'programme', 'year', 'award_id'] - +class McmSerializer(serializers.ModelSerializer): + class Meta: + model = Mcm + fields = '__all__' +class DirectorSilverSerializer(serializers.ModelSerializer): + class Meta: + model = Director_silver + fields = '__all__' +class DirectorGoldSerializer(serializers.ModelSerializer): + class Meta: + model = Director_gold + fields = '__all__' +class NotionalPrizeSerializer(serializers.ModelSerializer): + class Meta: + model = Notional_prize + fields = '__all__' +class ProficiencyDmSerializer(serializers.ModelSerializer): + class Meta: + model = Proficiency_dm + fields = '__all__' # class McmSerializer(serializers.ModelSerializer): # class Meta: # model = Mcm diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index 52e9f32b5..6c1213898 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -2,13 +2,12 @@ from rest_framework.response import Response from rest_framework.decorators import api_view from rest_framework import status -from applications.scholarships.models import Previous_winner, Award_and_scholarship +from applications.scholarships.models import Previous_winner, Award_and_scholarship,Mcm,Director_gold,Notional_prize,Director_silver,Proficiency_dm from applications.academic_information.models import Spi, Student from applications.globals.models import (Designation, ExtraInfo, HoldsDesignation) from rest_framework import viewsets -from applications.scholarships.api.serializers import PreviousWinnerSerializer,AwardAndScholarshipSerializer - +from applications.scholarships.api.serializers import PreviousWinnerSerializer,AwardAndScholarshipSerializer,McmSerializer,NotionalPrizeSerializer,DirectorGoldSerializer,DirectorSilverSerializer,ProficiencyDmSerializer class create_award(APIView): def get(self, request, *args, **kwargs): @@ -17,11 +16,6 @@ def get(self, request, *args, **kwargs): return Response(serializer.data, status=status.HTTP_200_OK) - - - - - class GetWinnersView(APIView): def post(self, request, *args, **kwargs): @@ -62,3 +56,93 @@ def post(self, request, *args, **kwargs): else: return Response({'result': 'Failure', 'error': 'No winners found'}, status=status.HTTP_404_NOT_FOUND) +class McmUpdateView(APIView): + def post(self, request): + serializer = McmSerializer(data=request.data) + if serializer.is_valid(): + mcm_instance = serializer.save() + return Response(McmSerializer(mcm_instance).data, status=status.HTTP_201_CREATED) + return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) + +class McmRetrieveView(APIView): + def post(self, request): + roll_number = request.data.get('roll_number') + + if not roll_number: + return Response({"detail": "Roll number is required."}, status=status.HTTP_400_BAD_REQUEST) + + mcm_data = Mcm.objects.filter(student=roll_number) + + if not mcm_data.exists(): + return Response({"detail": "No Mcm data found for this roll number."}, status=status.HTTP_404_NOT_FOUND) + + serializer = McmSerializer(mcm_data, many=True) + + return Response(serializer.data, status=status.HTTP_200_OK) +class DirectorSilverRetrieveView(APIView): + def post(self, request): + roll_number = request.data.get('roll_number') + + if not roll_number: + return Response({"detail": "Roll number is required."}, status=status.HTTP_400_BAD_REQUEST) + + director_silver_data = Director_silver.objects.filter(student=roll_number) + + if not director_silver_data.exists(): + return Response({"detail": "No Director Silver data found for this roll number."}, status=status.HTTP_404_NOT_FOUND) + + serializer = DirectorSilverSerializer(director_silver_data, many=True) + + return Response(serializer.data, status=status.HTTP_200_OK) +class DirectorSilverUpdateView(APIView): + def post(self, request): + serializer = DirectorSilverSerializer(data=request.data) + if serializer.is_valid(): + director_silver_instance = serializer.save() + return Response(DirectorSilverSerializer(director_silver_instance).data, status=status.HTTP_201_CREATED) + return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) +class DirectorGoldRetrieveView(APIView): + def post(self, request): + roll_number = request.data.get('roll_number') + + if not roll_number: + return Response({"detail": "Roll number is required."}, status=status.HTTP_400_BAD_REQUEST) + + director_gold_data = Director_gold.objects.filter(student=roll_number) + + if not director_gold_data.exists(): + return Response({"detail": "No Director Gold data found for this roll number."}, status=status.HTTP_404_NOT_FOUND) + + serializer = DirectorGoldSerializer(director_gold_data, many=True) + + return Response(serializer.data, status=status.HTTP_200_OK) +class DirectorGoldUpdateView(APIView): + def post(self, request): + serializer = DirectorGoldSerializer(data=request.data) + if serializer.is_valid(): + director_gold_instance = serializer.save() + return Response(DirectorGoldSerializer(director_gold_instance).data, status=status.HTTP_201_CREATED) + return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) +class ProficiencyDmUpdateView(APIView): + def post(self, request): + serializer = ProficiencyDmSerializer(data=request.data) + if serializer.is_valid(): + proficiency_dm_instance = serializer.save() + return Response(ProficiencyDmSerializer(proficiency_dm_instance).data, status=status.HTTP_201_CREATED) + return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) +class ProficiencyDmRetrieveView(APIView): + def post(self, request): + roll_number = request.data.get('roll_number') + + if not roll_number: + return Response({"detail": "Roll number is required."}, status=status.HTTP_400_BAD_REQUEST) + + proficiency_dm_data = Proficiency_dm.objects.filter(student=roll_number) + + if not proficiency_dm_data.exists(): + return Response({"detail": "No Proficiency DM data found for this roll number."}, status=status.HTTP_404_NOT_FOUND) + + serializer = ProficiencyDmSerializer(proficiency_dm_data, many=True) + + return Response(serializer.data, status=status.HTTP_200_OK) + diff --git a/FusionIIIT/applications/scholarships/urls.py b/FusionIIIT/applications/scholarships/urls.py index 1b6d10194..5864e6d17 100755 --- a/FusionIIIT/applications/scholarships/urls.py +++ b/FusionIIIT/applications/scholarships/urls.py @@ -4,8 +4,7 @@ from . import views from applications.scholarships.api.views import GetWinnersView -from applications.scholarships.api.views import create_award - +from applications.scholarships.api.views import create_award,McmUpdateView, McmRetrieveView, DirectorSilverRetrieveView,DirectorSilverUpdateView,DirectorGoldRetrieveView,DirectorGoldUpdateView,ProficiencyDmRetrieveView,ProficiencyDmUpdateView app_name = 'spacs' urlpatterns = [ @@ -24,6 +23,14 @@ #app url(r'get-winners/', GetWinnersView.as_view(), name='get-winners'), url(r'create-award/', create_award.as_view(), name='create-award'), + url(r'mcm_update/', McmUpdateView.as_view(), name='mcm-update'), + url(r'mcm_show/', McmRetrieveView.as_view(), name='mcm-show'), + url(r'directorsilver_show/', DirectorSilverRetrieveView.as_view(), name='director-silver--show'), + url(r'directorsilver_update/', DirectorSilverUpdateView.as_view(), name='director-silver-update'), + url(r'directorgold_show/', DirectorGoldRetrieveView.as_view(), name='director-gold-show'), + url(r'directorgold_update/', DirectorGoldUpdateView.as_view(), name='director-gold-update'), + url(r'proficiencydm_update/', ProficiencyDmUpdateView.as_view(), name='proficiency-dm-update'), + url(r'proficiencydm_show/', ProficiencyDmRetrieveView.as_view(), name='proficiency-dm-update'), From 2c80be2d43d05128464f4c999c56213409806044 Mon Sep 17 00:00:00 2001 From: Harsh Date: Sat, 16 Nov 2024 01:02:38 +0530 Subject: [PATCH 09/37] Your descriptive commit message --- .../migrations/0003_merge_20241023_1016.py | 15 +++++++++++++ .../migrations/0004_merge_20241115_1610.py | 14 +++++++++++++ .../migrations/0004_merge_20241115_1610.py | 15 +++++++++++++ .../migrations/0003_merge_20241023_1016.py | 15 +++++++++++++ .../migrations/0004_merge_20241115_1509.py | 14 +++++++++++++ .../migrations/0003_merge_20241115_1509.py | 16 ++++++++++++++ .../scholarships/api/serializers.py | 6 ++++++ .../applications/scholarships/api/views.py | 21 +++++++++++++++++++ FusionIIIT/applications/scholarships/urls.py | 4 ++-- 9 files changed, 118 insertions(+), 2 deletions(-) create mode 100644 FusionIIIT/applications/central_mess/migrations/0003_merge_20241023_1016.py create mode 100644 FusionIIIT/applications/central_mess/migrations/0004_merge_20241115_1610.py create mode 100644 FusionIIIT/applications/globals/migrations/0004_merge_20241115_1610.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0003_merge_20241023_1016.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0004_merge_20241115_1509.py create mode 100644 FusionIIIT/applications/research_procedures/migrations/0003_merge_20241115_1509.py diff --git a/FusionIIIT/applications/central_mess/migrations/0003_merge_20241023_1016.py b/FusionIIIT/applications/central_mess/migrations/0003_merge_20241023_1016.py new file mode 100644 index 000000000..ffe696451 --- /dev/null +++ b/FusionIIIT/applications/central_mess/migrations/0003_merge_20241023_1016.py @@ -0,0 +1,15 @@ +# Generated by Django 3.1.5 on 2024-10-23 10:16 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('central_mess', '0002_auto_20241017_0040'), + ('central_mess', '0002_auto_20241016_1905'), + ('central_mess', '0002_auto_20241012_1459'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/central_mess/migrations/0004_merge_20241115_1610.py b/FusionIIIT/applications/central_mess/migrations/0004_merge_20241115_1610.py new file mode 100644 index 000000000..b248cb47a --- /dev/null +++ b/FusionIIIT/applications/central_mess/migrations/0004_merge_20241115_1610.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-15 16:10 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('central_mess', '0003_merge_20241023_1016'), + ('central_mess', '0002_auto_20241018_0342'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/globals/migrations/0004_merge_20241115_1610.py b/FusionIIIT/applications/globals/migrations/0004_merge_20241115_1610.py new file mode 100644 index 000000000..8e1075cad --- /dev/null +++ b/FusionIIIT/applications/globals/migrations/0004_merge_20241115_1610.py @@ -0,0 +1,15 @@ +# Generated by Django 3.1.5 on 2024-11-15 16:10 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('globals', '0003_auto_20241018_0342'), + ('globals', '0003_auto_20241017_0040'), + ('globals', '0003_auto_20241016_1905'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0003_merge_20241023_1016.py b/FusionIIIT/applications/online_cms/migrations/0003_merge_20241023_1016.py new file mode 100644 index 000000000..6aa9527ed --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0003_merge_20241023_1016.py @@ -0,0 +1,15 @@ +# Generated by Django 3.1.5 on 2024-10-23 10:16 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0002_auto_20241017_0040'), + ('online_cms', '0002_auto_20241016_1905'), + ('online_cms', '0002_auto_20241012_1459'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0004_merge_20241115_1509.py b/FusionIIIT/applications/online_cms/migrations/0004_merge_20241115_1509.py new file mode 100644 index 000000000..faea15c67 --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0004_merge_20241115_1509.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-15 15:09 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0003_merge_20241023_1016'), + ('online_cms', '0002_auto_20241018_0342'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0003_merge_20241115_1509.py b/FusionIIIT/applications/research_procedures/migrations/0003_merge_20241115_1509.py new file mode 100644 index 000000000..8381a8a05 --- /dev/null +++ b/FusionIIIT/applications/research_procedures/migrations/0003_merge_20241115_1509.py @@ -0,0 +1,16 @@ +# Generated by Django 3.1.5 on 2024-11-15 15:09 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('research_procedures', '0002_auto_20241016_1905'), + ('research_procedures', '0002_auto_20241018_0342'), + ('research_procedures', '0002_auto_20241017_0040'), + ('research_procedures', '0002_auto_20241012_1459'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/scholarships/api/serializers.py b/FusionIIIT/applications/scholarships/api/serializers.py index cfcfa4295..12fbe71e4 100644 --- a/FusionIIIT/applications/scholarships/api/serializers.py +++ b/FusionIIIT/applications/scholarships/api/serializers.py @@ -4,6 +4,12 @@ from applications.scholarships.models import Award_and_scholarship,Previous_winner,Mcm,Director_silver,Director_gold,Notional_prize,Proficiency_dm +class AwardAndScholarshipSerializer(serializers.ModelSerializer): + class Meta: + model = Award_and_scholarship + fields = '_all_' + + class AwardAndScholarshipSerializer(serializers.ModelSerializer): class Meta: model = Award_and_scholarship diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index 6c1213898..67fa70b15 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -8,6 +8,26 @@ HoldsDesignation) from rest_framework import viewsets from applications.scholarships.api.serializers import PreviousWinnerSerializer,AwardAndScholarshipSerializer,McmSerializer,NotionalPrizeSerializer,DirectorGoldSerializer,DirectorSilverSerializer,ProficiencyDmSerializer + + + + +class AwardAndScholarshipCreateView(APIView): + def post(self, request): + + serializer = AwardAndScholarshipSerializer(data=request.data) + + if serializer.is_valid(): + # Save the new entry to the database + serializer.save() + return Response(serializer.data, status=status.HTTP_201_CREATED) # 201 Created response + return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) # 400 Bad Request if data is invalid + + + + + + class create_award(APIView): def get(self, request, *args, **kwargs): @@ -16,6 +36,7 @@ def get(self, request, *args, **kwargs): return Response(serializer.data, status=status.HTTP_200_OK) + class GetWinnersView(APIView): def post(self, request, *args, **kwargs): diff --git a/FusionIIIT/applications/scholarships/urls.py b/FusionIIIT/applications/scholarships/urls.py index 5864e6d17..00169e3c8 100755 --- a/FusionIIIT/applications/scholarships/urls.py +++ b/FusionIIIT/applications/scholarships/urls.py @@ -4,7 +4,7 @@ from . import views from applications.scholarships.api.views import GetWinnersView -from applications.scholarships.api.views import create_award,McmUpdateView, McmRetrieveView, DirectorSilverRetrieveView,DirectorSilverUpdateView,DirectorGoldRetrieveView,DirectorGoldUpdateView,ProficiencyDmRetrieveView,ProficiencyDmUpdateView +from applications.scholarships.api.views import create_award,McmUpdateView, McmRetrieveView, DirectorSilverRetrieveView,DirectorSilverUpdateView,DirectorGoldRetrieveView,DirectorGoldUpdateView,ProficiencyDmRetrieveView,ProficiencyDmUpdateView,AwardAndScholarshipCreateView app_name = 'spacs' urlpatterns = [ @@ -31,7 +31,7 @@ url(r'directorgold_update/', DirectorGoldUpdateView.as_view(), name='director-gold-update'), url(r'proficiencydm_update/', ProficiencyDmUpdateView.as_view(), name='proficiency-dm-update'), url(r'proficiencydm_show/', ProficiencyDmRetrieveView.as_view(), name='proficiency-dm-update'), - + path('award/', AwardAndScholarshipCreateView.as_view(), name='award-create'), # URL for creating a new award From 49ca36eb0a8709f8dc3f0561a2ddc88723fd42b0 Mon Sep 17 00:00:00 2001 From: Harsh Date: Sat, 16 Nov 2024 01:04:12 +0530 Subject: [PATCH 10/37] api for editing the catalog by convenor or assistant --- .../scholarships/api/serializers.py | 83 ------------------- 1 file changed, 83 deletions(-) diff --git a/FusionIIIT/applications/scholarships/api/serializers.py b/FusionIIIT/applications/scholarships/api/serializers.py index 12fbe71e4..9fd725167 100644 --- a/FusionIIIT/applications/scholarships/api/serializers.py +++ b/FusionIIIT/applications/scholarships/api/serializers.py @@ -45,86 +45,3 @@ class ProficiencyDmSerializer(serializers.ModelSerializer): class Meta: model = Proficiency_dm fields = '__all__' -# class McmSerializer(serializers.ModelSerializer): -# class Meta: -# model = Mcm -# fields = [ -# 'brother_name', 'brother_occupation', 'sister_name', 'sister_occupation', -# 'income_father', 'income_mother', 'income_other', 'father_occ', 'mother_occ', -# 'father_occ_desc', 'mother_occ_desc', 'four_wheeler', 'four_wheeler_desc', -# 'two_wheeler', 'two_wheeler_desc', 'house', 'plot_area', 'constructed_area', -# 'school_fee', 'school_name', 'bank_name', 'loan_amount', 'college_fee', -# 'college_name', 'income_certificate', 'forms', 'status', 'student', -# 'annual_income', 'date', 'award_id' -# ] - - -# class NotionalPrizeSerializer(serializers.ModelSerializer): -# class Meta: -# model = Notional_prize -# fields = ['spi', 'cpi', 'year', 'award_id'] - - -# class ReleaseSerializer(serializers.ModelSerializer): -# class Meta: -# model = Release -# fields = [ -# 'date_time', 'programme', 'startdate', 'enddate', 'award', -# 'remarks', 'batch', 'notif_visible' -# ] - -# class NotificationSerializer(serializers.ModelSerializer): -# class Meta: -# model = Notification -# fields = [ -# 'release_id', 'student_id', 'notification_mcm_flag', -# 'notification_convocation_flag', 'invite_mcm_accept_flag', -# 'invite_convocation_accept_flag' -# ] - -# class ApplicationSerializer(serializers.ModelSerializer): -# class Meta: -# model = Application -# fields = ['application_id', 'student_id', 'applied_flag', 'award'] - - -# class DirectorSilverSerializer(serializers.ModelSerializer): -# class Meta: -# model = Director_silver -# fields = [ -# 'nearest_policestation', 'nearest_railwaystation', 'correspondence_address', -# 'student', 'award_id', 'award_type', 'status', 'relevant_document', 'date', -# 'financial_assistance', 'grand_total', 'inside_achievements', 'justification', -# 'outside_achievements' -# ] - - - -# class ProficiencyDmSerializer(serializers.ModelSerializer): -# class Meta: -# model = Proficiency_dm -# fields = [ -# 'relevant_document', 'title_name', 'student', 'award_id', 'award_type', -# 'status', 'nearest_policestation', 'nearest_railwaystation', -# 'correspondence_address', 'no_of_students', 'date', 'roll_no1', 'roll_no2', -# 'roll_no3', 'roll_no4', 'roll_no5', 'financial_assistance', -# 'brief_description', 'justification', 'grand_total', 'ece_topic', 'cse_topic', -# 'mech_topic', 'design_topic', 'ece_percentage', 'cse_percentage', -# 'mech_percentage', 'design_percentage' -# ] - - -# class DirectorGoldSerializer(serializers.ModelSerializer): -# class Meta: -# model = Director_gold -# fields = [ -# 'student', 'status', 'correspondence_address', 'nearest_policestation', -# 'nearest_railwaystation', 'relevant_document', 'date', 'award_id', -# 'financial_assistance', 'academic_achievements', 'science_inside', -# 'science_outside', 'games_inside', 'games_outside', 'cultural_inside', -# 'cultural_outside', 'social', 'corporate', 'hall_activities', -# 'gymkhana_activities', 'institute_activities', 'counselling_activities', -# 'other_activities', 'justification', 'grand_total' -# ] - - From 419c3281f1ff2444c3a747ac15d3e960461e6135 Mon Sep 17 00:00:00 2001 From: Priyanshu <115771027+PriyanshuXcoder@users.noreply.github.com> Date: Sat, 16 Nov 2024 02:06:59 +0530 Subject: [PATCH 11/37] Made API for showing the mcm entries to spacs convenor and assistant --- .../migrations/0003_merge_20241110_1253.py | 16 ++++ .../migrations/0004_merge_20241110_1253.py | 15 +++ .../migrations/0005_auto_20241115_1710.py | 18 ++++ .../migrations/0003_merge_20241110_1253.py | 16 ++++ .../migrations/0003_merge_20241110_1253.py | 16 ++++ .../scholarships/api/serializers.py | 91 ++++++++++++++++++- .../applications/scholarships/api/views.py | 22 +++++ .../migrations/0002_auto_20241115_1710.py | 79 ++++++++++++++++ .../applications/scholarships/models.py | 14 ++- FusionIIIT/applications/scholarships/urls.py | 7 ++ 10 files changed, 288 insertions(+), 6 deletions(-) create mode 100644 FusionIIIT/applications/central_mess/migrations/0003_merge_20241110_1253.py create mode 100644 FusionIIIT/applications/globals/migrations/0004_merge_20241110_1253.py create mode 100644 FusionIIIT/applications/globals/migrations/0005_auto_20241115_1710.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0003_merge_20241110_1253.py create mode 100644 FusionIIIT/applications/research_procedures/migrations/0003_merge_20241110_1253.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0002_auto_20241115_1710.py diff --git a/FusionIIIT/applications/central_mess/migrations/0003_merge_20241110_1253.py b/FusionIIIT/applications/central_mess/migrations/0003_merge_20241110_1253.py new file mode 100644 index 000000000..9cc06b37b --- /dev/null +++ b/FusionIIIT/applications/central_mess/migrations/0003_merge_20241110_1253.py @@ -0,0 +1,16 @@ +# Generated by Django 3.1.5 on 2024-11-10 12:53 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('central_mess', '0002_auto_20241016_1905'), + ('central_mess', '0002_auto_20241012_1459'), + ('central_mess', '0002_auto_20241017_0040'), + ('central_mess', '0002_auto_20241018_0342'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/globals/migrations/0004_merge_20241110_1253.py b/FusionIIIT/applications/globals/migrations/0004_merge_20241110_1253.py new file mode 100644 index 000000000..5b53d6ed2 --- /dev/null +++ b/FusionIIIT/applications/globals/migrations/0004_merge_20241110_1253.py @@ -0,0 +1,15 @@ +# Generated by Django 3.1.5 on 2024-11-10 12:53 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('globals', '0003_auto_20241016_1905'), + ('globals', '0003_auto_20241017_0040'), + ('globals', '0003_auto_20241018_0342'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/globals/migrations/0005_auto_20241115_1710.py b/FusionIIIT/applications/globals/migrations/0005_auto_20241115_1710.py new file mode 100644 index 000000000..2ca02c1ba --- /dev/null +++ b/FusionIIIT/applications/globals/migrations/0005_auto_20241115_1710.py @@ -0,0 +1,18 @@ +# Generated by Django 3.1.5 on 2024-11-15 17:10 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('globals', '0004_merge_20241110_1253'), + ] + + operations = [ + migrations.AlterField( + model_name='extrainfo', + name='user_status', + field=models.CharField(choices=[('NEW', 'NEW'), ('PRESENT', 'PRESENT')], default='PRESENT', max_length=50), + ), + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0003_merge_20241110_1253.py b/FusionIIIT/applications/online_cms/migrations/0003_merge_20241110_1253.py new file mode 100644 index 000000000..71e66ebb8 --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0003_merge_20241110_1253.py @@ -0,0 +1,16 @@ +# Generated by Django 3.1.5 on 2024-11-10 12:53 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0002_auto_20241016_1905'), + ('online_cms', '0002_auto_20241012_1459'), + ('online_cms', '0002_auto_20241017_0040'), + ('online_cms', '0002_auto_20241018_0342'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0003_merge_20241110_1253.py b/FusionIIIT/applications/research_procedures/migrations/0003_merge_20241110_1253.py new file mode 100644 index 000000000..a3e51d9b8 --- /dev/null +++ b/FusionIIIT/applications/research_procedures/migrations/0003_merge_20241110_1253.py @@ -0,0 +1,16 @@ +# Generated by Django 3.1.5 on 2024-11-10 12:53 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('research_procedures', '0002_auto_20241016_1905'), + ('research_procedures', '0002_auto_20241012_1459'), + ('research_procedures', '0002_auto_20241017_0040'), + ('research_procedures', '0002_auto_20241018_0342'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/scholarships/api/serializers.py b/FusionIIIT/applications/scholarships/api/serializers.py index 9fd725167..848485253 100644 --- a/FusionIIIT/applications/scholarships/api/serializers.py +++ b/FusionIIIT/applications/scholarships/api/serializers.py @@ -3,7 +3,7 @@ from applications.globals.models import ExtraInfo from applications.scholarships.models import Award_and_scholarship,Previous_winner,Mcm,Director_silver,Director_gold,Notional_prize,Proficiency_dm - +# This serializer is used for editing the catalog by convenor and assistant class AwardAndScholarshipSerializer(serializers.ModelSerializer): class Meta: model = Award_and_scholarship @@ -45,3 +45,92 @@ class ProficiencyDmSerializer(serializers.ModelSerializer): class Meta: model = Proficiency_dm fields = '__all__' + + + + + + + +# class McmSerializer(serializers.ModelSerializer): +# class Meta: +# model = Mcm +# fields = [ +# 'brother_name', 'brother_occupation', 'sister_name', 'sister_occupation', +# 'income_father', 'income_mother', 'income_other', 'father_occ', 'mother_occ', +# 'father_occ_desc', 'mother_occ_desc', 'four_wheeler', 'four_wheeler_desc', +# 'two_wheeler', 'two_wheeler_desc', 'house', 'plot_area', 'constructed_area', +# 'school_fee', 'school_name', 'bank_name', 'loan_amount', 'college_fee', +# 'college_name', 'income_certificate', 'forms', 'status', 'student', +# 'annual_income', 'date', 'award_id' +# ] + + +# class NotionalPrizeSerializer(serializers.ModelSerializer): +# class Meta: +# model = Notional_prize +# fields = ['spi', 'cpi', 'year', 'award_id'] + + +# class ReleaseSerializer(serializers.ModelSerializer): +# class Meta: +# model = Release +# fields = [ +# 'date_time', 'programme', 'startdate', 'enddate', 'award', +# 'remarks', 'batch', 'notif_visible' +# ] + +# class NotificationSerializer(serializers.ModelSerializer): +# class Meta: +# model = Notification +# fields = [ +# 'release_id', 'student_id', 'notification_mcm_flag', +# 'notification_convocation_flag', 'invite_mcm_accept_flag', +# 'invite_convocation_accept_flag' +# ] + +# class ApplicationSerializer(serializers.ModelSerializer): +# class Meta: +# model = Application +# fields = ['application_id', 'student_id', 'applied_flag', 'award'] + + +# class DirectorSilverSerializer(serializers.ModelSerializer): +# class Meta: +# model = Director_silver +# fields = [ +# 'nearest_policestation', 'nearest_railwaystation', 'correspondence_address', +# 'student', 'award_id', 'award_type', 'status', 'relevant_document', 'date', +# 'financial_assistance', 'grand_total', 'inside_achievements', 'justification', +# 'outside_achievements' +# ] + + + +# class ProficiencyDmSerializer(serializers.ModelSerializer): +# class Meta: +# model = Proficiency_dm +# fields = [ +# 'relevant_document', 'title_name', 'student', 'award_id', 'award_type', +# 'status', 'nearest_policestation', 'nearest_railwaystation', +# 'correspondence_address', 'no_of_students', 'date', 'roll_no1', 'roll_no2', +# 'roll_no3', 'roll_no4', 'roll_no5', 'financial_assistance', +# 'brief_description', 'justification', 'grand_total', 'ece_topic', 'cse_topic', +# 'mech_topic', 'design_topic', 'ece_percentage', 'cse_percentage', +# 'mech_percentage', 'design_percentage' +# ] + + +# class DirectorGoldSerializer(serializers.ModelSerializer): +# class Meta: +# model = Director_gold +# fields = [ +# 'student', 'status', 'correspondence_address', 'nearest_policestation', +# 'nearest_railwaystation', 'relevant_document', 'date', 'award_id', +# 'financial_assistance', 'academic_achievements', 'science_inside', +# 'science_outside', 'games_inside', 'games_outside', 'cultural_inside', +# 'cultural_outside', 'social', 'corporate', 'hall_activities', +# 'gymkhana_activities', 'institute_activities', 'counselling_activities', +# 'other_activities', 'justification', 'grand_total' +# ] + diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index 67fa70b15..ae9fc5058 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -167,3 +167,25 @@ def post(self, request): return Response(serializer.data, status=status.HTTP_200_OK) +class ScholarshipDetailView(APIView): + def get(self, request): + # Fetch all records from the Mcm table + mcm_data = Mcm.objects.all() + # Serialize the data + serializer = McmSerializer(mcm_data, many=True) + # Return the serialized data as a response + return Response(serializer.data, status=status.HTTP_200_OK) + +class StudentDetailView(APIView): + def post(self, request): + student_id = request.data.get('student') + if not student_id: + return Response({"error": "Student ID is required."}, status=status.HTTP_400_BAD_REQUEST) + + try: + mcm_entry = Mcm.objects.get(student__id=student_id) + except Mcm.DoesNotExist: + return Response({"error": "No record found for the given student ID."}, status=status.HTTP_404_NOT_FOUND) + + serializer = McmSerializer(mcm_entry) + return Response(serializer.data, status=status.HTTP_200_OK) diff --git a/FusionIIIT/applications/scholarships/migrations/0002_auto_20241115_1710.py b/FusionIIIT/applications/scholarships/migrations/0002_auto_20241115_1710.py new file mode 100644 index 000000000..dc0bf8bb3 --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0002_auto_20241115_1710.py @@ -0,0 +1,79 @@ +# Generated by Django 3.1.5 on 2024-11-15 17:10 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('scholarships', '0001_initial'), + ] + + operations = [ + migrations.RemoveField( + model_name='director_gold', + name='relevant_document', + ), + migrations.RemoveField( + model_name='director_silver', + name='relevant_document', + ), + migrations.RemoveField( + model_name='proficiency_dm', + name='relevant_document', + ), + migrations.AddField( + model_name='director_gold', + name='Marksheet', + field=models.FileField(default='NA', upload_to=''), + preserve_default=False, + ), + migrations.AddField( + model_name='director_silver', + name='Marksheet', + field=models.FileField(default='NA', upload_to=''), + preserve_default=False, + ), + migrations.AddField( + model_name='mcm', + name='Aadhar_card', + field=models.FileField(default='NA', upload_to=''), + preserve_default=False, + ), + migrations.AddField( + model_name='mcm', + name='Affidavit', + field=models.FileField(default='NA', upload_to=''), + preserve_default=False, + ), + migrations.AddField( + model_name='mcm', + name='Bank_details', + field=models.FileField(default='NA', upload_to=''), + preserve_default=False, + ), + migrations.AddField( + model_name='mcm', + name='Fee_Receipt', + field=models.FileField(default='NA', upload_to=''), + preserve_default=False, + ), + migrations.AddField( + model_name='mcm', + name='marksheet', + field=models.FileField(default='NA', upload_to=''), + preserve_default=False, + ), + migrations.AddField( + model_name='proficiency_dm', + name='Marksheet', + field=models.FileField(default='NA', upload_to=''), + preserve_default=False, + ), + migrations.AlterField( + model_name='mcm', + name='income_certificate', + field=models.FileField(default='NA', upload_to=''), + preserve_default=False, + ), + ] diff --git a/FusionIIIT/applications/scholarships/models.py b/FusionIIIT/applications/scholarships/models.py index f9a52d40e..d7ceee0e2 100755 --- a/FusionIIIT/applications/scholarships/models.py +++ b/FusionIIIT/applications/scholarships/models.py @@ -116,8 +116,12 @@ class Mcm(models.Model): loan_amount = models.IntegerField(blank=True, null=True) college_fee = models.IntegerField(blank=True, null=True) college_name = models.CharField(max_length=30, null=True) - income_certificate = models.FileField(null=True, blank=True) - # marksheet = models.FileField(upload_to='marksheets/', null=False, blank=False) + income_certificate = models.FileField(null=False, blank=False) + Marksheet = models.FileField(null=False, blank=False) + Bank_details = models.FileField(null=False, blank=False) + Affidavit = models.FileField(null=False, blank=False) + Aadhar_card = models.FileField(null=False, blank=False) + Fee_Receipt = models.FileField(null=False, blank=False) forms = models.FileField(null=True, blank=True) status = models.CharField(max_length=10, choices=Constants.STATUS_CHOICES, default='INCOMPLETE') student = models.ForeignKey(Student, @@ -202,7 +206,7 @@ class Director_silver(models.Model): award_id = models.ForeignKey(Award_and_scholarship, on_delete=models.CASCADE) award_type = models.CharField(max_length=50, null=True) status = models.CharField(max_length=10, choices=Constants.STATUS_CHOICES,default='INCOMPLETE') - relevant_document = models.FileField(null=True, blank=True) + Marksheet = models.FileField(null=False, blank=False) date = models.DateField(default=datetime.date.today) financial_assistance = models.TextField(max_length=1000 ,null=True) grand_total = models.IntegerField(null=True) @@ -216,7 +220,7 @@ class Meta: class Proficiency_dm(models.Model): - relevant_document = models.FileField(null=True, blank=True) + Marksheet = models.FileField(null=False, blank=False) title_name = models.CharField(max_length=30, null=True) student = models.ForeignKey(Student, on_delete=models.CASCADE) award_id = models.ForeignKey(Award_and_scholarship, on_delete=models.CASCADE) @@ -261,7 +265,7 @@ class Director_gold(models.Model): correspondence_address = models.TextField(max_length=40, default='address') nearest_policestation = models.TextField(max_length=30, default='station') nearest_railwaystation = models.TextField(max_length=30, default='station') - relevant_document = models.FileField(null=True, blank=True) + Marksheet = models.FileField(null=False, blank=False) date = models.DateField(default=datetime.date.today) award_id = models.ForeignKey(Award_and_scholarship, default=4, on_delete=models.CASCADE) financial_assistance = models.TextField(max_length=1000 ,null=True) diff --git a/FusionIIIT/applications/scholarships/urls.py b/FusionIIIT/applications/scholarships/urls.py index 00169e3c8..5708a3697 100755 --- a/FusionIIIT/applications/scholarships/urls.py +++ b/FusionIIIT/applications/scholarships/urls.py @@ -5,6 +5,9 @@ from . import views from applications.scholarships.api.views import GetWinnersView from applications.scholarships.api.views import create_award,McmUpdateView, McmRetrieveView, DirectorSilverRetrieveView,DirectorSilverUpdateView,DirectorGoldRetrieveView,DirectorGoldUpdateView,ProficiencyDmRetrieveView,ProficiencyDmUpdateView,AwardAndScholarshipCreateView +from applications.scholarships.api.views import ScholarshipDetailView,StudentDetailView + + app_name = 'spacs' urlpatterns = [ @@ -32,6 +35,10 @@ url(r'proficiencydm_update/', ProficiencyDmUpdateView.as_view(), name='proficiency-dm-update'), url(r'proficiencydm_show/', ProficiencyDmRetrieveView.as_view(), name='proficiency-dm-update'), path('award/', AwardAndScholarshipCreateView.as_view(), name='award-create'), # URL for creating a new award + + path('scholarship-details/', ScholarshipDetailView.as_view(), name='scholarship-list'), + #path('scholarship-details//', ScholarshipDetailView.as_view(), name='scholarship-detail'), + url(r'student_file_show/', StudentDetailView.as_view(), name='student-file-show') From e412b1f8dc4b3c7b39838370c4876dac1b3d365c Mon Sep 17 00:00:00 2001 From: Harsh Date: Sat, 16 Nov 2024 03:31:28 +0530 Subject: [PATCH 12/37] created apis for showing data of director silver and gold on clicking file button by convenor or assistant --- .../migrations/0005_merge_20241116_0303.py | 14 +++ .../migrations/0006_auto_20241116_0306.py | 19 +++++ .../migrations/0006_merge_20241116_0303.py | 14 +++ .../migrations/0005_merge_20241116_0303.py | 14 +++ .../migrations/0004_merge_20241116_0303.py | 14 +++ .../scholarships/api/serializers.py | 85 +------------------ .../applications/scholarships/api/views.py | 33 +++++++ .../migrations/0003_auto_20241116_0306.py | 18 ++++ FusionIIIT/applications/scholarships/urls.py | 10 +-- 9 files changed, 132 insertions(+), 89 deletions(-) create mode 100644 FusionIIIT/applications/central_mess/migrations/0005_merge_20241116_0303.py create mode 100644 FusionIIIT/applications/central_mess/migrations/0006_auto_20241116_0306.py create mode 100644 FusionIIIT/applications/globals/migrations/0006_merge_20241116_0303.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0303.py create mode 100644 FusionIIIT/applications/research_procedures/migrations/0004_merge_20241116_0303.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0003_auto_20241116_0306.py diff --git a/FusionIIIT/applications/central_mess/migrations/0005_merge_20241116_0303.py b/FusionIIIT/applications/central_mess/migrations/0005_merge_20241116_0303.py new file mode 100644 index 000000000..50651e05b --- /dev/null +++ b/FusionIIIT/applications/central_mess/migrations/0005_merge_20241116_0303.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-16 03:03 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('central_mess', '0003_merge_20241110_1253'), + ('central_mess', '0004_merge_20241115_1610'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/central_mess/migrations/0006_auto_20241116_0306.py b/FusionIIIT/applications/central_mess/migrations/0006_auto_20241116_0306.py new file mode 100644 index 000000000..071692b6a --- /dev/null +++ b/FusionIIIT/applications/central_mess/migrations/0006_auto_20241116_0306.py @@ -0,0 +1,19 @@ +# Generated by Django 3.1.5 on 2024-11-16 03:06 + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('central_mess', '0005_merge_20241116_0303'), + ] + + operations = [ + migrations.AlterField( + model_name='payments', + name='payment_date', + field=models.DateField(default=datetime.date.today), + ), + ] diff --git a/FusionIIIT/applications/globals/migrations/0006_merge_20241116_0303.py b/FusionIIIT/applications/globals/migrations/0006_merge_20241116_0303.py new file mode 100644 index 000000000..a9fe8bc37 --- /dev/null +++ b/FusionIIIT/applications/globals/migrations/0006_merge_20241116_0303.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-16 03:03 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('globals', '0005_auto_20241115_1710'), + ('globals', '0004_merge_20241115_1610'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0303.py b/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0303.py new file mode 100644 index 000000000..81b842c6f --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0303.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-16 03:03 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0003_merge_20241110_1253'), + ('online_cms', '0004_merge_20241115_1509'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0004_merge_20241116_0303.py b/FusionIIIT/applications/research_procedures/migrations/0004_merge_20241116_0303.py new file mode 100644 index 000000000..28e05c2c1 --- /dev/null +++ b/FusionIIIT/applications/research_procedures/migrations/0004_merge_20241116_0303.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-16 03:03 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('research_procedures', '0003_merge_20241110_1253'), + ('research_procedures', '0003_merge_20241115_1509'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/scholarships/api/serializers.py b/FusionIIIT/applications/scholarships/api/serializers.py index 848485253..5b6fd1b65 100644 --- a/FusionIIIT/applications/scholarships/api/serializers.py +++ b/FusionIIIT/applications/scholarships/api/serializers.py @@ -10,6 +10,7 @@ class Meta: fields = '_all_' +# this serializer is used for showing data on catalog form class AwardAndScholarshipSerializer(serializers.ModelSerializer): class Meta: model = Award_and_scholarship @@ -50,87 +51,3 @@ class Meta: - - -# class McmSerializer(serializers.ModelSerializer): -# class Meta: -# model = Mcm -# fields = [ -# 'brother_name', 'brother_occupation', 'sister_name', 'sister_occupation', -# 'income_father', 'income_mother', 'income_other', 'father_occ', 'mother_occ', -# 'father_occ_desc', 'mother_occ_desc', 'four_wheeler', 'four_wheeler_desc', -# 'two_wheeler', 'two_wheeler_desc', 'house', 'plot_area', 'constructed_area', -# 'school_fee', 'school_name', 'bank_name', 'loan_amount', 'college_fee', -# 'college_name', 'income_certificate', 'forms', 'status', 'student', -# 'annual_income', 'date', 'award_id' -# ] - - -# class NotionalPrizeSerializer(serializers.ModelSerializer): -# class Meta: -# model = Notional_prize -# fields = ['spi', 'cpi', 'year', 'award_id'] - - -# class ReleaseSerializer(serializers.ModelSerializer): -# class Meta: -# model = Release -# fields = [ -# 'date_time', 'programme', 'startdate', 'enddate', 'award', -# 'remarks', 'batch', 'notif_visible' -# ] - -# class NotificationSerializer(serializers.ModelSerializer): -# class Meta: -# model = Notification -# fields = [ -# 'release_id', 'student_id', 'notification_mcm_flag', -# 'notification_convocation_flag', 'invite_mcm_accept_flag', -# 'invite_convocation_accept_flag' -# ] - -# class ApplicationSerializer(serializers.ModelSerializer): -# class Meta: -# model = Application -# fields = ['application_id', 'student_id', 'applied_flag', 'award'] - - -# class DirectorSilverSerializer(serializers.ModelSerializer): -# class Meta: -# model = Director_silver -# fields = [ -# 'nearest_policestation', 'nearest_railwaystation', 'correspondence_address', -# 'student', 'award_id', 'award_type', 'status', 'relevant_document', 'date', -# 'financial_assistance', 'grand_total', 'inside_achievements', 'justification', -# 'outside_achievements' -# ] - - - -# class ProficiencyDmSerializer(serializers.ModelSerializer): -# class Meta: -# model = Proficiency_dm -# fields = [ -# 'relevant_document', 'title_name', 'student', 'award_id', 'award_type', -# 'status', 'nearest_policestation', 'nearest_railwaystation', -# 'correspondence_address', 'no_of_students', 'date', 'roll_no1', 'roll_no2', -# 'roll_no3', 'roll_no4', 'roll_no5', 'financial_assistance', -# 'brief_description', 'justification', 'grand_total', 'ece_topic', 'cse_topic', -# 'mech_topic', 'design_topic', 'ece_percentage', 'cse_percentage', -# 'mech_percentage', 'design_percentage' -# ] - - -# class DirectorGoldSerializer(serializers.ModelSerializer): -# class Meta: -# model = Director_gold -# fields = [ -# 'student', 'status', 'correspondence_address', 'nearest_policestation', -# 'nearest_railwaystation', 'relevant_document', 'date', 'award_id', -# 'financial_assistance', 'academic_achievements', 'science_inside', -# 'science_outside', 'games_inside', 'games_outside', 'cultural_inside', -# 'cultural_outside', 'social', 'corporate', 'hall_activities', -# 'gymkhana_activities', 'institute_activities', 'counselling_activities', -# 'other_activities', 'justification', 'grand_total' -# ] - diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index ae9fc5058..521252ccd 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -189,3 +189,36 @@ def post(self, request): serializer = McmSerializer(mcm_entry) return Response(serializer.data, status=status.HTTP_200_OK) + + +class DirectorSilverDetailView(APIView): + def post(self, request): + student_id = request.data.get('student') + + if not student_id: + return Response({"error": "Student ID is required."}, status=status.HTTP_400_BAD_REQUEST) + + try: + director_silver_entry = Director_silver.objects.get(student__id=student_id) + except Director_silver.DoesNotExist: + return Response({"error": "No record found for the given student ID."}, status=status.HTTP_404_NOT_FOUND) + + serializer = DirectorSilverSerializer(director_silver_entry) + return Response(serializer.data, status=status.HTTP_200_OK) + + + +class DirectorGoldDetailView(APIView): + def post(self, request): + student_id = request.data.get('student') + + if not student_id: + return Response({"error": "Student ID is required."}, status=status.HTTP_400_BAD_REQUEST) + + try: + director_gold_entry = Director_gold.objects.get(student__id=student_id) + except Director_gold.DoesNotExist: + return Response({"error": "No record found for the given student ID."}, status=status.HTTP_404_NOT_FOUND) + + serializer = DirectorGoldSerializer(director_gold_entry) + return Response(serializer.data, status=status.HTTP_200_OK) diff --git a/FusionIIIT/applications/scholarships/migrations/0003_auto_20241116_0306.py b/FusionIIIT/applications/scholarships/migrations/0003_auto_20241116_0306.py new file mode 100644 index 000000000..e4784dd40 --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0003_auto_20241116_0306.py @@ -0,0 +1,18 @@ +# Generated by Django 3.1.5 on 2024-11-16 03:06 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('scholarships', '0002_auto_20241115_1710'), + ] + + operations = [ + migrations.RenameField( + model_name='mcm', + old_name='marksheet', + new_name='Marksheet', + ), + ] diff --git a/FusionIIIT/applications/scholarships/urls.py b/FusionIIIT/applications/scholarships/urls.py index 5708a3697..0c969ac1e 100755 --- a/FusionIIIT/applications/scholarships/urls.py +++ b/FusionIIIT/applications/scholarships/urls.py @@ -5,7 +5,7 @@ from . import views from applications.scholarships.api.views import GetWinnersView from applications.scholarships.api.views import create_award,McmUpdateView, McmRetrieveView, DirectorSilverRetrieveView,DirectorSilverUpdateView,DirectorGoldRetrieveView,DirectorGoldUpdateView,ProficiencyDmRetrieveView,ProficiencyDmUpdateView,AwardAndScholarshipCreateView -from applications.scholarships.api.views import ScholarshipDetailView,StudentDetailView +from applications.scholarships.api.views import ScholarshipDetailView,StudentDetailView,DirectorSilverDetailView,DirectorGoldDetailView app_name = 'spacs' @@ -23,7 +23,7 @@ url(r'^getConvocationFlag/$', views.getConvocationFlag, name='getConvocationFlag'), url(r'^getContent/$', views.getContent, name='getContent'), url(r'^updateEndDate/$', views.updateEndDate, name='updateEndDate'), - #app + #app --> url(r'get-winners/', GetWinnersView.as_view(), name='get-winners'), url(r'create-award/', create_award.as_view(), name='create-award'), url(r'mcm_update/', McmUpdateView.as_view(), name='mcm-update'), @@ -38,8 +38,8 @@ path('scholarship-details/', ScholarshipDetailView.as_view(), name='scholarship-list'), #path('scholarship-details//', ScholarshipDetailView.as_view(), name='scholarship-detail'), - url(r'student_file_show/', StudentDetailView.as_view(), name='student-file-show') - - + url(r'student_file_show/', StudentDetailView.as_view(), name='student-file-show'), + path('director_silver_show/', DirectorSilverDetailView.as_view(), name='director_silver_detail'), + path('director_gold_view/', DirectorGoldDetailView.as_view(), name='director_gold_detail'), ] \ No newline at end of file From 56303ff6052ab0b5248562d2e8e4b081c35f25a1 Mon Sep 17 00:00:00 2001 From: Harsh Date: Sat, 16 Nov 2024 04:38:52 +0530 Subject: [PATCH 13/37] api to view all applied application for director's gold to spacs convenor or assistant is implimented --- .../applications/scholarships/api/views.py | 24 +++++ .../applications/scholarships/models.py | 96 +++++++++++++++++-- FusionIIIT/applications/scholarships/urls.py | 3 +- 3 files changed, 113 insertions(+), 10 deletions(-) diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index 521252ccd..00073a0a5 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -77,6 +77,7 @@ def post(self, request, *args, **kwargs): else: return Response({'result': 'Failure', 'error': 'No winners found'}, status=status.HTTP_404_NOT_FOUND) + class McmUpdateView(APIView): def post(self, request): serializer = McmSerializer(data=request.data) @@ -85,6 +86,7 @@ def post(self, request): return Response(McmSerializer(mcm_instance).data, status=status.HTTP_201_CREATED) return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) + class McmRetrieveView(APIView): def post(self, request): roll_number = request.data.get('roll_number') @@ -100,6 +102,8 @@ def post(self, request): serializer = McmSerializer(mcm_data, many=True) return Response(serializer.data, status=status.HTTP_200_OK) + + class DirectorSilverRetrieveView(APIView): def post(self, request): roll_number = request.data.get('roll_number') @@ -115,6 +119,8 @@ def post(self, request): serializer = DirectorSilverSerializer(director_silver_data, many=True) return Response(serializer.data, status=status.HTTP_200_OK) + + class DirectorSilverUpdateView(APIView): def post(self, request): serializer = DirectorSilverSerializer(data=request.data) @@ -137,6 +143,8 @@ def post(self, request): serializer = DirectorGoldSerializer(director_gold_data, many=True) return Response(serializer.data, status=status.HTTP_200_OK) + + class DirectorGoldUpdateView(APIView): def post(self, request): serializer = DirectorGoldSerializer(data=request.data) @@ -144,6 +152,8 @@ def post(self, request): director_gold_instance = serializer.save() return Response(DirectorGoldSerializer(director_gold_instance).data, status=status.HTTP_201_CREATED) return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) + + class ProficiencyDmUpdateView(APIView): def post(self, request): serializer = ProficiencyDmSerializer(data=request.data) @@ -151,6 +161,8 @@ def post(self, request): proficiency_dm_instance = serializer.save() return Response(ProficiencyDmSerializer(proficiency_dm_instance).data, status=status.HTTP_201_CREATED) return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) + + class ProficiencyDmRetrieveView(APIView): def post(self, request): roll_number = request.data.get('roll_number') @@ -166,6 +178,7 @@ def post(self, request): serializer = ProficiencyDmSerializer(proficiency_dm_data, many=True) return Response(serializer.data, status=status.HTTP_200_OK) + class ScholarshipDetailView(APIView): def get(self, request): @@ -175,6 +188,17 @@ def get(self, request): serializer = McmSerializer(mcm_data, many=True) # Return the serialized data as a response return Response(serializer.data, status=status.HTTP_200_OK) + + +class DirectorGoldListView(APIView): + def get(self, request): + # Fetch all entries + director_gold_entries = Director_gold.objects.all() + # Serialize all entries + serializer = DirectorGoldSerializer(director_gold_entries, many=True) + # Return the serialized data as a response + return Response(serializer.data, status=status.HTTP_200_OK) + class StudentDetailView(APIView): def post(self, request): diff --git a/FusionIIIT/applications/scholarships/models.py b/FusionIIIT/applications/scholarships/models.py index d7ceee0e2..2fce5beff 100755 --- a/FusionIIIT/applications/scholarships/models.py +++ b/FusionIIIT/applications/scholarships/models.py @@ -76,15 +76,6 @@ class Meta: def __str__(self): return self.award_name -# class Award_and_scholarship(models.Model): -# award_name = models.CharField(max_length=100, default='') -# catalog = models.TextField(max_length=5000, blank=True, null=False) # blank=True for forms, null=True for database - -# class Meta: -# db_table = 'Award_and_scholarship' - -# def __str__(self): -# return self.award_name class Mcm(models.Model): @@ -293,3 +284,90 @@ class Director_gold(models.Model): class Meta: db_table = 'Director_gold' + + + + + +# class McmSerializer(serializers.ModelSerializer): +# class Meta: +# model = Mcm +# fields = [ +# 'brother_name', 'brother_occupation', 'sister_name', 'sister_occupation', +# 'income_father', 'income_mother', 'income_other', 'father_occ', 'mother_occ', +# 'father_occ_desc', 'mother_occ_desc', 'four_wheeler', 'four_wheeler_desc', +# 'two_wheeler', 'two_wheeler_desc', 'house', 'plot_area', 'constructed_area', +# 'school_fee', 'school_name', 'bank_name', 'loan_amount', 'college_fee', +# 'college_name', 'income_certificate', 'forms', 'status', 'student', +# 'annual_income', 'date', 'award_id' +# ] + + +# class NotionalPrizeSerializer(serializers.ModelSerializer): +# class Meta: +# model = Notional_prize +# fields = ['spi', 'cpi', 'year', 'award_id'] + + +# class ReleaseSerializer(serializers.ModelSerializer): +# class Meta: +# model = Release +# fields = [ +# 'date_time', 'programme', 'startdate', 'enddate', 'award', +# 'remarks', 'batch', 'notif_visible' +# ] + +# class NotificationSerializer(serializers.ModelSerializer): +# class Meta: +# model = Notification +# fields = [ +# 'release_id', 'student_id', 'notification_mcm_flag', +# 'notification_convocation_flag', 'invite_mcm_accept_flag', +# 'invite_convocation_accept_flag' +# ] + +# class ApplicationSerializer(serializers.ModelSerializer): +# class Meta: +# model = Application +# fields = ['application_id', 'student_id', 'applied_flag', 'award'] + + +# class DirectorSilverSerializer(serializers.ModelSerializer): +# class Meta: +# model = Director_silver +# fields = [ +# 'nearest_policestation', 'nearest_railwaystation', 'correspondence_address', +# 'student', 'award_id', 'award_type', 'status', 'relevant_document', 'date', +# 'financial_assistance', 'grand_total', 'inside_achievements', 'justification', +# 'outside_achievements' +# ] + + + +# class ProficiencyDmSerializer(serializers.ModelSerializer): +# class Meta: +# model = Proficiency_dm +# fields = [ +# 'relevant_document', 'title_name', 'student', 'award_id', 'award_type', +# 'status', 'nearest_policestation', 'nearest_railwaystation', +# 'correspondence_address', 'no_of_students', 'date', 'roll_no1', 'roll_no2', +# 'roll_no3', 'roll_no4', 'roll_no5', 'financial_assistance', +# 'brief_description', 'justification', 'grand_total', 'ece_topic', 'cse_topic', +# 'mech_topic', 'design_topic', 'ece_percentage', 'cse_percentage', +# 'mech_percentage', 'design_percentage' +# ] + + +# class DirectorGoldSerializer(serializers.ModelSerializer): +# class Meta: +# model = Director_gold +# fields = [ +# 'student', 'status', 'correspondence_address', 'nearest_policestation', +# 'nearest_railwaystation', 'relevant_document', 'date', 'award_id', +# 'financial_assistance', 'academic_achievements', 'science_inside', +# 'science_outside', 'games_inside', 'games_outside', 'cultural_inside', +# 'cultural_outside', 'social', 'corporate', 'hall_activities', +# 'gymkhana_activities', 'institute_activities', 'counselling_activities', +# 'other_activities', 'justification', 'grand_total' +# ] + diff --git a/FusionIIIT/applications/scholarships/urls.py b/FusionIIIT/applications/scholarships/urls.py index 0c969ac1e..4fb602259 100755 --- a/FusionIIIT/applications/scholarships/urls.py +++ b/FusionIIIT/applications/scholarships/urls.py @@ -5,7 +5,7 @@ from . import views from applications.scholarships.api.views import GetWinnersView from applications.scholarships.api.views import create_award,McmUpdateView, McmRetrieveView, DirectorSilverRetrieveView,DirectorSilverUpdateView,DirectorGoldRetrieveView,DirectorGoldUpdateView,ProficiencyDmRetrieveView,ProficiencyDmUpdateView,AwardAndScholarshipCreateView -from applications.scholarships.api.views import ScholarshipDetailView,StudentDetailView,DirectorSilverDetailView,DirectorGoldDetailView +from applications.scholarships.api.views import ScholarshipDetailView,StudentDetailView,DirectorSilverDetailView,DirectorGoldDetailView,DirectorGoldListView app_name = 'spacs' @@ -37,6 +37,7 @@ path('award/', AwardAndScholarshipCreateView.as_view(), name='award-create'), # URL for creating a new award path('scholarship-details/', ScholarshipDetailView.as_view(), name='scholarship-list'), + path('director_gold_list/', DirectorGoldListView.as_view(), name='director_gold_list'), #path('scholarship-details//', ScholarshipDetailView.as_view(), name='scholarship-detail'), url(r'student_file_show/', StudentDetailView.as_view(), name='student-file-show'), path('director_silver_show/', DirectorSilverDetailView.as_view(), name='director_silver_detail'), From 11e66118aa2443b696442eb2558a68558f872f1c Mon Sep 17 00:00:00 2001 From: Harsh Date: Sat, 16 Nov 2024 04:57:00 +0530 Subject: [PATCH 14/37] api created for invite application --- .../scholarships/api/serializers.py | 11 ++- .../applications/scholarships/api/views.py | 15 +++- .../applications/scholarships/models.py | 82 ------------------- FusionIIIT/applications/scholarships/urls.py | 4 +- 4 files changed, 24 insertions(+), 88 deletions(-) diff --git a/FusionIIIT/applications/scholarships/api/serializers.py b/FusionIIIT/applications/scholarships/api/serializers.py index 5b6fd1b65..7b277bf99 100644 --- a/FusionIIIT/applications/scholarships/api/serializers.py +++ b/FusionIIIT/applications/scholarships/api/serializers.py @@ -1,7 +1,16 @@ from rest_framework import serializers from applications.academic_information.models import Student from applications.globals.models import ExtraInfo -from applications.scholarships.models import Award_and_scholarship,Previous_winner,Mcm,Director_silver,Director_gold,Notional_prize,Proficiency_dm +from applications.scholarships.models import Award_and_scholarship,Previous_winner,Mcm,Director_silver,Director_gold,Notional_prize,Proficiency_dm,Release + + + +class ReleaseSerializer(serializers.ModelSerializer): + class Meta: + model = Release + fields = '__all__' + + # This serializer is used for editing the catalog by convenor and assistant class AwardAndScholarshipSerializer(serializers.ModelSerializer): diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index 00073a0a5..26d6145f9 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -2,12 +2,21 @@ from rest_framework.response import Response from rest_framework.decorators import api_view from rest_framework import status -from applications.scholarships.models import Previous_winner, Award_and_scholarship,Mcm,Director_gold,Notional_prize,Director_silver,Proficiency_dm +from applications.scholarships.models import Previous_winner, Award_and_scholarship,Mcm,Director_gold,Notional_prize,Director_silver,Proficiency_dm,Release from applications.academic_information.models import Spi, Student from applications.globals.models import (Designation, ExtraInfo, HoldsDesignation) from rest_framework import viewsets -from applications.scholarships.api.serializers import PreviousWinnerSerializer,AwardAndScholarshipSerializer,McmSerializer,NotionalPrizeSerializer,DirectorGoldSerializer,DirectorSilverSerializer,ProficiencyDmSerializer +from applications.scholarships.api.serializers import PreviousWinnerSerializer,AwardAndScholarshipSerializer,McmSerializer,NotionalPrizeSerializer,DirectorGoldSerializer,DirectorSilverSerializer,ProficiencyDmSerializer,ReleaseSerializer + + +class ReleaseCreateView(APIView): + def post(self, request): + serializer = ReleaseSerializer(data=request.data) + if serializer.is_valid(): + serializer.save() # Save the data to the database + return Response(serializer.data, status=status.HTTP_201_CREATED) + return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) @@ -178,7 +187,7 @@ def post(self, request): serializer = ProficiencyDmSerializer(proficiency_dm_data, many=True) return Response(serializer.data, status=status.HTTP_200_OK) - + class ScholarshipDetailView(APIView): def get(self, request): diff --git a/FusionIIIT/applications/scholarships/models.py b/FusionIIIT/applications/scholarships/models.py index 2fce5beff..3cf7910fb 100755 --- a/FusionIIIT/applications/scholarships/models.py +++ b/FusionIIIT/applications/scholarships/models.py @@ -289,85 +289,3 @@ class Meta: -# class McmSerializer(serializers.ModelSerializer): -# class Meta: -# model = Mcm -# fields = [ -# 'brother_name', 'brother_occupation', 'sister_name', 'sister_occupation', -# 'income_father', 'income_mother', 'income_other', 'father_occ', 'mother_occ', -# 'father_occ_desc', 'mother_occ_desc', 'four_wheeler', 'four_wheeler_desc', -# 'two_wheeler', 'two_wheeler_desc', 'house', 'plot_area', 'constructed_area', -# 'school_fee', 'school_name', 'bank_name', 'loan_amount', 'college_fee', -# 'college_name', 'income_certificate', 'forms', 'status', 'student', -# 'annual_income', 'date', 'award_id' -# ] - - -# class NotionalPrizeSerializer(serializers.ModelSerializer): -# class Meta: -# model = Notional_prize -# fields = ['spi', 'cpi', 'year', 'award_id'] - - -# class ReleaseSerializer(serializers.ModelSerializer): -# class Meta: -# model = Release -# fields = [ -# 'date_time', 'programme', 'startdate', 'enddate', 'award', -# 'remarks', 'batch', 'notif_visible' -# ] - -# class NotificationSerializer(serializers.ModelSerializer): -# class Meta: -# model = Notification -# fields = [ -# 'release_id', 'student_id', 'notification_mcm_flag', -# 'notification_convocation_flag', 'invite_mcm_accept_flag', -# 'invite_convocation_accept_flag' -# ] - -# class ApplicationSerializer(serializers.ModelSerializer): -# class Meta: -# model = Application -# fields = ['application_id', 'student_id', 'applied_flag', 'award'] - - -# class DirectorSilverSerializer(serializers.ModelSerializer): -# class Meta: -# model = Director_silver -# fields = [ -# 'nearest_policestation', 'nearest_railwaystation', 'correspondence_address', -# 'student', 'award_id', 'award_type', 'status', 'relevant_document', 'date', -# 'financial_assistance', 'grand_total', 'inside_achievements', 'justification', -# 'outside_achievements' -# ] - - - -# class ProficiencyDmSerializer(serializers.ModelSerializer): -# class Meta: -# model = Proficiency_dm -# fields = [ -# 'relevant_document', 'title_name', 'student', 'award_id', 'award_type', -# 'status', 'nearest_policestation', 'nearest_railwaystation', -# 'correspondence_address', 'no_of_students', 'date', 'roll_no1', 'roll_no2', -# 'roll_no3', 'roll_no4', 'roll_no5', 'financial_assistance', -# 'brief_description', 'justification', 'grand_total', 'ece_topic', 'cse_topic', -# 'mech_topic', 'design_topic', 'ece_percentage', 'cse_percentage', -# 'mech_percentage', 'design_percentage' -# ] - - -# class DirectorGoldSerializer(serializers.ModelSerializer): -# class Meta: -# model = Director_gold -# fields = [ -# 'student', 'status', 'correspondence_address', 'nearest_policestation', -# 'nearest_railwaystation', 'relevant_document', 'date', 'award_id', -# 'financial_assistance', 'academic_achievements', 'science_inside', -# 'science_outside', 'games_inside', 'games_outside', 'cultural_inside', -# 'cultural_outside', 'social', 'corporate', 'hall_activities', -# 'gymkhana_activities', 'institute_activities', 'counselling_activities', -# 'other_activities', 'justification', 'grand_total' -# ] - diff --git a/FusionIIIT/applications/scholarships/urls.py b/FusionIIIT/applications/scholarships/urls.py index 4fb602259..61c37fe21 100755 --- a/FusionIIIT/applications/scholarships/urls.py +++ b/FusionIIIT/applications/scholarships/urls.py @@ -5,7 +5,7 @@ from . import views from applications.scholarships.api.views import GetWinnersView from applications.scholarships.api.views import create_award,McmUpdateView, McmRetrieveView, DirectorSilverRetrieveView,DirectorSilverUpdateView,DirectorGoldRetrieveView,DirectorGoldUpdateView,ProficiencyDmRetrieveView,ProficiencyDmUpdateView,AwardAndScholarshipCreateView -from applications.scholarships.api.views import ScholarshipDetailView,StudentDetailView,DirectorSilverDetailView,DirectorGoldDetailView,DirectorGoldListView +from applications.scholarships.api.views import ScholarshipDetailView,StudentDetailView,DirectorSilverDetailView,DirectorGoldDetailView,DirectorGoldListView,ReleaseCreateView app_name = 'spacs' @@ -42,5 +42,5 @@ url(r'student_file_show/', StudentDetailView.as_view(), name='student-file-show'), path('director_silver_show/', DirectorSilverDetailView.as_view(), name='director_silver_detail'), path('director_gold_view/', DirectorGoldDetailView.as_view(), name='director_gold_detail'), - + path('release', ReleaseCreateView.as_view(), name='release_create'), ] \ No newline at end of file From 875edb19706f4b9ea4c7822289811fd50a1928b1 Mon Sep 17 00:00:00 2001 From: Harsh Date: Sat, 16 Nov 2024 12:34:47 +0530 Subject: [PATCH 15/37] some other apis --- FusionIIIT/applications/scholarships/urls.py | 1 + 1 file changed, 1 insertion(+) diff --git a/FusionIIIT/applications/scholarships/urls.py b/FusionIIIT/applications/scholarships/urls.py index 61c37fe21..da0648e69 100755 --- a/FusionIIIT/applications/scholarships/urls.py +++ b/FusionIIIT/applications/scholarships/urls.py @@ -42,5 +42,6 @@ url(r'student_file_show/', StudentDetailView.as_view(), name='student-file-show'), path('director_silver_show/', DirectorSilverDetailView.as_view(), name='director_silver_detail'), path('director_gold_view/', DirectorGoldDetailView.as_view(), name='director_gold_detail'), + # Api for invite appication usecase path('release', ReleaseCreateView.as_view(), name='release_create'), ] \ No newline at end of file From 5e42debe606ad64ff22b02c5c1a0f671c9ea4010 Mon Sep 17 00:00:00 2001 From: Priyanshu <115771027+PriyanshuXcoder@users.noreply.github.com> Date: Sat, 16 Nov 2024 14:47:18 +0530 Subject: [PATCH 16/37] Added API for Director_gold,Director Silver,MCM listing and MCM,director gold,director silverstatus update functionality --- .../migrations/0005_merge_20241116_0233.py | 14 +++ .../migrations/0006_merge_20241116_0233.py | 14 +++ .../migrations/0005_merge_20241116_0233.py | 14 +++ .../migrations/0004_merge_20241116_0232.py | 14 +++ .../scholarships/api/serializers.py | 20 ++++ .../applications/scholarships/api/views.py | 94 ++++++++++++++++++- .../applications/scholarships/models.py | 13 ++- FusionIIIT/applications/scholarships/urls.py | 10 +- 8 files changed, 186 insertions(+), 7 deletions(-) create mode 100644 FusionIIIT/applications/central_mess/migrations/0005_merge_20241116_0233.py create mode 100644 FusionIIIT/applications/globals/migrations/0006_merge_20241116_0233.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0233.py create mode 100644 FusionIIIT/applications/research_procedures/migrations/0004_merge_20241116_0232.py diff --git a/FusionIIIT/applications/central_mess/migrations/0005_merge_20241116_0233.py b/FusionIIIT/applications/central_mess/migrations/0005_merge_20241116_0233.py new file mode 100644 index 000000000..0f22d00e8 --- /dev/null +++ b/FusionIIIT/applications/central_mess/migrations/0005_merge_20241116_0233.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-16 02:33 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('central_mess', '0003_merge_20241110_1253'), + ('central_mess', '0004_merge_20241115_1610'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/globals/migrations/0006_merge_20241116_0233.py b/FusionIIIT/applications/globals/migrations/0006_merge_20241116_0233.py new file mode 100644 index 000000000..de98b241b --- /dev/null +++ b/FusionIIIT/applications/globals/migrations/0006_merge_20241116_0233.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-16 02:33 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('globals', '0004_merge_20241115_1610'), + ('globals', '0005_auto_20241115_1710'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0233.py b/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0233.py new file mode 100644 index 000000000..fcfdaf082 --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0233.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-16 02:33 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0003_merge_20241110_1253'), + ('online_cms', '0004_merge_20241115_1509'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0004_merge_20241116_0232.py b/FusionIIIT/applications/research_procedures/migrations/0004_merge_20241116_0232.py new file mode 100644 index 000000000..cf6d2bf31 --- /dev/null +++ b/FusionIIIT/applications/research_procedures/migrations/0004_merge_20241116_0232.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-16 02:32 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('research_procedures', '0003_merge_20241115_1509'), + ('research_procedures', '0003_merge_20241110_1253'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/scholarships/api/serializers.py b/FusionIIIT/applications/scholarships/api/serializers.py index 7b277bf99..2fb495752 100644 --- a/FusionIIIT/applications/scholarships/api/serializers.py +++ b/FusionIIIT/applications/scholarships/api/serializers.py @@ -4,6 +4,26 @@ from applications.scholarships.models import Award_and_scholarship,Previous_winner,Mcm,Director_silver,Director_gold,Notional_prize,Proficiency_dm,Release +class McmStatusUpdateSerializer(serializers.ModelSerializer): + class Meta: + model = Mcm + fields = ['status'] + + + + +class DirectorSilverDecisionSerializer(serializers.ModelSerializer): + class Meta: + model = Director_silver + fields = ['id', 'status'] + + def validate_status(self, value): + if value not in ['ACCEPTED', 'REJECTED']: + raise serializers.ValidationError("Status must be either 'ACCEPTED' or 'REJECTED'.") + return value + + + class ReleaseSerializer(serializers.ModelSerializer): class Meta: diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index 26d6145f9..445a76367 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -7,7 +7,8 @@ from applications.globals.models import (Designation, ExtraInfo, HoldsDesignation) from rest_framework import viewsets -from applications.scholarships.api.serializers import PreviousWinnerSerializer,AwardAndScholarshipSerializer,McmSerializer,NotionalPrizeSerializer,DirectorGoldSerializer,DirectorSilverSerializer,ProficiencyDmSerializer,ReleaseSerializer +from applications.scholarships.api.serializers import PreviousWinnerSerializer,AwardAndScholarshipSerializer,McmSerializer,NotionalPrizeSerializer,DirectorGoldSerializer,DirectorSilverSerializer,ProficiencyDmSerializer,ReleaseSerializer,McmStatusUpdateSerializer,DirectorSilverDecisionSerializer +from django.shortcuts import get_object_or_404 class ReleaseCreateView(APIView): @@ -255,3 +256,94 @@ def post(self, request): serializer = DirectorGoldSerializer(director_gold_entry) return Response(serializer.data, status=status.HTTP_200_OK) + + +#This api for MCM status that is accept, reject and under review + +class McmStatusUpdateView(APIView): + def post(self, request): + # Fetch the Mcm instance based on the provided primary key (pk) + mcm_instance = get_object_or_404(Mcm) + + # Deserialize the input data with the existing object + serializer = McmStatusUpdateSerializer(mcm_instance, data=request.data, partial=True) + + # Validate the data + if serializer.is_valid(): + # Save the updated status + serializer.save() + return Response({"message": "Status updated successfully", "data": serializer.data}, status=status.HTTP_200_OK) + + # Return validation errors + return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) + + + +#This api for Director silver accepting and rejecting the application by convenor and assistant + +class DirectorSilverDecisionView(APIView): + def post(self, request): + # Deserialize the request data + serializer = DirectorSilverDecisionSerializer(data=request.data) + + if serializer.is_valid(): + try: + # Retrieve the Director_silver instance using the provided id + director_silver = Director_silver.objects.get(id=request.data['id']) + + # Update the status field + director_silver.status = serializer.validated_data['status'] + director_silver.save() + + return Response({"message": f"Application has been {director_silver.status.lower()}."}, + status=status.HTTP_200_OK) + + except Director_silver.DoesNotExist: + return Response({"error": "Director_silver entry not found."}, + status=status.HTTP_404_NOT_FOUND) + + # If the data is invalid + return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) + + + +##This api for Director gold accepting and rejecting the application by convenor and assistant + +class DirectorGoldAcceptRejectView(APIView): + def post(self, request): + # Get the ID of the Director_gold entry to update + director_gold_id = request.data.get('id') + action = request.data.get('action') # 'accept' or 'reject' + + # Check if the action is valid + if action not in ['accept', 'reject']: + return Response({'error': 'Invalid action. Please choose either "accept" or "reject".'}, status=status.HTTP_400_BAD_REQUEST) + + try: + # Fetch the Director_gold entry from the database using the ID + director_gold = Director_gold.objects.get(id=director_gold_id) + except Director_gold.DoesNotExist: + return Response({'error': 'Director_gold entry not found.'}, status=status.HTTP_404_NOT_FOUND) + + # Update the status based on the action + if action == 'accept': + director_gold.status = 'ACCEPTED' + else: + director_gold.status = 'REJECTED' + + # Save the updated Director_gold entry + director_gold.save() + + # Return the updated entry as a response + serializer = DirectorGoldSerializer(director_gold) + return Response(serializer.data, status=status.HTTP_200_OK) + + +class DirectorSilverListView(APIView): + """ + API View to list all entries of the Director_silver model. + """ + def get(self, request): + director_silver_entries = Director_silver.objects.all() + serializer = DirectorSilverSerializer(director_silver_entries, many=True) + return Response(serializer.data, status=status.HTTP_200_OK) \ No newline at end of file diff --git a/FusionIIIT/applications/scholarships/models.py b/FusionIIIT/applications/scholarships/models.py index 3cf7910fb..07954685d 100755 --- a/FusionIIIT/applications/scholarships/models.py +++ b/FusionIIIT/applications/scholarships/models.py @@ -9,7 +9,10 @@ class Constants: ('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), - ('Accept', 'ACCEPT') + ('Accept', 'ACCEPT'), + ('ACCEPT', 'Accept'), + ('REJECT', 'Reject'), + ('UNDER_REVIEW', 'Under Review') ) TIME = ( @@ -114,7 +117,7 @@ class Mcm(models.Model): Aadhar_card = models.FileField(null=False, blank=False) Fee_Receipt = models.FileField(null=False, blank=False) forms = models.FileField(null=True, blank=True) - status = models.CharField(max_length=10, choices=Constants.STATUS_CHOICES, default='INCOMPLETE') + status = models.CharField(max_length=20, choices=Constants.STATUS_CHOICES, default='INCOMPLETE') student = models.ForeignKey(Student, on_delete=models.CASCADE, related_name='mcm_info') annual_income = models.IntegerField(default=0) @@ -196,7 +199,7 @@ class Director_silver(models.Model): student = models.ForeignKey(Student, on_delete=models.CASCADE) award_id = models.ForeignKey(Award_and_scholarship, on_delete=models.CASCADE) award_type = models.CharField(max_length=50, null=True) - status = models.CharField(max_length=10, choices=Constants.STATUS_CHOICES,default='INCOMPLETE') + status = models.CharField(max_length=20, choices=Constants.STATUS_CHOICES,default='INCOMPLETE') Marksheet = models.FileField(null=False, blank=False) date = models.DateField(default=datetime.date.today) financial_assistance = models.TextField(max_length=1000 ,null=True) @@ -216,7 +219,7 @@ class Proficiency_dm(models.Model): student = models.ForeignKey(Student, on_delete=models.CASCADE) award_id = models.ForeignKey(Award_and_scholarship, on_delete=models.CASCADE) award_type = models.CharField(max_length=50, null=True) - status = models.CharField(max_length=10, choices=Constants.STATUS_CHOICES,default='INCOMPLETE') + status = models.CharField(max_length=20, choices=Constants.STATUS_CHOICES,default='INCOMPLETE') nearest_policestation = models.TextField(max_length=30, default='station') nearest_railwaystation = models.TextField(max_length=30, default='station') correspondence_address = models.TextField(max_length=150, null=True) @@ -252,7 +255,7 @@ class Meta: class Director_gold(models.Model): student = models.ForeignKey(Student, on_delete=models.CASCADE) - status = models.CharField(max_length=10,choices=Constants.STATUS_CHOICES, default='INCOMPLETE') + status = models.CharField(max_length=20,choices=Constants.STATUS_CHOICES, default='INCOMPLETE') correspondence_address = models.TextField(max_length=40, default='address') nearest_policestation = models.TextField(max_length=30, default='station') nearest_railwaystation = models.TextField(max_length=30, default='station') diff --git a/FusionIIIT/applications/scholarships/urls.py b/FusionIIIT/applications/scholarships/urls.py index 61c37fe21..cbbb134ce 100755 --- a/FusionIIIT/applications/scholarships/urls.py +++ b/FusionIIIT/applications/scholarships/urls.py @@ -5,7 +5,8 @@ from . import views from applications.scholarships.api.views import GetWinnersView from applications.scholarships.api.views import create_award,McmUpdateView, McmRetrieveView, DirectorSilverRetrieveView,DirectorSilverUpdateView,DirectorGoldRetrieveView,DirectorGoldUpdateView,ProficiencyDmRetrieveView,ProficiencyDmUpdateView,AwardAndScholarshipCreateView -from applications.scholarships.api.views import ScholarshipDetailView,StudentDetailView,DirectorSilverDetailView,DirectorGoldDetailView,DirectorGoldListView,ReleaseCreateView +from applications.scholarships.api.views import ScholarshipDetailView,StudentDetailView,DirectorSilverDetailView,DirectorGoldDetailView,DirectorGoldListView,ReleaseCreateView,McmStatusUpdateView,DirectorSilverDecisionView,DirectorGoldAcceptRejectView,DirectorSilverListView + app_name = 'spacs' @@ -43,4 +44,11 @@ path('director_silver_show/', DirectorSilverDetailView.as_view(), name='director_silver_detail'), path('director_gold_view/', DirectorGoldDetailView.as_view(), name='director_gold_detail'), path('release', ReleaseCreateView.as_view(), name='release_create'), + + url(r'student_file_show/', StudentDetailView.as_view(), name='student-file-show'), + path('mcm/status-update/', McmStatusUpdateView.as_view(), name='mcm-status-update'), + path('api/director_silver/decision/', DirectorSilverDecisionView.as_view(), name='director_silver_decision'), + path('director-gold/accept-reject/', DirectorGoldAcceptRejectView.as_view(), name='director-gold-accept-reject'), + path('director-silver/', DirectorSilverListView.as_view(), name='director-silver-list'), + ] \ No newline at end of file From 0d4edbd4e93145b93002e6bdbd20d3e3fc7d433b Mon Sep 17 00:00:00 2001 From: Priyanshu <115771027+PriyanshuXcoder@users.noreply.github.com> Date: Sat, 16 Nov 2024 14:57:09 +0530 Subject: [PATCH 17/37] API for Director silver status update --- .../applications/scholarships/api/views.py | 29 +++++++++++++++++++ FusionIIIT/applications/scholarships/urls.py | 4 +-- 2 files changed, 31 insertions(+), 2 deletions(-) diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index 445a76367..f4a0a12f2 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -346,4 +346,33 @@ class DirectorSilverListView(APIView): def get(self, request): director_silver_entries = Director_silver.objects.all() serializer = DirectorSilverSerializer(director_silver_entries, many=True) + return Response(serializer.data, status=status.HTTP_200_OK) + +class DirectorSilverAcceptRejectView(APIView): + def post(self, request): + # Get the ID of the Director_silver entry to update + director_silver_id = request.data.get('id') + action = request.data.get('action') # 'accept' or 'reject' + + # Check if the action is valid + if action not in ['accept', 'reject']: + return Response({'error': 'Invalid action. Choose either "accept" or "reject".'}, status=status.HTTP_400_BAD_REQUEST) + + try: + # Fetch the Director_silver entry from the database using the ID + director_silver = Director_silver.objects.get(id=director_silver_id) + except Director_silver.DoesNotExist: + return Response({'error': 'Director_silver entry not found.'}, status=status.HTTP_404_NOT_FOUND) + + # Update the status based on the action + if action == 'accept': + director_silver.status = 'ACCEPTED' + else: + director_silver.status = 'REJECTED' + + # Save the updated Director_silver entry + director_silver.save() + + # Return the updated entry as a response + serializer = DirectorSilverSerializer(director_silver) return Response(serializer.data, status=status.HTTP_200_OK) \ No newline at end of file diff --git a/FusionIIIT/applications/scholarships/urls.py b/FusionIIIT/applications/scholarships/urls.py index cbbb134ce..d32e65534 100755 --- a/FusionIIIT/applications/scholarships/urls.py +++ b/FusionIIIT/applications/scholarships/urls.py @@ -5,7 +5,7 @@ from . import views from applications.scholarships.api.views import GetWinnersView from applications.scholarships.api.views import create_award,McmUpdateView, McmRetrieveView, DirectorSilverRetrieveView,DirectorSilverUpdateView,DirectorGoldRetrieveView,DirectorGoldUpdateView,ProficiencyDmRetrieveView,ProficiencyDmUpdateView,AwardAndScholarshipCreateView -from applications.scholarships.api.views import ScholarshipDetailView,StudentDetailView,DirectorSilverDetailView,DirectorGoldDetailView,DirectorGoldListView,ReleaseCreateView,McmStatusUpdateView,DirectorSilverDecisionView,DirectorGoldAcceptRejectView,DirectorSilverListView +from applications.scholarships.api.views import ScholarshipDetailView,StudentDetailView,DirectorSilverDetailView,DirectorGoldDetailView,DirectorGoldListView,ReleaseCreateView,McmStatusUpdateView,DirectorSilverDecisionView,DirectorGoldAcceptRejectView,DirectorSilverListView,DirectorSilverAcceptRejectView @@ -50,5 +50,5 @@ path('api/director_silver/decision/', DirectorSilverDecisionView.as_view(), name='director_silver_decision'), path('director-gold/accept-reject/', DirectorGoldAcceptRejectView.as_view(), name='director-gold-accept-reject'), path('director-silver/', DirectorSilverListView.as_view(), name='director-silver-list'), - + path('director-silver/accept-reject/', DirectorSilverAcceptRejectView.as_view(), name='director-silver-accept-reject'), ] \ No newline at end of file From 16911ada533d0f131d02f77f15cf9f7a996a2ed7 Mon Sep 17 00:00:00 2001 From: Priyanshu <115771027+PriyanshuXcoder@users.noreply.github.com> Date: Mon, 18 Nov 2024 20:31:13 +0530 Subject: [PATCH 18/37] Changed in views of Award and Scholarship --- .../migrations/0007_merge_20241118_1914.py | 14 +++ .../migrations/0007_merge_20241118_1914.py | 14 +++ .../migrations/0006_merge_20241118_1914.py | 14 +++ .../migrations/0005_merge_20241118_1914.py | 14 +++ .../applications/scholarships/api/views.py | 99 ++++++++++--------- FusionIIIT/applications/scholarships/urls.py | 7 +- 6 files changed, 115 insertions(+), 47 deletions(-) create mode 100644 FusionIIIT/applications/central_mess/migrations/0007_merge_20241118_1914.py create mode 100644 FusionIIIT/applications/globals/migrations/0007_merge_20241118_1914.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1914.py create mode 100644 FusionIIIT/applications/research_procedures/migrations/0005_merge_20241118_1914.py diff --git a/FusionIIIT/applications/central_mess/migrations/0007_merge_20241118_1914.py b/FusionIIIT/applications/central_mess/migrations/0007_merge_20241118_1914.py new file mode 100644 index 000000000..aa83ab2e2 --- /dev/null +++ b/FusionIIIT/applications/central_mess/migrations/0007_merge_20241118_1914.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-18 19:14 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('central_mess', '0006_auto_20241116_0306'), + ('central_mess', '0005_merge_20241116_0233'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/globals/migrations/0007_merge_20241118_1914.py b/FusionIIIT/applications/globals/migrations/0007_merge_20241118_1914.py new file mode 100644 index 000000000..3daa763cf --- /dev/null +++ b/FusionIIIT/applications/globals/migrations/0007_merge_20241118_1914.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-18 19:14 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('globals', '0006_merge_20241116_0233'), + ('globals', '0006_merge_20241116_0303'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1914.py b/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1914.py new file mode 100644 index 000000000..408d4ddfd --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1914.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-18 19:14 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0005_merge_20241116_0303'), + ('online_cms', '0005_merge_20241116_0233'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0005_merge_20241118_1914.py b/FusionIIIT/applications/research_procedures/migrations/0005_merge_20241118_1914.py new file mode 100644 index 000000000..08ffed819 --- /dev/null +++ b/FusionIIIT/applications/research_procedures/migrations/0005_merge_20241118_1914.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-18 19:14 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('research_procedures', '0004_merge_20241116_0232'), + ('research_procedures', '0004_merge_20241116_0303'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index f4a0a12f2..ead0ff3db 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -11,6 +11,7 @@ from django.shortcuts import get_object_or_404 +#This api is for invite application class ReleaseCreateView(APIView): def post(self, request): serializer = ReleaseSerializer(data=request.data) @@ -21,23 +22,31 @@ def post(self, request): - -class AwardAndScholarshipCreateView(APIView): - def post(self, request): - - serializer = AwardAndScholarshipSerializer(data=request.data) +#This API is for editing the catalogue by convenor and assistant and saving in the database +class AwardAndScholarshipCreateView(APIView): + def post(self, request, pk=None): + # Check if pk is provided, if yes, try to update the existing entry + pk=request.data.get("id") + if pk is not None: + award = get_object_or_404(Award_and_scholarship, pk=pk) + # Update the existing entry + serializer = AwardAndScholarshipSerializer(award, data=request.data, partial=True) + else: + # If pk is not provided, create a new entry + serializer = AwardAndScholarshipSerializer(data=request.data) if serializer.is_valid(): - # Save the new entry to the database serializer.save() - return Response(serializer.data, status=status.HTTP_201_CREATED) # 201 Created response - return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) # 400 Bad Request if data is invalid - + status_code = status.HTTP_200_OK if pk is not None else status.HTTP_201_CREATED + return Response(serializer.data, status=status_code) + + return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) +#This api for fetching the award and scholarship catalogue from the database class create_award(APIView): def get(self, request, *args, **kwargs): @@ -46,7 +55,7 @@ def get(self, request, *args, **kwargs): return Response(serializer.data, status=status.HTTP_200_OK) - +#This api is for Previous Winner class GetWinnersView(APIView): def post(self, request, *args, **kwargs): @@ -138,6 +147,7 @@ def post(self, request): director_silver_instance = serializer.save() return Response(DirectorSilverSerializer(director_silver_instance).data, status=status.HTTP_201_CREATED) return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) + class DirectorGoldRetrieveView(APIView): def post(self, request): roll_number = request.data.get('roll_number') @@ -189,7 +199,7 @@ def post(self, request): return Response(serializer.data, status=status.HTTP_200_OK) - +#This api for showing the list of student who has applied for mcm scholarship to convenor assistant class ScholarshipDetailView(APIView): def get(self, request): # Fetch all records from the Mcm table @@ -208,8 +218,10 @@ def get(self, request): serializer = DirectorGoldSerializer(director_gold_entries, many=True) # Return the serialized data as a response return Response(serializer.data, status=status.HTTP_200_OK) - + + +#This api is for showing the all the documnet to the convenor or assistant submitted by the student in browse application class StudentDetailView(APIView): def post(self, request): student_id = request.data.get('student') @@ -224,7 +236,7 @@ def post(self, request): serializer = McmSerializer(mcm_entry) return Response(serializer.data, status=status.HTTP_200_OK) - +#This api is for showing the list of student who has applied for director silver in browse application in convenor and assistant class DirectorSilverDetailView(APIView): def post(self, request): student_id = request.data.get('student') @@ -241,7 +253,7 @@ def post(self, request): return Response(serializer.data, status=status.HTTP_200_OK) - +#This api is for showing the list of student who has applied for director gold in browse application in convenor and assistant class DirectorGoldDetailView(APIView): def post(self, request): student_id = request.data.get('student') @@ -308,7 +320,6 @@ def post(self, request): ##This api for Director gold accepting and rejecting the application by convenor and assistant - class DirectorGoldAcceptRejectView(APIView): def post(self, request): # Get the ID of the Director_gold entry to update @@ -338,7 +349,7 @@ def post(self, request): serializer = DirectorGoldSerializer(director_gold) return Response(serializer.data, status=status.HTTP_200_OK) - +#API View to list all entries of the Director_silver model. class DirectorSilverListView(APIView): """ API View to list all entries of the Director_silver model. @@ -348,31 +359,31 @@ def get(self, request): serializer = DirectorSilverSerializer(director_silver_entries, many=True) return Response(serializer.data, status=status.HTTP_200_OK) -class DirectorSilverAcceptRejectView(APIView): - def post(self, request): - # Get the ID of the Director_silver entry to update - director_silver_id = request.data.get('id') - action = request.data.get('action') # 'accept' or 'reject' - - # Check if the action is valid - if action not in ['accept', 'reject']: - return Response({'error': 'Invalid action. Choose either "accept" or "reject".'}, status=status.HTTP_400_BAD_REQUEST) - - try: - # Fetch the Director_silver entry from the database using the ID - director_silver = Director_silver.objects.get(id=director_silver_id) - except Director_silver.DoesNotExist: - return Response({'error': 'Director_silver entry not found.'}, status=status.HTTP_404_NOT_FOUND) - - # Update the status based on the action - if action == 'accept': - director_silver.status = 'ACCEPTED' - else: - director_silver.status = 'REJECTED' - - # Save the updated Director_silver entry - director_silver.save() - - # Return the updated entry as a response - serializer = DirectorSilverSerializer(director_silver) - return Response(serializer.data, status=status.HTTP_200_OK) \ No newline at end of file +# class DirectorSilverAcceptRejectView(APIView): +# def post(self, request): +# # Get the ID of the Director_silver entry to update +# director_silver_id = request.data.get('id') +# action = request.data.get('action') # 'accept' or 'reject' + +# # Check if the action is valid +# if action not in ['accept', 'reject']: +# return Response({'error': 'Invalid action. Choose either "accept" or "reject".'}, status=status.HTTP_400_BAD_REQUEST) + +# try: +# # Fetch the Director_silver entry from the database using the ID +# director_silver = Director_silver.objects.get(id=director_silver_id) +# except Director_silver.DoesNotExist: +# return Response({'error': 'Director_silver entry not found.'}, status=status.HTTP_404_NOT_FOUND) + +# # Update the status based on the action +# if action == 'accept': +# director_silver.status = 'ACCEPTED' +# else: +# director_silver.status = 'REJECTED' + +# # Save the updated Director_silver entry +# director_silver.save() + +# # Return the updated entry as a response +# serializer = DirectorSilverSerializer(director_silver) +# return Response(serializer.data, status=status.HTTP_200_OK) \ No newline at end of file diff --git a/FusionIIIT/applications/scholarships/urls.py b/FusionIIIT/applications/scholarships/urls.py index d32e65534..4e278c701 100755 --- a/FusionIIIT/applications/scholarships/urls.py +++ b/FusionIIIT/applications/scholarships/urls.py @@ -5,7 +5,8 @@ from . import views from applications.scholarships.api.views import GetWinnersView from applications.scholarships.api.views import create_award,McmUpdateView, McmRetrieveView, DirectorSilverRetrieveView,DirectorSilverUpdateView,DirectorGoldRetrieveView,DirectorGoldUpdateView,ProficiencyDmRetrieveView,ProficiencyDmUpdateView,AwardAndScholarshipCreateView -from applications.scholarships.api.views import ScholarshipDetailView,StudentDetailView,DirectorSilverDetailView,DirectorGoldDetailView,DirectorGoldListView,ReleaseCreateView,McmStatusUpdateView,DirectorSilverDecisionView,DirectorGoldAcceptRejectView,DirectorSilverListView,DirectorSilverAcceptRejectView +from applications.scholarships.api.views import ScholarshipDetailView,StudentDetailView,DirectorSilverDetailView,DirectorGoldDetailView,DirectorGoldListView,ReleaseCreateView,McmStatusUpdateView,DirectorSilverDecisionView,DirectorGoldAcceptRejectView,DirectorSilverListView +# ,DirectorSilverAcceptRejectView @@ -45,10 +46,10 @@ path('director_gold_view/', DirectorGoldDetailView.as_view(), name='director_gold_detail'), path('release', ReleaseCreateView.as_view(), name='release_create'), - url(r'student_file_show/', StudentDetailView.as_view(), name='student-file-show'), + # url(r'student_file_show/', StudentDetailView.as_view(), name='student-file-show'), path('mcm/status-update/', McmStatusUpdateView.as_view(), name='mcm-status-update'), path('api/director_silver/decision/', DirectorSilverDecisionView.as_view(), name='director_silver_decision'), path('director-gold/accept-reject/', DirectorGoldAcceptRejectView.as_view(), name='director-gold-accept-reject'), path('director-silver/', DirectorSilverListView.as_view(), name='director-silver-list'), - path('director-silver/accept-reject/', DirectorSilverAcceptRejectView.as_view(), name='director-silver-accept-reject'), + # path('director-silver/accept-reject/', DirectorSilverAcceptRejectView.as_view(), name='director-silver-accept-reject'), ] \ No newline at end of file From 950ca4a5e295f99e72c0caa862310abe94798187 Mon Sep 17 00:00:00 2001 From: Ms Kumkum Kadhala <22bcs165@iiitdmj.ac.in> Date: Mon, 18 Nov 2024 20:40:37 +0530 Subject: [PATCH 19/37] Update scholarships URLs and add migration files --- .../migrations/0003_merge_20241107_1924.py | 15 +++++++++++++++ .../migrations/0004_merge_20241112_2008.py | 14 ++++++++++++++ .../migrations/0005_auto_20241112_2009.py | 19 +++++++++++++++++++ .../migrations/0006_merge_20241116_0248.py | 15 +++++++++++++++ .../migrations/0007_merge_20241118_1545.py | 15 +++++++++++++++ .../migrations/0004_merge_20241107_1924.py | 14 ++++++++++++++ .../migrations/0005_merge_20241112_2008.py | 14 ++++++++++++++ .../migrations/0006_auto_20241112_2009.py | 18 ++++++++++++++++++ .../migrations/0007_merge_20241116_0248.py | 15 +++++++++++++++ .../migrations/0008_merge_20241118_1545.py | 15 +++++++++++++++ .../migrations/0003_merge_20241107_1924.py | 15 +++++++++++++++ .../migrations/0004_merge_20241112_2008.py | 14 ++++++++++++++ .../migrations/0005_merge_20241116_0248.py | 15 +++++++++++++++ .../migrations/0006_merge_20241118_1545.py | 15 +++++++++++++++ .../migrations/0003_merge_20241107_1924.py | 15 +++++++++++++++ .../migrations/0004_merge_20241112_2008.py | 14 ++++++++++++++ .../migrations/0005_auto_20241112_2009.py | 19 +++++++++++++++++++ .../migrations/0006_merge_20241116_0248.py | 15 +++++++++++++++ .../migrations/0007_merge_20241118_1545.py | 15 +++++++++++++++ .../migrations/0003_auto_20241117_2324.py | 18 ++++++++++++++++++ .../migrations/0004_merge_20241118_1545.py | 14 ++++++++++++++ FusionIIIT/applications/scholarships/urls.py | 4 ++-- 22 files changed, 325 insertions(+), 2 deletions(-) create mode 100644 FusionIIIT/applications/central_mess/migrations/0003_merge_20241107_1924.py create mode 100644 FusionIIIT/applications/central_mess/migrations/0004_merge_20241112_2008.py create mode 100644 FusionIIIT/applications/central_mess/migrations/0005_auto_20241112_2009.py create mode 100644 FusionIIIT/applications/central_mess/migrations/0006_merge_20241116_0248.py create mode 100644 FusionIIIT/applications/central_mess/migrations/0007_merge_20241118_1545.py create mode 100644 FusionIIIT/applications/globals/migrations/0004_merge_20241107_1924.py create mode 100644 FusionIIIT/applications/globals/migrations/0005_merge_20241112_2008.py create mode 100644 FusionIIIT/applications/globals/migrations/0006_auto_20241112_2009.py create mode 100644 FusionIIIT/applications/globals/migrations/0007_merge_20241116_0248.py create mode 100644 FusionIIIT/applications/globals/migrations/0008_merge_20241118_1545.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0003_merge_20241107_1924.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0004_merge_20241112_2008.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0248.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1545.py create mode 100644 FusionIIIT/applications/research_procedures/migrations/0003_merge_20241107_1924.py create mode 100644 FusionIIIT/applications/research_procedures/migrations/0004_merge_20241112_2008.py create mode 100644 FusionIIIT/applications/research_procedures/migrations/0005_auto_20241112_2009.py create mode 100644 FusionIIIT/applications/research_procedures/migrations/0006_merge_20241116_0248.py create mode 100644 FusionIIIT/applications/research_procedures/migrations/0007_merge_20241118_1545.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0003_auto_20241117_2324.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0004_merge_20241118_1545.py diff --git a/FusionIIIT/applications/central_mess/migrations/0003_merge_20241107_1924.py b/FusionIIIT/applications/central_mess/migrations/0003_merge_20241107_1924.py new file mode 100644 index 000000000..109cbae8e --- /dev/null +++ b/FusionIIIT/applications/central_mess/migrations/0003_merge_20241107_1924.py @@ -0,0 +1,15 @@ +# Generated by Django 3.1.5 on 2024-11-07 19:24 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('central_mess', '0002_auto_20241016_1905'), + ('central_mess', '0002_auto_20241017_0040'), + ('central_mess', '0002_auto_20241012_1459'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/central_mess/migrations/0004_merge_20241112_2008.py b/FusionIIIT/applications/central_mess/migrations/0004_merge_20241112_2008.py new file mode 100644 index 000000000..bc282ca71 --- /dev/null +++ b/FusionIIIT/applications/central_mess/migrations/0004_merge_20241112_2008.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-12 20:08 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('central_mess', '0002_auto_20241018_0342'), + ('central_mess', '0003_merge_20241107_1924'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/central_mess/migrations/0005_auto_20241112_2009.py b/FusionIIIT/applications/central_mess/migrations/0005_auto_20241112_2009.py new file mode 100644 index 000000000..a620da757 --- /dev/null +++ b/FusionIIIT/applications/central_mess/migrations/0005_auto_20241112_2009.py @@ -0,0 +1,19 @@ +# Generated by Django 3.1.5 on 2024-11-12 20:09 + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('central_mess', '0004_merge_20241112_2008'), + ] + + operations = [ + migrations.AlterField( + model_name='payments', + name='payment_date', + field=models.DateField(default=datetime.date.today), + ), + ] diff --git a/FusionIIIT/applications/central_mess/migrations/0006_merge_20241116_0248.py b/FusionIIIT/applications/central_mess/migrations/0006_merge_20241116_0248.py new file mode 100644 index 000000000..18ee2510b --- /dev/null +++ b/FusionIIIT/applications/central_mess/migrations/0006_merge_20241116_0248.py @@ -0,0 +1,15 @@ +# Generated by Django 3.1.5 on 2024-11-16 02:48 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('central_mess', '0004_merge_20241115_1610'), + ('central_mess', '0003_merge_20241110_1253'), + ('central_mess', '0005_auto_20241112_2009'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/central_mess/migrations/0007_merge_20241118_1545.py b/FusionIIIT/applications/central_mess/migrations/0007_merge_20241118_1545.py new file mode 100644 index 000000000..5368fea2e --- /dev/null +++ b/FusionIIIT/applications/central_mess/migrations/0007_merge_20241118_1545.py @@ -0,0 +1,15 @@ +# Generated by Django 3.1.5 on 2024-11-18 15:45 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('central_mess', '0006_merge_20241116_0248'), + ('central_mess', '0005_merge_20241116_0233'), + ('central_mess', '0006_auto_20241116_0306'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/globals/migrations/0004_merge_20241107_1924.py b/FusionIIIT/applications/globals/migrations/0004_merge_20241107_1924.py new file mode 100644 index 000000000..170a506a6 --- /dev/null +++ b/FusionIIIT/applications/globals/migrations/0004_merge_20241107_1924.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-07 19:24 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('globals', '0003_auto_20241016_1905'), + ('globals', '0003_auto_20241017_0040'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/globals/migrations/0005_merge_20241112_2008.py b/FusionIIIT/applications/globals/migrations/0005_merge_20241112_2008.py new file mode 100644 index 000000000..140ea7b4e --- /dev/null +++ b/FusionIIIT/applications/globals/migrations/0005_merge_20241112_2008.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-12 20:08 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('globals', '0004_merge_20241107_1924'), + ('globals', '0003_auto_20241018_0342'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/globals/migrations/0006_auto_20241112_2009.py b/FusionIIIT/applications/globals/migrations/0006_auto_20241112_2009.py new file mode 100644 index 000000000..64401a1df --- /dev/null +++ b/FusionIIIT/applications/globals/migrations/0006_auto_20241112_2009.py @@ -0,0 +1,18 @@ +# Generated by Django 3.1.5 on 2024-11-12 20:09 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('globals', '0005_merge_20241112_2008'), + ] + + operations = [ + migrations.AlterField( + model_name='extrainfo', + name='user_status', + field=models.CharField(choices=[('NEW', 'NEW'), ('PRESENT', 'PRESENT')], default='PRESENT', max_length=50), + ), + ] diff --git a/FusionIIIT/applications/globals/migrations/0007_merge_20241116_0248.py b/FusionIIIT/applications/globals/migrations/0007_merge_20241116_0248.py new file mode 100644 index 000000000..0e00a6d63 --- /dev/null +++ b/FusionIIIT/applications/globals/migrations/0007_merge_20241116_0248.py @@ -0,0 +1,15 @@ +# Generated by Django 3.1.5 on 2024-11-16 02:48 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('globals', '0004_merge_20241115_1610'), + ('globals', '0005_auto_20241115_1710'), + ('globals', '0006_auto_20241112_2009'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/globals/migrations/0008_merge_20241118_1545.py b/FusionIIIT/applications/globals/migrations/0008_merge_20241118_1545.py new file mode 100644 index 000000000..e7efa718c --- /dev/null +++ b/FusionIIIT/applications/globals/migrations/0008_merge_20241118_1545.py @@ -0,0 +1,15 @@ +# Generated by Django 3.1.5 on 2024-11-18 15:45 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('globals', '0007_merge_20241116_0248'), + ('globals', '0006_merge_20241116_0233'), + ('globals', '0006_merge_20241116_0303'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0003_merge_20241107_1924.py b/FusionIIIT/applications/online_cms/migrations/0003_merge_20241107_1924.py new file mode 100644 index 000000000..07560292a --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0003_merge_20241107_1924.py @@ -0,0 +1,15 @@ +# Generated by Django 3.1.5 on 2024-11-07 19:24 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0002_auto_20241016_1905'), + ('online_cms', '0002_auto_20241017_0040'), + ('online_cms', '0002_auto_20241012_1459'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0004_merge_20241112_2008.py b/FusionIIIT/applications/online_cms/migrations/0004_merge_20241112_2008.py new file mode 100644 index 000000000..b2b96c455 --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0004_merge_20241112_2008.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-12 20:08 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0002_auto_20241018_0342'), + ('online_cms', '0003_merge_20241107_1924'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0248.py b/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0248.py new file mode 100644 index 000000000..647cb63f2 --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0248.py @@ -0,0 +1,15 @@ +# Generated by Django 3.1.5 on 2024-11-16 02:48 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0003_merge_20241110_1253'), + ('online_cms', '0004_merge_20241112_2008'), + ('online_cms', '0004_merge_20241115_1509'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1545.py b/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1545.py new file mode 100644 index 000000000..cc2d9550a --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1545.py @@ -0,0 +1,15 @@ +# Generated by Django 3.1.5 on 2024-11-18 15:45 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0005_merge_20241116_0303'), + ('online_cms', '0005_merge_20241116_0233'), + ('online_cms', '0005_merge_20241116_0248'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0003_merge_20241107_1924.py b/FusionIIIT/applications/research_procedures/migrations/0003_merge_20241107_1924.py new file mode 100644 index 000000000..6db9d739d --- /dev/null +++ b/FusionIIIT/applications/research_procedures/migrations/0003_merge_20241107_1924.py @@ -0,0 +1,15 @@ +# Generated by Django 3.1.5 on 2024-11-07 19:24 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('research_procedures', '0002_auto_20241016_1905'), + ('research_procedures', '0002_auto_20241017_0040'), + ('research_procedures', '0002_auto_20241012_1459'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0004_merge_20241112_2008.py b/FusionIIIT/applications/research_procedures/migrations/0004_merge_20241112_2008.py new file mode 100644 index 000000000..37604956d --- /dev/null +++ b/FusionIIIT/applications/research_procedures/migrations/0004_merge_20241112_2008.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-12 20:08 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('research_procedures', '0002_auto_20241018_0342'), + ('research_procedures', '0003_merge_20241107_1924'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0005_auto_20241112_2009.py b/FusionIIIT/applications/research_procedures/migrations/0005_auto_20241112_2009.py new file mode 100644 index 000000000..2ea053d3d --- /dev/null +++ b/FusionIIIT/applications/research_procedures/migrations/0005_auto_20241112_2009.py @@ -0,0 +1,19 @@ +# Generated by Django 3.1.5 on 2024-11-12 20:09 + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('research_procedures', '0004_merge_20241112_2008'), + ] + + operations = [ + migrations.AlterField( + model_name='staff_allocations', + name='start_date', + field=models.DateField(default=datetime.date.today), + ), + ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0006_merge_20241116_0248.py b/FusionIIIT/applications/research_procedures/migrations/0006_merge_20241116_0248.py new file mode 100644 index 000000000..65fb6d2db --- /dev/null +++ b/FusionIIIT/applications/research_procedures/migrations/0006_merge_20241116_0248.py @@ -0,0 +1,15 @@ +# Generated by Django 3.1.5 on 2024-11-16 02:48 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('research_procedures', '0003_merge_20241110_1253'), + ('research_procedures', '0005_auto_20241112_2009'), + ('research_procedures', '0003_merge_20241115_1509'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0007_merge_20241118_1545.py b/FusionIIIT/applications/research_procedures/migrations/0007_merge_20241118_1545.py new file mode 100644 index 000000000..38db6a815 --- /dev/null +++ b/FusionIIIT/applications/research_procedures/migrations/0007_merge_20241118_1545.py @@ -0,0 +1,15 @@ +# Generated by Django 3.1.5 on 2024-11-18 15:45 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('research_procedures', '0006_merge_20241116_0248'), + ('research_procedures', '0004_merge_20241116_0232'), + ('research_procedures', '0004_merge_20241116_0303'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/scholarships/migrations/0003_auto_20241117_2324.py b/FusionIIIT/applications/scholarships/migrations/0003_auto_20241117_2324.py new file mode 100644 index 000000000..b3c25b650 --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0003_auto_20241117_2324.py @@ -0,0 +1,18 @@ +# Generated by Django 3.1.5 on 2024-11-17 23:24 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('scholarships', '0002_auto_20241115_1710'), + ] + + operations = [ + migrations.RenameField( + model_name='mcm', + old_name='marksheet', + new_name='Marksheet', + ), + ] diff --git a/FusionIIIT/applications/scholarships/migrations/0004_merge_20241118_1545.py b/FusionIIIT/applications/scholarships/migrations/0004_merge_20241118_1545.py new file mode 100644 index 000000000..51cb87daa --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0004_merge_20241118_1545.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-18 15:45 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('scholarships', '0003_auto_20241116_0306'), + ('scholarships', '0003_auto_20241117_2324'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/scholarships/urls.py b/FusionIIIT/applications/scholarships/urls.py index d32e65534..f3ee3cf28 100755 --- a/FusionIIIT/applications/scholarships/urls.py +++ b/FusionIIIT/applications/scholarships/urls.py @@ -35,7 +35,7 @@ url(r'directorgold_update/', DirectorGoldUpdateView.as_view(), name='director-gold-update'), url(r'proficiencydm_update/', ProficiencyDmUpdateView.as_view(), name='proficiency-dm-update'), url(r'proficiencydm_show/', ProficiencyDmRetrieveView.as_view(), name='proficiency-dm-update'), - path('award/', AwardAndScholarshipCreateView.as_view(), name='award-create'), # URL for creating a new award + path('award/', AwardAndScholarshipCreateView.as_view(), name='award-create'), # URL for convenor catalog path('scholarship-details/', ScholarshipDetailView.as_view(), name='scholarship-list'), path('director_gold_list/', DirectorGoldListView.as_view(), name='director_gold_list'), @@ -43,7 +43,7 @@ url(r'student_file_show/', StudentDetailView.as_view(), name='student-file-show'), path('director_silver_show/', DirectorSilverDetailView.as_view(), name='director_silver_detail'), path('director_gold_view/', DirectorGoldDetailView.as_view(), name='director_gold_detail'), - path('release', ReleaseCreateView.as_view(), name='release_create'), + path(r'release', ReleaseCreateView.as_view(), name='release_create'), url(r'student_file_show/', StudentDetailView.as_view(), name='student-file-show'), path('mcm/status-update/', McmStatusUpdateView.as_view(), name='mcm-status-update'), From 2cf35d7cfbc72494adc229ab9b15c211dd317d24 Mon Sep 17 00:00:00 2001 From: harshit Date: Tue, 19 Nov 2024 17:09:57 +0530 Subject: [PATCH 20/37] fixing some bugs --- .../migrations/0002_auto_20241016_1905.py | 40 ------------------- .../migrations/0002_auto_20241017_0040.py | 40 ------------------- .../migrations/0002_auto_20241018_0342.py | 40 ------------------- ...012_1459.py => 0002_auto_20241116_1949.py} | 2 +- .../migrations/0003_merge_20241023_1016.py | 15 ------- .../migrations/0003_merge_20241110_1253.py | 16 -------- .../migrations/0004_merge_20241115_1509.py | 14 ------- .../migrations/0005_merge_20241116_0303.py | 14 ------- ...115_1710.py => 0002_auto_20241116_1949.py} | 22 +++++----- .../migrations/0003_auto_20241116_0306.py | 18 --------- FusionIIIT/applications/scholarships/urls.py | 2 +- 11 files changed, 13 insertions(+), 210 deletions(-) delete mode 100644 FusionIIIT/applications/online_cms/migrations/0002_auto_20241016_1905.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0002_auto_20241017_0040.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0002_auto_20241018_0342.py rename FusionIIIT/applications/online_cms/migrations/{0002_auto_20241012_1459.py => 0002_auto_20241116_1949.py} (96%) delete mode 100644 FusionIIIT/applications/online_cms/migrations/0003_merge_20241023_1016.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0003_merge_20241110_1253.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0004_merge_20241115_1509.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0303.py rename FusionIIIT/applications/scholarships/migrations/{0002_auto_20241115_1710.py => 0002_auto_20241116_1949.py} (73%) delete mode 100644 FusionIIIT/applications/scholarships/migrations/0003_auto_20241116_0306.py diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241016_1905.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241016_1905.py deleted file mode 100644 index 90739623d..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241016_1905.py +++ /dev/null @@ -1,40 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-16 19:05 - -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('academic_information', '0001_initial'), - ('online_cms', '0001_initial'), - ] - - operations = [ - migrations.AddField( - model_name='attendance', - name='no_of_attendance', - field=models.IntegerField(default=1), - ), - migrations.AlterField( - model_name='attendance', - name='present', - field=models.IntegerField(default=0), - ), - migrations.AlterField( - model_name='gradingscheme', - name='type_of_evaluation', - field=models.CharField(max_length=100), - ), - migrations.CreateModel( - name='StudentEvaluation', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), - ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), - ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), - ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), - ], - ), - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241017_0040.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241017_0040.py deleted file mode 100644 index 1669cce6d..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241017_0040.py +++ /dev/null @@ -1,40 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-17 00:40 - -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('academic_information', '0001_initial'), - ('online_cms', '0001_initial'), - ] - - operations = [ - migrations.AddField( - model_name='attendance', - name='no_of_attendance', - field=models.IntegerField(default=1), - ), - migrations.AlterField( - model_name='attendance', - name='present', - field=models.IntegerField(default=0), - ), - migrations.AlterField( - model_name='gradingscheme', - name='type_of_evaluation', - field=models.CharField(max_length=100), - ), - migrations.CreateModel( - name='StudentEvaluation', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), - ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), - ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), - ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), - ], - ), - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241018_0342.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241018_0342.py deleted file mode 100644 index 3411068ae..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241018_0342.py +++ /dev/null @@ -1,40 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-18 03:42 - -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('academic_information', '0001_initial'), - ('online_cms', '0001_initial'), - ] - - operations = [ - migrations.AddField( - model_name='attendance', - name='no_of_attendance', - field=models.IntegerField(default=1), - ), - migrations.AlterField( - model_name='attendance', - name='present', - field=models.IntegerField(default=0), - ), - migrations.AlterField( - model_name='gradingscheme', - name='type_of_evaluation', - field=models.CharField(max_length=100), - ), - migrations.CreateModel( - name='StudentEvaluation', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), - ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), - ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), - ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), - ], - ), - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241012_1459.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241116_1949.py similarity index 96% rename from FusionIIIT/applications/online_cms/migrations/0002_auto_20241012_1459.py rename to FusionIIIT/applications/online_cms/migrations/0002_auto_20241116_1949.py index d689e8177..7925b3a46 100644 --- a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241012_1459.py +++ b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241116_1949.py @@ -1,4 +1,4 @@ -# Generated by Django 3.1.5 on 2024-10-12 14:59 +# Generated by Django 3.1.5 on 2024-11-16 19:49 from django.db import migrations, models import django.db.models.deletion diff --git a/FusionIIIT/applications/online_cms/migrations/0003_merge_20241023_1016.py b/FusionIIIT/applications/online_cms/migrations/0003_merge_20241023_1016.py deleted file mode 100644 index 6aa9527ed..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0003_merge_20241023_1016.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-23 10:16 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0002_auto_20241017_0040'), - ('online_cms', '0002_auto_20241016_1905'), - ('online_cms', '0002_auto_20241012_1459'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0003_merge_20241110_1253.py b/FusionIIIT/applications/online_cms/migrations/0003_merge_20241110_1253.py deleted file mode 100644 index 71e66ebb8..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0003_merge_20241110_1253.py +++ /dev/null @@ -1,16 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-10 12:53 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0002_auto_20241016_1905'), - ('online_cms', '0002_auto_20241012_1459'), - ('online_cms', '0002_auto_20241017_0040'), - ('online_cms', '0002_auto_20241018_0342'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0004_merge_20241115_1509.py b/FusionIIIT/applications/online_cms/migrations/0004_merge_20241115_1509.py deleted file mode 100644 index faea15c67..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0004_merge_20241115_1509.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-15 15:09 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0003_merge_20241023_1016'), - ('online_cms', '0002_auto_20241018_0342'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0303.py b/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0303.py deleted file mode 100644 index 81b842c6f..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0303.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-16 03:03 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0003_merge_20241110_1253'), - ('online_cms', '0004_merge_20241115_1509'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0002_auto_20241115_1710.py b/FusionIIIT/applications/scholarships/migrations/0002_auto_20241116_1949.py similarity index 73% rename from FusionIIIT/applications/scholarships/migrations/0002_auto_20241115_1710.py rename to FusionIIIT/applications/scholarships/migrations/0002_auto_20241116_1949.py index dc0bf8bb3..e69b5b7e9 100644 --- a/FusionIIIT/applications/scholarships/migrations/0002_auto_20241115_1710.py +++ b/FusionIIIT/applications/scholarships/migrations/0002_auto_20241116_1949.py @@ -1,4 +1,4 @@ -# Generated by Django 3.1.5 on 2024-11-15 17:10 +# Generated by Django 3.1.5 on 2024-11-16 19:49 from django.db import migrations, models @@ -25,55 +25,55 @@ class Migration(migrations.Migration): migrations.AddField( model_name='director_gold', name='Marksheet', - field=models.FileField(default='NA', upload_to=''), + field=models.FileField(default='', upload_to=''), preserve_default=False, ), migrations.AddField( model_name='director_silver', name='Marksheet', - field=models.FileField(default='NA', upload_to=''), + field=models.FileField(default='', upload_to=''), preserve_default=False, ), migrations.AddField( model_name='mcm', name='Aadhar_card', - field=models.FileField(default='NA', upload_to=''), + field=models.FileField(default='', upload_to=''), preserve_default=False, ), migrations.AddField( model_name='mcm', name='Affidavit', - field=models.FileField(default='NA', upload_to=''), + field=models.FileField(default='', upload_to=''), preserve_default=False, ), migrations.AddField( model_name='mcm', name='Bank_details', - field=models.FileField(default='NA', upload_to=''), + field=models.FileField(default='', upload_to=''), preserve_default=False, ), migrations.AddField( model_name='mcm', name='Fee_Receipt', - field=models.FileField(default='NA', upload_to=''), + field=models.FileField(default='', upload_to=''), preserve_default=False, ), migrations.AddField( model_name='mcm', - name='marksheet', - field=models.FileField(default='NA', upload_to=''), + name='Marksheet', + field=models.FileField(default='', upload_to=''), preserve_default=False, ), migrations.AddField( model_name='proficiency_dm', name='Marksheet', - field=models.FileField(default='NA', upload_to=''), + field=models.FileField(default='', upload_to=''), preserve_default=False, ), migrations.AlterField( model_name='mcm', name='income_certificate', - field=models.FileField(default='NA', upload_to=''), + field=models.FileField(default='', upload_to=''), preserve_default=False, ), ] diff --git a/FusionIIIT/applications/scholarships/migrations/0003_auto_20241116_0306.py b/FusionIIIT/applications/scholarships/migrations/0003_auto_20241116_0306.py deleted file mode 100644 index e4784dd40..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0003_auto_20241116_0306.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-16 03:06 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('scholarships', '0002_auto_20241115_1710'), - ] - - operations = [ - migrations.RenameField( - model_name='mcm', - old_name='marksheet', - new_name='Marksheet', - ), - ] diff --git a/FusionIIIT/applications/scholarships/urls.py b/FusionIIIT/applications/scholarships/urls.py index 61c37fe21..139f83719 100755 --- a/FusionIIIT/applications/scholarships/urls.py +++ b/FusionIIIT/applications/scholarships/urls.py @@ -42,5 +42,5 @@ url(r'student_file_show/', StudentDetailView.as_view(), name='student-file-show'), path('director_silver_show/', DirectorSilverDetailView.as_view(), name='director_silver_detail'), path('director_gold_view/', DirectorGoldDetailView.as_view(), name='director_gold_detail'), - path('release', ReleaseCreateView.as_view(), name='release_create'), + path(r'release', ReleaseCreateView.as_view(), name='release_create'), ] \ No newline at end of file From 5dbbbd876317118d366116f0158cf76b7ccc2533 Mon Sep 17 00:00:00 2001 From: harshit Date: Tue, 19 Nov 2024 20:47:55 +0530 Subject: [PATCH 21/37] mcm submission backend complete --- .../migrations/0008_merge_20241119_1829.py | 14 ++++++++ .../migrations/0009_merge_20241119_1829.py | 14 ++++++++ ...116_1949.py => 0002_auto_20241119_1830.py} | 2 +- .../migrations/0003_merge_20241107_1924.py | 15 --------- .../migrations/0004_merge_20241112_2008.py | 14 -------- .../migrations/0005_merge_20241116_0233.py | 14 -------- .../migrations/0005_merge_20241116_0248.py | 15 --------- .../migrations/0006_merge_20241118_1545.py | 15 --------- .../migrations/0006_merge_20241118_1914.py | 14 -------- .../migrations/0008_merge_20241119_1829.py | 14 ++++++++ .../applications/scholarships/api/views.py | 5 +++ .../migrations/0003_auto_20241117_2324.py | 18 ---------- .../migrations/0003_auto_20241119_1830.py | 33 +++++++++++++++++++ .../migrations/0004_merge_20241118_1545.py | 14 -------- 14 files changed, 81 insertions(+), 120 deletions(-) create mode 100644 FusionIIIT/applications/central_mess/migrations/0008_merge_20241119_1829.py create mode 100644 FusionIIIT/applications/globals/migrations/0009_merge_20241119_1829.py rename FusionIIIT/applications/online_cms/migrations/{0002_auto_20241116_1949.py => 0002_auto_20241119_1830.py} (96%) delete mode 100644 FusionIIIT/applications/online_cms/migrations/0003_merge_20241107_1924.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0004_merge_20241112_2008.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0233.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0248.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1545.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1914.py create mode 100644 FusionIIIT/applications/research_procedures/migrations/0008_merge_20241119_1829.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0003_auto_20241117_2324.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0003_auto_20241119_1830.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0004_merge_20241118_1545.py diff --git a/FusionIIIT/applications/central_mess/migrations/0008_merge_20241119_1829.py b/FusionIIIT/applications/central_mess/migrations/0008_merge_20241119_1829.py new file mode 100644 index 000000000..d9bc0d4fd --- /dev/null +++ b/FusionIIIT/applications/central_mess/migrations/0008_merge_20241119_1829.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-19 18:29 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('central_mess', '0007_merge_20241118_1914'), + ('central_mess', '0007_merge_20241118_1545'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/globals/migrations/0009_merge_20241119_1829.py b/FusionIIIT/applications/globals/migrations/0009_merge_20241119_1829.py new file mode 100644 index 000000000..5997f7f77 --- /dev/null +++ b/FusionIIIT/applications/globals/migrations/0009_merge_20241119_1829.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-19 18:29 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('globals', '0007_merge_20241118_1914'), + ('globals', '0008_merge_20241118_1545'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241116_1949.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241119_1830.py similarity index 96% rename from FusionIIIT/applications/online_cms/migrations/0002_auto_20241116_1949.py rename to FusionIIIT/applications/online_cms/migrations/0002_auto_20241119_1830.py index 7925b3a46..25f887455 100644 --- a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241116_1949.py +++ b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241119_1830.py @@ -1,4 +1,4 @@ -# Generated by Django 3.1.5 on 2024-11-16 19:49 +# Generated by Django 3.1.5 on 2024-11-19 18:30 from django.db import migrations, models import django.db.models.deletion diff --git a/FusionIIIT/applications/online_cms/migrations/0003_merge_20241107_1924.py b/FusionIIIT/applications/online_cms/migrations/0003_merge_20241107_1924.py deleted file mode 100644 index 07560292a..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0003_merge_20241107_1924.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-07 19:24 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0002_auto_20241016_1905'), - ('online_cms', '0002_auto_20241017_0040'), - ('online_cms', '0002_auto_20241012_1459'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0004_merge_20241112_2008.py b/FusionIIIT/applications/online_cms/migrations/0004_merge_20241112_2008.py deleted file mode 100644 index b2b96c455..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0004_merge_20241112_2008.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-12 20:08 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0002_auto_20241018_0342'), - ('online_cms', '0003_merge_20241107_1924'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0233.py b/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0233.py deleted file mode 100644 index fcfdaf082..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0233.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-16 02:33 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0003_merge_20241110_1253'), - ('online_cms', '0004_merge_20241115_1509'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0248.py b/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0248.py deleted file mode 100644 index 647cb63f2..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0248.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-16 02:48 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0003_merge_20241110_1253'), - ('online_cms', '0004_merge_20241112_2008'), - ('online_cms', '0004_merge_20241115_1509'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1545.py b/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1545.py deleted file mode 100644 index cc2d9550a..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1545.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 15:45 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0005_merge_20241116_0303'), - ('online_cms', '0005_merge_20241116_0233'), - ('online_cms', '0005_merge_20241116_0248'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1914.py b/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1914.py deleted file mode 100644 index 408d4ddfd..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1914.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 19:14 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0005_merge_20241116_0303'), - ('online_cms', '0005_merge_20241116_0233'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0008_merge_20241119_1829.py b/FusionIIIT/applications/research_procedures/migrations/0008_merge_20241119_1829.py new file mode 100644 index 000000000..582af441e --- /dev/null +++ b/FusionIIIT/applications/research_procedures/migrations/0008_merge_20241119_1829.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-19 18:29 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('research_procedures', '0007_merge_20241118_1545'), + ('research_procedures', '0005_merge_20241118_1914'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index ead0ff3db..4f70adf20 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -9,11 +9,13 @@ from rest_framework import viewsets from applications.scholarships.api.serializers import PreviousWinnerSerializer,AwardAndScholarshipSerializer,McmSerializer,NotionalPrizeSerializer,DirectorGoldSerializer,DirectorSilverSerializer,ProficiencyDmSerializer,ReleaseSerializer,McmStatusUpdateSerializer,DirectorSilverDecisionSerializer from django.shortcuts import get_object_or_404 +import datetime #This api is for invite application class ReleaseCreateView(APIView): def post(self, request): + serializer = ReleaseSerializer(data=request.data) if serializer.is_valid(): serializer.save() # Save the data to the database @@ -99,6 +101,9 @@ def post(self, request, *args, **kwargs): class McmUpdateView(APIView): def post(self, request): + + request.data['student']=request.user.username + request.data['date'] = datetime.date.today() serializer = McmSerializer(data=request.data) if serializer.is_valid(): mcm_instance = serializer.save() diff --git a/FusionIIIT/applications/scholarships/migrations/0003_auto_20241117_2324.py b/FusionIIIT/applications/scholarships/migrations/0003_auto_20241117_2324.py deleted file mode 100644 index b3c25b650..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0003_auto_20241117_2324.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-17 23:24 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('scholarships', '0002_auto_20241115_1710'), - ] - - operations = [ - migrations.RenameField( - model_name='mcm', - old_name='marksheet', - new_name='Marksheet', - ), - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0003_auto_20241119_1830.py b/FusionIIIT/applications/scholarships/migrations/0003_auto_20241119_1830.py new file mode 100644 index 000000000..c36ac06e8 --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0003_auto_20241119_1830.py @@ -0,0 +1,33 @@ +# Generated by Django 3.1.5 on 2024-11-19 18:30 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('scholarships', '0002_auto_20241116_1949'), + ] + + operations = [ + migrations.AlterField( + model_name='director_gold', + name='status', + field=models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT'), ('ACCEPT', 'Accept'), ('REJECT', 'Reject'), ('UNDER_REVIEW', 'Under Review')], default='INCOMPLETE', max_length=20), + ), + migrations.AlterField( + model_name='director_silver', + name='status', + field=models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT'), ('ACCEPT', 'Accept'), ('REJECT', 'Reject'), ('UNDER_REVIEW', 'Under Review')], default='INCOMPLETE', max_length=20), + ), + migrations.AlterField( + model_name='mcm', + name='status', + field=models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT'), ('ACCEPT', 'Accept'), ('REJECT', 'Reject'), ('UNDER_REVIEW', 'Under Review')], default='INCOMPLETE', max_length=20), + ), + migrations.AlterField( + model_name='proficiency_dm', + name='status', + field=models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT'), ('ACCEPT', 'Accept'), ('REJECT', 'Reject'), ('UNDER_REVIEW', 'Under Review')], default='INCOMPLETE', max_length=20), + ), + ] diff --git a/FusionIIIT/applications/scholarships/migrations/0004_merge_20241118_1545.py b/FusionIIIT/applications/scholarships/migrations/0004_merge_20241118_1545.py deleted file mode 100644 index 51cb87daa..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0004_merge_20241118_1545.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 15:45 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('scholarships', '0003_auto_20241116_0306'), - ('scholarships', '0003_auto_20241117_2324'), - ] - - operations = [ - ] From 8857076f9d3dff88418ecc8bcf47634877a00516 Mon Sep 17 00:00:00 2001 From: harshit Date: Tue, 19 Nov 2024 20:53:03 +0530 Subject: [PATCH 22/37] mcm api complete --- FusionIIIT/applications/scholarships/api/views.py | 1 + 1 file changed, 1 insertion(+) diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index 4f70adf20..2293b114e 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -146,6 +146,7 @@ def post(self, request): class DirectorSilverUpdateView(APIView): + def post(self, request): serializer = DirectorSilverSerializer(data=request.data) if serializer.is_valid(): From 2e4dc41281be54b3c6007233b819ffff41640725 Mon Sep 17 00:00:00 2001 From: Ms Kumkum Kadhala <22bcs165@iiitdmj.ac.in> Date: Wed, 20 Nov 2024 12:35:17 +0530 Subject: [PATCH 23/37] py _1829.py 19_1830.py -> FusionIIIT/applications/online_cms/migrations/0002_auto_20241116_1949.py 107_1924.py 112_2008.py 116_0233.py 116_0248.py 118_1545.py 118_1914.py rge_20241119_1829.py 1117_2324.py 1119_1830.py 41118_1545.py 1118_1917.py 1118_1921.py y _2044.py y y --- .../migrations/0008_merge_20241119_1829.py | 14 -------- .../migrations/0009_merge_20241119_1829.py | 14 -------- ...119_1830.py => 0002_auto_20241116_1949.py} | 2 +- .../migrations/0003_merge_20241107_1924.py | 15 +++++++++ .../migrations/0004_merge_20241112_2008.py | 14 ++++++++ .../migrations/0005_merge_20241116_0233.py | 14 ++++++++ .../migrations/0005_merge_20241116_0248.py | 15 +++++++++ .../migrations/0006_merge_20241118_1545.py | 15 +++++++++ .../migrations/0006_merge_20241118_1914.py | 14 ++++++++ .../migrations/0008_merge_20241119_1829.py | 14 -------- .../applications/scholarships/api/views.py | 6 ---- .../migrations/0003_auto_20241117_2324.py | 18 ++++++++++ .../migrations/0003_auto_20241119_1830.py | 33 ------------------- .../migrations/0004_merge_20241118_1545.py | 14 ++++++++ 14 files changed, 120 insertions(+), 82 deletions(-) delete mode 100644 FusionIIIT/applications/central_mess/migrations/0008_merge_20241119_1829.py delete mode 100644 FusionIIIT/applications/globals/migrations/0009_merge_20241119_1829.py rename FusionIIIT/applications/online_cms/migrations/{0002_auto_20241119_1830.py => 0002_auto_20241116_1949.py} (96%) create mode 100644 FusionIIIT/applications/online_cms/migrations/0003_merge_20241107_1924.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0004_merge_20241112_2008.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0233.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0248.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1545.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1914.py delete mode 100644 FusionIIIT/applications/research_procedures/migrations/0008_merge_20241119_1829.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0003_auto_20241117_2324.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0003_auto_20241119_1830.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0004_merge_20241118_1545.py diff --git a/FusionIIIT/applications/central_mess/migrations/0008_merge_20241119_1829.py b/FusionIIIT/applications/central_mess/migrations/0008_merge_20241119_1829.py deleted file mode 100644 index d9bc0d4fd..000000000 --- a/FusionIIIT/applications/central_mess/migrations/0008_merge_20241119_1829.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-19 18:29 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('central_mess', '0007_merge_20241118_1914'), - ('central_mess', '0007_merge_20241118_1545'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/globals/migrations/0009_merge_20241119_1829.py b/FusionIIIT/applications/globals/migrations/0009_merge_20241119_1829.py deleted file mode 100644 index 5997f7f77..000000000 --- a/FusionIIIT/applications/globals/migrations/0009_merge_20241119_1829.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-19 18:29 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('globals', '0007_merge_20241118_1914'), - ('globals', '0008_merge_20241118_1545'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241119_1830.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241116_1949.py similarity index 96% rename from FusionIIIT/applications/online_cms/migrations/0002_auto_20241119_1830.py rename to FusionIIIT/applications/online_cms/migrations/0002_auto_20241116_1949.py index 25f887455..7925b3a46 100644 --- a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241119_1830.py +++ b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241116_1949.py @@ -1,4 +1,4 @@ -# Generated by Django 3.1.5 on 2024-11-19 18:30 +# Generated by Django 3.1.5 on 2024-11-16 19:49 from django.db import migrations, models import django.db.models.deletion diff --git a/FusionIIIT/applications/online_cms/migrations/0003_merge_20241107_1924.py b/FusionIIIT/applications/online_cms/migrations/0003_merge_20241107_1924.py new file mode 100644 index 000000000..07560292a --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0003_merge_20241107_1924.py @@ -0,0 +1,15 @@ +# Generated by Django 3.1.5 on 2024-11-07 19:24 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0002_auto_20241016_1905'), + ('online_cms', '0002_auto_20241017_0040'), + ('online_cms', '0002_auto_20241012_1459'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0004_merge_20241112_2008.py b/FusionIIIT/applications/online_cms/migrations/0004_merge_20241112_2008.py new file mode 100644 index 000000000..b2b96c455 --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0004_merge_20241112_2008.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-12 20:08 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0002_auto_20241018_0342'), + ('online_cms', '0003_merge_20241107_1924'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0233.py b/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0233.py new file mode 100644 index 000000000..fcfdaf082 --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0233.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-16 02:33 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0003_merge_20241110_1253'), + ('online_cms', '0004_merge_20241115_1509'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0248.py b/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0248.py new file mode 100644 index 000000000..647cb63f2 --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0248.py @@ -0,0 +1,15 @@ +# Generated by Django 3.1.5 on 2024-11-16 02:48 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0003_merge_20241110_1253'), + ('online_cms', '0004_merge_20241112_2008'), + ('online_cms', '0004_merge_20241115_1509'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1545.py b/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1545.py new file mode 100644 index 000000000..cc2d9550a --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1545.py @@ -0,0 +1,15 @@ +# Generated by Django 3.1.5 on 2024-11-18 15:45 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0005_merge_20241116_0303'), + ('online_cms', '0005_merge_20241116_0233'), + ('online_cms', '0005_merge_20241116_0248'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1914.py b/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1914.py new file mode 100644 index 000000000..408d4ddfd --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1914.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-18 19:14 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0005_merge_20241116_0303'), + ('online_cms', '0005_merge_20241116_0233'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0008_merge_20241119_1829.py b/FusionIIIT/applications/research_procedures/migrations/0008_merge_20241119_1829.py deleted file mode 100644 index 582af441e..000000000 --- a/FusionIIIT/applications/research_procedures/migrations/0008_merge_20241119_1829.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-19 18:29 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('research_procedures', '0007_merge_20241118_1545'), - ('research_procedures', '0005_merge_20241118_1914'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index e3ee7af80..0467e4853 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -12,12 +12,10 @@ from rest_framework import viewsets from applications.scholarships.api.serializers import PreviousWinnerSerializer,AwardAndScholarshipSerializer,McmSerializer,NotionalPrizeSerializer,DirectorGoldSerializer,DirectorSilverSerializer,ProficiencyDmSerializer,ReleaseSerializer from django.shortcuts import get_object_or_404 -import datetime #This api is for invite application class ReleaseCreateView(APIView): def post(self, request): - serializer = ReleaseSerializer(data=request.data) if serializer.is_valid(): serializer.save() # Save the data to the database @@ -102,9 +100,6 @@ def post(self, request, *args, **kwargs): class McmUpdateView(APIView): def post(self, request): - - request.data['student']=request.user.username - request.data['date'] = datetime.date.today() serializer = McmSerializer(data=request.data) if serializer.is_valid(): mcm_instance = serializer.save() @@ -147,7 +142,6 @@ def post(self, request): class DirectorSilverUpdateView(APIView): - def post(self, request): serializer = DirectorSilverSerializer(data=request.data) if serializer.is_valid(): diff --git a/FusionIIIT/applications/scholarships/migrations/0003_auto_20241117_2324.py b/FusionIIIT/applications/scholarships/migrations/0003_auto_20241117_2324.py new file mode 100644 index 000000000..b3c25b650 --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0003_auto_20241117_2324.py @@ -0,0 +1,18 @@ +# Generated by Django 3.1.5 on 2024-11-17 23:24 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('scholarships', '0002_auto_20241115_1710'), + ] + + operations = [ + migrations.RenameField( + model_name='mcm', + old_name='marksheet', + new_name='Marksheet', + ), + ] diff --git a/FusionIIIT/applications/scholarships/migrations/0003_auto_20241119_1830.py b/FusionIIIT/applications/scholarships/migrations/0003_auto_20241119_1830.py deleted file mode 100644 index c36ac06e8..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0003_auto_20241119_1830.py +++ /dev/null @@ -1,33 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-19 18:30 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('scholarships', '0002_auto_20241116_1949'), - ] - - operations = [ - migrations.AlterField( - model_name='director_gold', - name='status', - field=models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT'), ('ACCEPT', 'Accept'), ('REJECT', 'Reject'), ('UNDER_REVIEW', 'Under Review')], default='INCOMPLETE', max_length=20), - ), - migrations.AlterField( - model_name='director_silver', - name='status', - field=models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT'), ('ACCEPT', 'Accept'), ('REJECT', 'Reject'), ('UNDER_REVIEW', 'Under Review')], default='INCOMPLETE', max_length=20), - ), - migrations.AlterField( - model_name='mcm', - name='status', - field=models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT'), ('ACCEPT', 'Accept'), ('REJECT', 'Reject'), ('UNDER_REVIEW', 'Under Review')], default='INCOMPLETE', max_length=20), - ), - migrations.AlterField( - model_name='proficiency_dm', - name='status', - field=models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT'), ('ACCEPT', 'Accept'), ('REJECT', 'Reject'), ('UNDER_REVIEW', 'Under Review')], default='INCOMPLETE', max_length=20), - ), - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0004_merge_20241118_1545.py b/FusionIIIT/applications/scholarships/migrations/0004_merge_20241118_1545.py new file mode 100644 index 000000000..51cb87daa --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0004_merge_20241118_1545.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-18 15:45 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('scholarships', '0003_auto_20241116_0306'), + ('scholarships', '0003_auto_20241117_2324'), + ] + + operations = [ + ] From a09645bff8f1f01be804658de822a70720982c98 Mon Sep 17 00:00:00 2001 From: Harsh Date: Thu, 21 Nov 2024 00:01:58 +0530 Subject: [PATCH 24/37] some bugs of convenor api's are solved --- FusionIIIT/applications/scholarships/api/views.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index 0467e4853..cb5a0b553 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -225,12 +225,12 @@ def get(self, request): #This api is for showing the all the documnet to the convenor or assistant submitted by the student in browse application class StudentDetailView(APIView): def post(self, request): - student_id = request.data.get('student') + student_id = request.data.get('student_id') if not student_id: return Response({"error": "Student ID is required."}, status=status.HTTP_400_BAD_REQUEST) try: - mcm_entry = Mcm.objects.get(student__id=student_id) + mcm_entry = Mcm.objects.get(student_id=student_id) except Mcm.DoesNotExist: return Response({"error": "No record found for the given student ID."}, status=status.HTTP_404_NOT_FOUND) @@ -240,7 +240,7 @@ def post(self, request): #This api is for showing the list of student who has applied for director silver in browse application in convenor and assistant class DirectorSilverDetailView(APIView): def post(self, request): - student_id = request.data.get('student') + student_id = request.data.get('student_id') if not student_id: return Response({"error": "Student ID is required."}, status=status.HTTP_400_BAD_REQUEST) @@ -257,7 +257,7 @@ def post(self, request): #This api is for showing the list of student who has applied for director gold in browse application in convenor and assistant class DirectorGoldDetailView(APIView): def post(self, request): - student_id = request.data.get('student') + student_id = request.data.get('student_id') if not student_id: return Response({"error": "Student ID is required."}, status=status.HTTP_400_BAD_REQUEST) From 412639bb27787d24b3f03b2e5c2731aef2955a79 Mon Sep 17 00:00:00 2001 From: Ms Kumkum Kadhala <22bcs165@iiitdmj.ac.in> Date: Tue, 14 Jan 2025 15:26:13 +0530 Subject: [PATCH 25/37] migration files --- .../migrations/0002_auto_20250107_1408.py | 38 +++ .../migrations/0008_merge_20241118_2044.py | 14 ++ .../eis/migrations/0002_auto_20250107_1408.py | 53 ++++ .../migrations/0009_merge_20241118_2045.py | 14 ++ .../migrations/0002_auto_20241012_1459.py | 40 +++ .../migrations/0002_auto_20241016_1905.py | 40 +++ .../migrations/0002_auto_20241017_0040.py | 40 +++ .../migrations/0002_auto_20241018_0342.py | 40 +++ .../migrations/0002_auto_20241116_1949.py | 10 +- .../migrations/0003_merge_20241023_1016.py | 15 ++ .../migrations/0003_merge_20241110_1253.py | 16 ++ .../migrations/0004_merge_20241115_1509.py | 14 ++ .../migrations/0005_merge_20241116_0303.py | 14 ++ .../migrations/0007_merge_20241118_2045.py | 14 ++ .../migrations/0008_merge_20241120_1733.py | 14 ++ .../migrations/0002_auto_20250107_1408.py | 23 ++ .../migrations/0008_merge_20241118_2044.py | 14 ++ .../scholarships/api/serializers.py | 6 + .../applications/scholarships/api/views.py | 9 +- .../scholarships/migrations/0001_initial.py | 233 ------------------ .../migrations/0002_auto_20241012_1459.py | 40 +++ .../migrations/0002_auto_20241016_1905.py | 40 +++ .../migrations/0002_auto_20241017_0040.py | 40 +++ .../migrations/0002_auto_20241018_0342.py | 40 +++ .../migrations/0002_auto_20241116_1949.py | 79 ------ .../migrations/0003_auto_20241117_2324.py | 18 -- .../migrations/0003_merge_20241023_1016.py | 15 ++ .../migrations/0003_merge_20241107_1924.py | 15 ++ .../migrations/0003_merge_20241110_1253.py | 16 ++ .../migrations/0004_auto_20241118_1917.py | 23 -- .../migrations/0004_merge_20241112_2008.py | 14 ++ .../migrations/0004_merge_20241115_1509.py | 14 ++ .../migrations/0005_auto_20241118_1918.py | 22 -- .../migrations/0005_merge_20241116_0233.py | 14 ++ .../migrations/0005_merge_20241116_0248.py | 15 ++ .../migrations/0005_merge_20241116_0303.py | 14 ++ .../migrations/0006_auto_20241118_1921.py | 18 -- ...18_1545.py => 0006_merge_20241118_1545.py} | 5 +- .../migrations/0006_merge_20241118_1914.py | 14 ++ .../migrations/0007_auto_20241118_1921.py | 18 -- .../migrations/0008_auto_20241118_1945.py | 18 -- .../migrations/0009_auto_20241118_1948.py | 18 -- .../scholarships/migrations/__init__.py | 0 .../applications/scholarships/models.py | 18 +- FusionIIIT/applications/scholarships/views.py | 12 +- FusionIIIT/manage.py | 1 + FusionIIIT/package.json | 5 + 47 files changed, 735 insertions(+), 472 deletions(-) create mode 100644 FusionIIIT/applications/academic_procedures/migrations/0002_auto_20250107_1408.py create mode 100644 FusionIIIT/applications/central_mess/migrations/0008_merge_20241118_2044.py create mode 100644 FusionIIIT/applications/eis/migrations/0002_auto_20250107_1408.py create mode 100644 FusionIIIT/applications/globals/migrations/0009_merge_20241118_2045.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0002_auto_20241012_1459.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0002_auto_20241016_1905.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0002_auto_20241017_0040.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0002_auto_20241018_0342.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0003_merge_20241023_1016.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0003_merge_20241110_1253.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0004_merge_20241115_1509.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0303.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0007_merge_20241118_2045.py create mode 100644 FusionIIIT/applications/online_cms/migrations/0008_merge_20241120_1733.py create mode 100644 FusionIIIT/applications/programme_curriculum/migrations/0002_auto_20250107_1408.py create mode 100644 FusionIIIT/applications/research_procedures/migrations/0008_merge_20241118_2044.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0001_initial.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0002_auto_20241012_1459.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0002_auto_20241016_1905.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0002_auto_20241017_0040.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0002_auto_20241018_0342.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0002_auto_20241116_1949.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0003_auto_20241117_2324.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0003_merge_20241023_1016.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0003_merge_20241107_1924.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0003_merge_20241110_1253.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0004_auto_20241118_1917.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0004_merge_20241112_2008.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0004_merge_20241115_1509.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0005_auto_20241118_1918.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0233.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0248.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0303.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0006_auto_20241118_1921.py rename FusionIIIT/applications/scholarships/migrations/{0004_merge_20241118_1545.py => 0006_merge_20241118_1545.py} (53%) create mode 100644 FusionIIIT/applications/scholarships/migrations/0006_merge_20241118_1914.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0007_auto_20241118_1921.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0008_auto_20241118_1945.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0009_auto_20241118_1948.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/__init__.py create mode 100644 FusionIIIT/package.json diff --git a/FusionIIIT/applications/academic_procedures/migrations/0002_auto_20250107_1408.py b/FusionIIIT/applications/academic_procedures/migrations/0002_auto_20250107_1408.py new file mode 100644 index 000000000..8d8a4a876 --- /dev/null +++ b/FusionIIIT/applications/academic_procedures/migrations/0002_auto_20250107_1408.py @@ -0,0 +1,38 @@ +# Generated by Django 3.1.5 on 2025-01-07 14:08 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('academic_procedures', '0001_initial'), + ] + + operations = [ + migrations.AlterField( + model_name='assistantshipclaim', + name='year', + field=models.IntegerField(choices=[(2025, 2025), (2024, 2024)]), + ), + migrations.AlterField( + model_name='course_registration', + name='working_year', + field=models.IntegerField(blank=True, choices=[(2025, 2025), (2024, 2024)], null=True), + ), + migrations.AlterField( + model_name='finalregistrations', + name='batch', + field=models.IntegerField(default=2025), + ), + migrations.AlterField( + model_name='messdue', + name='year', + field=models.IntegerField(choices=[(2025, 2025), (2024, 2024)]), + ), + migrations.AlterField( + model_name='register', + name='year', + field=models.IntegerField(default=2025), + ), + ] diff --git a/FusionIIIT/applications/central_mess/migrations/0008_merge_20241118_2044.py b/FusionIIIT/applications/central_mess/migrations/0008_merge_20241118_2044.py new file mode 100644 index 000000000..421b138b1 --- /dev/null +++ b/FusionIIIT/applications/central_mess/migrations/0008_merge_20241118_2044.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-18 20:44 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('central_mess', '0007_merge_20241118_1914'), + ('central_mess', '0007_merge_20241118_1545'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/eis/migrations/0002_auto_20250107_1408.py b/FusionIIIT/applications/eis/migrations/0002_auto_20250107_1408.py new file mode 100644 index 000000000..1526ffd5e --- /dev/null +++ b/FusionIIIT/applications/eis/migrations/0002_auto_20250107_1408.py @@ -0,0 +1,53 @@ +# Generated by Django 3.1.5 on 2025-01-07 14:08 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('eis', '0001_initial'), + ] + + operations = [ + migrations.AlterField( + model_name='emp_achievement', + name='a_year', + field=models.IntegerField(blank=True, choices=[(1995, 1995), (1996, 1996), (1997, 1997), (1998, 1998), (1999, 1999), (2000, 2000), (2001, 2001), (2002, 2002), (2003, 2003), (2004, 2004), (2005, 2005), (2006, 2006), (2007, 2007), (2008, 2008), (2009, 2009), (2010, 2010), (2011, 2011), (2012, 2012), (2013, 2013), (2014, 2014), (2015, 2015), (2016, 2016), (2017, 2017), (2018, 2018), (2019, 2019), (2020, 2020), (2021, 2021), (2022, 2022), (2023, 2023), (2024, 2024), (2025, 2025)], null=True, verbose_name='year'), + ), + migrations.AlterField( + model_name='emp_confrence_organised', + name='k_year', + field=models.IntegerField(blank=True, choices=[(1995, 1995), (1996, 1996), (1997, 1997), (1998, 1998), (1999, 1999), (2000, 2000), (2001, 2001), (2002, 2002), (2003, 2003), (2004, 2004), (2005, 2005), (2006, 2006), (2007, 2007), (2008, 2008), (2009, 2009), (2010, 2010), (2011, 2011), (2012, 2012), (2013, 2013), (2014, 2014), (2015, 2015), (2016, 2016), (2017, 2017), (2018, 2018), (2019, 2019), (2020, 2020), (2021, 2021), (2022, 2022), (2023, 2023), (2024, 2024), (2025, 2025)], null=True, verbose_name='year'), + ), + migrations.AlterField( + model_name='emp_expert_lectures', + name='l_year', + field=models.IntegerField(blank=True, choices=[(1995, 1995), (1996, 1996), (1997, 1997), (1998, 1998), (1999, 1999), (2000, 2000), (2001, 2001), (2002, 2002), (2003, 2003), (2004, 2004), (2005, 2005), (2006, 2006), (2007, 2007), (2008, 2008), (2009, 2009), (2010, 2010), (2011, 2011), (2012, 2012), (2013, 2013), (2014, 2014), (2015, 2015), (2016, 2016), (2017, 2017), (2018, 2018), (2019, 2019), (2020, 2020), (2021, 2021), (2022, 2022), (2023, 2023), (2024, 2024), (2025, 2025)], null=True, verbose_name='year'), + ), + migrations.AlterField( + model_name='emp_keynote_address', + name='k_year', + field=models.IntegerField(blank=True, choices=[(1995, 1995), (1996, 1996), (1997, 1997), (1998, 1998), (1999, 1999), (2000, 2000), (2001, 2001), (2002, 2002), (2003, 2003), (2004, 2004), (2005, 2005), (2006, 2006), (2007, 2007), (2008, 2008), (2009, 2009), (2010, 2010), (2011, 2011), (2012, 2012), (2013, 2013), (2014, 2014), (2015, 2015), (2016, 2016), (2017, 2017), (2018, 2018), (2019, 2019), (2020, 2020), (2021, 2021), (2022, 2022), (2023, 2023), (2024, 2024), (2025, 2025)], null=True, verbose_name='year'), + ), + migrations.AlterField( + model_name='emp_mtechphd_thesis', + name='s_year', + field=models.IntegerField(blank=True, choices=[(1995, 1995), (1996, 1996), (1997, 1997), (1998, 1998), (1999, 1999), (2000, 2000), (2001, 2001), (2002, 2002), (2003, 2003), (2004, 2004), (2005, 2005), (2006, 2006), (2007, 2007), (2008, 2008), (2009, 2009), (2010, 2010), (2011, 2011), (2012, 2012), (2013, 2013), (2014, 2014), (2015, 2015), (2016, 2016), (2017, 2017), (2018, 2018), (2019, 2019), (2020, 2020), (2021, 2021), (2022, 2022), (2023, 2023), (2024, 2024), (2025, 2025)], null=True, verbose_name='year'), + ), + migrations.AlterField( + model_name='emp_patents', + name='p_year', + field=models.IntegerField(blank=True, choices=[(1995, 1995), (1996, 1996), (1997, 1997), (1998, 1998), (1999, 1999), (2000, 2000), (2001, 2001), (2002, 2002), (2003, 2003), (2004, 2004), (2005, 2005), (2006, 2006), (2007, 2007), (2008, 2008), (2009, 2009), (2010, 2010), (2011, 2011), (2012, 2012), (2013, 2013), (2014, 2014), (2015, 2015), (2016, 2016), (2017, 2017), (2018, 2018), (2019, 2019), (2020, 2020), (2021, 2021), (2022, 2022), (2023, 2023), (2024, 2024), (2025, 2025)], null=True, verbose_name='year'), + ), + migrations.AlterField( + model_name='emp_published_books', + name='pyear', + field=models.IntegerField(blank=True, choices=[(1995, 1995), (1996, 1996), (1997, 1997), (1998, 1998), (1999, 1999), (2000, 2000), (2001, 2001), (2002, 2002), (2003, 2003), (2004, 2004), (2005, 2005), (2006, 2006), (2007, 2007), (2008, 2008), (2009, 2009), (2010, 2010), (2011, 2011), (2012, 2012), (2013, 2013), (2014, 2014), (2015, 2015), (2016, 2016), (2017, 2017), (2018, 2018), (2019, 2019), (2020, 2020), (2021, 2021), (2022, 2022), (2023, 2023), (2024, 2024), (2025, 2025)], null=True, verbose_name='year'), + ), + migrations.AlterField( + model_name='emp_research_papers', + name='year', + field=models.CharField(blank=True, choices=[(1995, 1995), (1996, 1996), (1997, 1997), (1998, 1998), (1999, 1999), (2000, 2000), (2001, 2001), (2002, 2002), (2003, 2003), (2004, 2004), (2005, 2005), (2006, 2006), (2007, 2007), (2008, 2008), (2009, 2009), (2010, 2010), (2011, 2011), (2012, 2012), (2013, 2013), (2014, 2014), (2015, 2015), (2016, 2016), (2017, 2017), (2018, 2018), (2019, 2019), (2020, 2020), (2021, 2021), (2022, 2022), (2023, 2023), (2024, 2024), (2025, 2025)], max_length=10, null=True), + ), + ] diff --git a/FusionIIIT/applications/globals/migrations/0009_merge_20241118_2045.py b/FusionIIIT/applications/globals/migrations/0009_merge_20241118_2045.py new file mode 100644 index 000000000..868bd59b8 --- /dev/null +++ b/FusionIIIT/applications/globals/migrations/0009_merge_20241118_2045.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-18 20:45 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('globals', '0007_merge_20241118_1914'), + ('globals', '0008_merge_20241118_1545'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241012_1459.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241012_1459.py new file mode 100644 index 000000000..d689e8177 --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241012_1459.py @@ -0,0 +1,40 @@ +# Generated by Django 3.1.5 on 2024-10-12 14:59 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('academic_information', '0001_initial'), + ('online_cms', '0001_initial'), + ] + + operations = [ + migrations.AddField( + model_name='attendance', + name='no_of_attendance', + field=models.IntegerField(default=1), + ), + migrations.AlterField( + model_name='attendance', + name='present', + field=models.IntegerField(default=0), + ), + migrations.AlterField( + model_name='gradingscheme', + name='type_of_evaluation', + field=models.CharField(max_length=100), + ), + migrations.CreateModel( + name='StudentEvaluation', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), + ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), + ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), + ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), + ], + ), + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241016_1905.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241016_1905.py new file mode 100644 index 000000000..90739623d --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241016_1905.py @@ -0,0 +1,40 @@ +# Generated by Django 3.1.5 on 2024-10-16 19:05 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('academic_information', '0001_initial'), + ('online_cms', '0001_initial'), + ] + + operations = [ + migrations.AddField( + model_name='attendance', + name='no_of_attendance', + field=models.IntegerField(default=1), + ), + migrations.AlterField( + model_name='attendance', + name='present', + field=models.IntegerField(default=0), + ), + migrations.AlterField( + model_name='gradingscheme', + name='type_of_evaluation', + field=models.CharField(max_length=100), + ), + migrations.CreateModel( + name='StudentEvaluation', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), + ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), + ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), + ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), + ], + ), + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241017_0040.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241017_0040.py new file mode 100644 index 000000000..1669cce6d --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241017_0040.py @@ -0,0 +1,40 @@ +# Generated by Django 3.1.5 on 2024-10-17 00:40 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('academic_information', '0001_initial'), + ('online_cms', '0001_initial'), + ] + + operations = [ + migrations.AddField( + model_name='attendance', + name='no_of_attendance', + field=models.IntegerField(default=1), + ), + migrations.AlterField( + model_name='attendance', + name='present', + field=models.IntegerField(default=0), + ), + migrations.AlterField( + model_name='gradingscheme', + name='type_of_evaluation', + field=models.CharField(max_length=100), + ), + migrations.CreateModel( + name='StudentEvaluation', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), + ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), + ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), + ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), + ], + ), + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241018_0342.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241018_0342.py new file mode 100644 index 000000000..3411068ae --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241018_0342.py @@ -0,0 +1,40 @@ +# Generated by Django 3.1.5 on 2024-10-18 03:42 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('academic_information', '0001_initial'), + ('online_cms', '0001_initial'), + ] + + operations = [ + migrations.AddField( + model_name='attendance', + name='no_of_attendance', + field=models.IntegerField(default=1), + ), + migrations.AlterField( + model_name='attendance', + name='present', + field=models.IntegerField(default=0), + ), + migrations.AlterField( + model_name='gradingscheme', + name='type_of_evaluation', + field=models.CharField(max_length=100), + ), + migrations.CreateModel( + name='StudentEvaluation', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), + ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), + ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), + ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), + ], + ), + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241116_1949.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241116_1949.py index 7925b3a46..9c8f22871 100644 --- a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241116_1949.py +++ b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241116_1949.py @@ -12,11 +12,11 @@ class Migration(migrations.Migration): ] operations = [ - migrations.AddField( - model_name='attendance', - name='no_of_attendance', - field=models.IntegerField(default=1), - ), + # migrations.AddField( + # model_name='attendance', + # name='no_of_attendance', + # field=models.IntegerField(default=1), + # ), migrations.AlterField( model_name='attendance', name='present', diff --git a/FusionIIIT/applications/online_cms/migrations/0003_merge_20241023_1016.py b/FusionIIIT/applications/online_cms/migrations/0003_merge_20241023_1016.py new file mode 100644 index 000000000..6aa9527ed --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0003_merge_20241023_1016.py @@ -0,0 +1,15 @@ +# Generated by Django 3.1.5 on 2024-10-23 10:16 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0002_auto_20241017_0040'), + ('online_cms', '0002_auto_20241016_1905'), + ('online_cms', '0002_auto_20241012_1459'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0003_merge_20241110_1253.py b/FusionIIIT/applications/online_cms/migrations/0003_merge_20241110_1253.py new file mode 100644 index 000000000..71e66ebb8 --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0003_merge_20241110_1253.py @@ -0,0 +1,16 @@ +# Generated by Django 3.1.5 on 2024-11-10 12:53 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0002_auto_20241016_1905'), + ('online_cms', '0002_auto_20241012_1459'), + ('online_cms', '0002_auto_20241017_0040'), + ('online_cms', '0002_auto_20241018_0342'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0004_merge_20241115_1509.py b/FusionIIIT/applications/online_cms/migrations/0004_merge_20241115_1509.py new file mode 100644 index 000000000..faea15c67 --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0004_merge_20241115_1509.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-15 15:09 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0003_merge_20241023_1016'), + ('online_cms', '0002_auto_20241018_0342'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0303.py b/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0303.py new file mode 100644 index 000000000..81b842c6f --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0303.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-16 03:03 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0003_merge_20241110_1253'), + ('online_cms', '0004_merge_20241115_1509'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0007_merge_20241118_2045.py b/FusionIIIT/applications/online_cms/migrations/0007_merge_20241118_2045.py new file mode 100644 index 000000000..36a6e925b --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0007_merge_20241118_2045.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-18 20:45 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0006_merge_20241118_1545'), + ('online_cms', '0006_merge_20241118_1914'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/online_cms/migrations/0008_merge_20241120_1733.py b/FusionIIIT/applications/online_cms/migrations/0008_merge_20241120_1733.py new file mode 100644 index 000000000..00cfec5cf --- /dev/null +++ b/FusionIIIT/applications/online_cms/migrations/0008_merge_20241120_1733.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-20 17:33 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0002_auto_20241116_1949'), + ('online_cms', '0007_merge_20241118_2045'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/programme_curriculum/migrations/0002_auto_20250107_1408.py b/FusionIIIT/applications/programme_curriculum/migrations/0002_auto_20250107_1408.py new file mode 100644 index 000000000..cbc53b2cf --- /dev/null +++ b/FusionIIIT/applications/programme_curriculum/migrations/0002_auto_20250107_1408.py @@ -0,0 +1,23 @@ +# Generated by Django 3.1.5 on 2025-01-07 14:08 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('programme_curriculum', '0001_initial'), + ] + + operations = [ + migrations.AlterField( + model_name='batch', + name='year', + field=models.PositiveIntegerField(default=2025), + ), + migrations.AlterField( + model_name='programme', + name='programme_begin_year', + field=models.PositiveIntegerField(default=2025), + ), + ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0008_merge_20241118_2044.py b/FusionIIIT/applications/research_procedures/migrations/0008_merge_20241118_2044.py new file mode 100644 index 000000000..3b84e23e9 --- /dev/null +++ b/FusionIIIT/applications/research_procedures/migrations/0008_merge_20241118_2044.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-18 20:44 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('research_procedures', '0007_merge_20241118_1545'), + ('research_procedures', '0005_merge_20241118_1914'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/scholarships/api/serializers.py b/FusionIIIT/applications/scholarships/api/serializers.py index 2fb495752..722fa6f30 100644 --- a/FusionIIIT/applications/scholarships/api/serializers.py +++ b/FusionIIIT/applications/scholarships/api/serializers.py @@ -9,6 +9,12 @@ class Meta: model = Mcm fields = ['status'] + def validate_status(self, value): + valid_statuses = ['ACCEPTED', 'REJECTED', 'UNDER_REVIEW'] + if value not in valid_statuses: + raise serializers.ValidationError(f"Status must be one of {valid_statuses}.") + return value + diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index cb5a0b553..6394dcd6f 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -5,6 +5,7 @@ from applications.scholarships.models import Previous_winner, Award_and_scholarship,Mcm,Director_gold,Notional_prize,Director_silver,Proficiency_dm,Release from rest_framework.views import APIView from rest_framework.response import Response +from .serializers import DirectorSilverDecisionSerializer # Add this import from rest_framework import status from applications.academic_information.models import Spi, Student from applications.globals.models import (Designation, ExtraInfo, @@ -109,7 +110,7 @@ def post(self, request): class McmRetrieveView(APIView): def post(self, request): - roll_number = request.data.get('roll_number') + roll_number = request.user.username if not roll_number: return Response({"detail": "Roll number is required."}, status=status.HTTP_400_BAD_REQUEST) @@ -126,7 +127,7 @@ def post(self, request): class DirectorSilverRetrieveView(APIView): def post(self, request): - roll_number = request.data.get('roll_number') + roll_number = request.user.username if not roll_number: return Response({"detail": "Roll number is required."}, status=status.HTTP_400_BAD_REQUEST) @@ -151,7 +152,7 @@ def post(self, request): class DirectorGoldRetrieveView(APIView): def post(self, request): - roll_number = request.data.get('roll_number') + roll_number = request.user.username if not roll_number: return Response({"detail": "Roll number is required."}, status=status.HTTP_400_BAD_REQUEST) @@ -186,7 +187,7 @@ def post(self, request): class ProficiencyDmRetrieveView(APIView): def post(self, request): - roll_number = request.data.get('roll_number') + roll_number = request.user.username if not roll_number: return Response({"detail": "Roll number is required."}, status=status.HTTP_400_BAD_REQUEST) diff --git a/FusionIIIT/applications/scholarships/migrations/0001_initial.py b/FusionIIIT/applications/scholarships/migrations/0001_initial.py deleted file mode 100644 index 7e1962c88..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0001_initial.py +++ /dev/null @@ -1,233 +0,0 @@ -# Generated by Django 3.1.5 on 2024-07-16 15:44 - -import datetime -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - initial = True - - dependencies = [ - ('academic_information', '0001_initial'), - ('globals', '0001_initial'), - ] - - operations = [ - migrations.CreateModel( - name='Award_and_scholarship', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('award_name', models.CharField(default='', max_length=100)), - ('catalog', models.TextField(max_length=5000)), - ], - options={ - 'db_table': 'Award_and_scholarship', - }, - ), - migrations.CreateModel( - name='Release', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('date_time', models.DateTimeField(blank=True, default=datetime.datetime.now)), - ('programme', models.CharField(default='B.Tech', max_length=10)), - ('startdate', models.DateField(default=datetime.date.today)), - ('enddate', models.DateField()), - ('award', models.CharField(default='', max_length=50)), - ('remarks', models.TextField(default='', max_length=500)), - ('batch', models.TextField(default='all')), - ('notif_visible', models.IntegerField(default=1)), - ], - options={ - 'db_table': 'Release', - }, - ), - migrations.CreateModel( - name='Proficiency_dm', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('relevant_document', models.FileField(blank=True, null=True, upload_to='')), - ('title_name', models.CharField(max_length=30, null=True)), - ('award_type', models.CharField(max_length=50, null=True)), - ('status', models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT')], default='INCOMPLETE', max_length=10)), - ('no_of_students', models.IntegerField(default=1)), - ('date', models.DateField(default=datetime.date.today)), - ('roll_no1', models.IntegerField(default=0)), - ('roll_no2', models.IntegerField(default=0)), - ('roll_no3', models.IntegerField(default=0)), - ('roll_no4', models.IntegerField(default=0)), - ('roll_no5', models.IntegerField(default=0)), - ('brief_description', models.TextField(max_length=1000, null=True)), - ('justification', models.TextField(max_length=1000, null=True)), - ('ece_topic', models.CharField(max_length=25, null=True)), - ('cse_topic', models.CharField(max_length=25, null=True)), - ('mech_topic', models.CharField(max_length=25, null=True)), - ('design_topic', models.CharField(max_length=25, null=True)), - ('ece_percentage', models.IntegerField(null=True)), - ('cse_percentage', models.IntegerField(null=True)), - ('mech_percentage', models.IntegerField(null=True)), - ('design_percentage', models.IntegerField(null=True)), - ('correspondence_address', models.CharField(max_length=100, null=True)), - ('financial_assistance', models.TextField(max_length=1000, null=True)), - ('grand_total', models.IntegerField(null=True)), - ('nearest_policestation', models.CharField(max_length=25, null=True)), - ('nearest_railwaystation', models.CharField(max_length=25, null=True)), - ('award_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='scholarships.award_and_scholarship')), - ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), - ], - options={ - 'db_table': 'Proficiency_dm', - }, - ), - migrations.CreateModel( - name='Previous_winner', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('programme', models.CharField(default='B.Tech', max_length=10)), - ('year', models.IntegerField(default=2024)), - ('award_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='scholarships.award_and_scholarship')), - ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), - ], - options={ - 'db_table': 'Previous_winner', - }, - ), - migrations.CreateModel( - name='Notional_prize', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('spi', models.FloatField()), - ('cpi', models.FloatField()), - ('year', models.CharField(choices=[('UG1', 'UG1'), ('UG2', 'UG2'), ('UG3', 'UG3'), ('UG4', 'UG4'), ('PG1', 'PG1'), ('PG2', 'PG2')], max_length=10)), - ('award_id', models.ForeignKey(default=4, on_delete=django.db.models.deletion.CASCADE, to='scholarships.award_and_scholarship')), - ], - options={ - 'db_table': 'Notional_prize', - }, - ), - migrations.CreateModel( - name='Notification', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('notification_mcm_flag', models.BooleanField(default=False)), - ('notification_convocation_flag', models.BooleanField(default=False)), - ('invite_mcm_accept_flag', models.BooleanField(default=False)), - ('invite_convocation_accept_flag', models.BooleanField(default=False)), - ('release_id', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, to='scholarships.release')), - ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), - ], - options={ - 'db_table': 'Notification', - }, - ), - migrations.CreateModel( - name='Mcm', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('brother_name', models.CharField(max_length=30, null=True)), - ('brother_occupation', models.TextField(max_length=100, null=True)), - ('sister_name', models.CharField(max_length=30, null=True)), - ('sister_occupation', models.TextField(max_length=100, null=True)), - ('income_father', models.IntegerField(default=0)), - ('income_mother', models.IntegerField(default=0)), - ('income_other', models.IntegerField(default=0)), - ('father_occ', models.CharField(choices=[('government', 'Government'), ('private', 'Private'), ('public', 'Public'), ('business', 'Business'), ('medical', 'Medical'), ('consultant', 'Consultant'), ('pensioners', 'Pensioners')], default='', max_length=10)), - ('mother_occ', models.CharField(choices=[('EMPLOYED', 'EMPLOYED'), ('HOUSE_WIFE', 'HOUSE_WIFE')], default='', max_length=10)), - ('father_occ_desc', models.CharField(max_length=30, null=True)), - ('mother_occ_desc', models.CharField(max_length=30, null=True)), - ('four_wheeler', models.IntegerField(blank=True, null=True)), - ('four_wheeler_desc', models.CharField(max_length=30, null=True)), - ('two_wheeler', models.IntegerField(blank=True, null=True)), - ('two_wheeler_desc', models.CharField(max_length=30, null=True)), - ('house', models.CharField(max_length=10, null=True)), - ('plot_area', models.IntegerField(blank=True, null=True)), - ('constructed_area', models.IntegerField(blank=True, null=True)), - ('school_fee', models.IntegerField(blank=True, null=True)), - ('school_name', models.CharField(max_length=30, null=True)), - ('bank_name', models.CharField(max_length=100, null=True)), - ('loan_amount', models.IntegerField(blank=True, null=True)), - ('college_fee', models.IntegerField(blank=True, null=True)), - ('college_name', models.CharField(max_length=30, null=True)), - ('income_certificate', models.FileField(blank=True, null=True, upload_to='')), - ('forms', models.FileField(blank=True, null=True, upload_to='')), - ('status', models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT')], default='INCOMPLETE', max_length=10)), - ('annual_income', models.IntegerField(default=0)), - ('date', models.DateField(default=datetime.date.today)), - ('award_id', models.ForeignKey(default=4, on_delete=django.db.models.deletion.CASCADE, to='scholarships.award_and_scholarship')), - ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='mcm_info', to='academic_information.student')), - ], - options={ - 'db_table': 'Mcm', - }, - ), - migrations.CreateModel( - name='Director_silver', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('nearest_policestation', models.TextField(default='station', max_length=30)), - ('nearest_railwaystation', models.TextField(default='station', max_length=30)), - ('correspondence_address', models.TextField(max_length=150, null=True)), - ('award_type', models.CharField(max_length=50, null=True)), - ('status', models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT')], default='INCOMPLETE', max_length=10)), - ('relevant_document', models.FileField(blank=True, null=True, upload_to='')), - ('date', models.DateField(default=datetime.date.today)), - ('financial_assistance', models.TextField(max_length=1000, null=True)), - ('grand_total', models.IntegerField(null=True)), - ('inside_achievements', models.TextField(max_length=1000, null=True)), - ('justification', models.TextField(max_length=1000, null=True)), - ('outside_achievements', models.TextField(max_length=1000, null=True)), - ('award_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='scholarships.award_and_scholarship')), - ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), - ], - options={ - 'db_table': 'Director_silver', - }, - ), - migrations.CreateModel( - name='Director_gold', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('status', models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT')], default='INCOMPLETE', max_length=10)), - ('relevant_document', models.FileField(blank=True, null=True, upload_to='')), - ('date', models.DateField(default=datetime.date.today)), - ('academic_achievements', models.TextField(max_length=1000, null=True)), - ('science_inside', models.TextField(max_length=1000, null=True)), - ('science_outside', models.TextField(max_length=1000, null=True)), - ('games_inside', models.TextField(max_length=1000, null=True)), - ('games_outside', models.TextField(max_length=1000, null=True)), - ('cultural_inside', models.TextField(max_length=1000, null=True)), - ('cultural_outside', models.TextField(max_length=1000, null=True)), - ('social', models.TextField(max_length=1000, null=True)), - ('corporate', models.TextField(max_length=1000, null=True)), - ('hall_activities', models.TextField(max_length=1000, null=True)), - ('gymkhana_activities', models.TextField(max_length=1000, null=True)), - ('institute_activities', models.TextField(max_length=1000, null=True)), - ('counselling_activities', models.TextField(max_length=1000, null=True)), - ('other_activities', models.TextField(max_length=1000, null=True)), - ('justification', models.TextField(max_length=1000, null=True)), - ('correspondence_address', models.CharField(max_length=100, null=True)), - ('financial_assistance', models.TextField(max_length=1000, null=True)), - ('grand_total', models.IntegerField(null=True)), - ('nearest_policestation', models.CharField(max_length=25, null=True)), - ('nearest_railwaystation', models.CharField(max_length=25, null=True)), - ('award_id', models.ForeignKey(default=4, on_delete=django.db.models.deletion.CASCADE, to='scholarships.award_and_scholarship')), - ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), - ], - options={ - 'db_table': 'Director_gold', - }, - ), - migrations.CreateModel( - name='Application', - fields=[ - ('application_id', models.CharField(max_length=100, primary_key=True, serialize=False)), - ('applied_flag', models.BooleanField(default=False)), - ('award', models.CharField(max_length=30)), - ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='globals.extrainfo')), - ], - options={ - 'db_table': 'Application', - }, - ), - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0002_auto_20241012_1459.py b/FusionIIIT/applications/scholarships/migrations/0002_auto_20241012_1459.py new file mode 100644 index 000000000..d689e8177 --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0002_auto_20241012_1459.py @@ -0,0 +1,40 @@ +# Generated by Django 3.1.5 on 2024-10-12 14:59 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('academic_information', '0001_initial'), + ('online_cms', '0001_initial'), + ] + + operations = [ + migrations.AddField( + model_name='attendance', + name='no_of_attendance', + field=models.IntegerField(default=1), + ), + migrations.AlterField( + model_name='attendance', + name='present', + field=models.IntegerField(default=0), + ), + migrations.AlterField( + model_name='gradingscheme', + name='type_of_evaluation', + field=models.CharField(max_length=100), + ), + migrations.CreateModel( + name='StudentEvaluation', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), + ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), + ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), + ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), + ], + ), + ] diff --git a/FusionIIIT/applications/scholarships/migrations/0002_auto_20241016_1905.py b/FusionIIIT/applications/scholarships/migrations/0002_auto_20241016_1905.py new file mode 100644 index 000000000..90739623d --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0002_auto_20241016_1905.py @@ -0,0 +1,40 @@ +# Generated by Django 3.1.5 on 2024-10-16 19:05 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('academic_information', '0001_initial'), + ('online_cms', '0001_initial'), + ] + + operations = [ + migrations.AddField( + model_name='attendance', + name='no_of_attendance', + field=models.IntegerField(default=1), + ), + migrations.AlterField( + model_name='attendance', + name='present', + field=models.IntegerField(default=0), + ), + migrations.AlterField( + model_name='gradingscheme', + name='type_of_evaluation', + field=models.CharField(max_length=100), + ), + migrations.CreateModel( + name='StudentEvaluation', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), + ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), + ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), + ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), + ], + ), + ] diff --git a/FusionIIIT/applications/scholarships/migrations/0002_auto_20241017_0040.py b/FusionIIIT/applications/scholarships/migrations/0002_auto_20241017_0040.py new file mode 100644 index 000000000..1669cce6d --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0002_auto_20241017_0040.py @@ -0,0 +1,40 @@ +# Generated by Django 3.1.5 on 2024-10-17 00:40 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('academic_information', '0001_initial'), + ('online_cms', '0001_initial'), + ] + + operations = [ + migrations.AddField( + model_name='attendance', + name='no_of_attendance', + field=models.IntegerField(default=1), + ), + migrations.AlterField( + model_name='attendance', + name='present', + field=models.IntegerField(default=0), + ), + migrations.AlterField( + model_name='gradingscheme', + name='type_of_evaluation', + field=models.CharField(max_length=100), + ), + migrations.CreateModel( + name='StudentEvaluation', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), + ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), + ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), + ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), + ], + ), + ] diff --git a/FusionIIIT/applications/scholarships/migrations/0002_auto_20241018_0342.py b/FusionIIIT/applications/scholarships/migrations/0002_auto_20241018_0342.py new file mode 100644 index 000000000..3411068ae --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0002_auto_20241018_0342.py @@ -0,0 +1,40 @@ +# Generated by Django 3.1.5 on 2024-10-18 03:42 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('academic_information', '0001_initial'), + ('online_cms', '0001_initial'), + ] + + operations = [ + migrations.AddField( + model_name='attendance', + name='no_of_attendance', + field=models.IntegerField(default=1), + ), + migrations.AlterField( + model_name='attendance', + name='present', + field=models.IntegerField(default=0), + ), + migrations.AlterField( + model_name='gradingscheme', + name='type_of_evaluation', + field=models.CharField(max_length=100), + ), + migrations.CreateModel( + name='StudentEvaluation', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), + ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), + ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), + ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), + ], + ), + ] diff --git a/FusionIIIT/applications/scholarships/migrations/0002_auto_20241116_1949.py b/FusionIIIT/applications/scholarships/migrations/0002_auto_20241116_1949.py deleted file mode 100644 index e69b5b7e9..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0002_auto_20241116_1949.py +++ /dev/null @@ -1,79 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-16 19:49 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('scholarships', '0001_initial'), - ] - - operations = [ - migrations.RemoveField( - model_name='director_gold', - name='relevant_document', - ), - migrations.RemoveField( - model_name='director_silver', - name='relevant_document', - ), - migrations.RemoveField( - model_name='proficiency_dm', - name='relevant_document', - ), - migrations.AddField( - model_name='director_gold', - name='Marksheet', - field=models.FileField(default='', upload_to=''), - preserve_default=False, - ), - migrations.AddField( - model_name='director_silver', - name='Marksheet', - field=models.FileField(default='', upload_to=''), - preserve_default=False, - ), - migrations.AddField( - model_name='mcm', - name='Aadhar_card', - field=models.FileField(default='', upload_to=''), - preserve_default=False, - ), - migrations.AddField( - model_name='mcm', - name='Affidavit', - field=models.FileField(default='', upload_to=''), - preserve_default=False, - ), - migrations.AddField( - model_name='mcm', - name='Bank_details', - field=models.FileField(default='', upload_to=''), - preserve_default=False, - ), - migrations.AddField( - model_name='mcm', - name='Fee_Receipt', - field=models.FileField(default='', upload_to=''), - preserve_default=False, - ), - migrations.AddField( - model_name='mcm', - name='Marksheet', - field=models.FileField(default='', upload_to=''), - preserve_default=False, - ), - migrations.AddField( - model_name='proficiency_dm', - name='Marksheet', - field=models.FileField(default='', upload_to=''), - preserve_default=False, - ), - migrations.AlterField( - model_name='mcm', - name='income_certificate', - field=models.FileField(default='', upload_to=''), - preserve_default=False, - ), - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0003_auto_20241117_2324.py b/FusionIIIT/applications/scholarships/migrations/0003_auto_20241117_2324.py deleted file mode 100644 index b3c25b650..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0003_auto_20241117_2324.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-17 23:24 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('scholarships', '0002_auto_20241115_1710'), - ] - - operations = [ - migrations.RenameField( - model_name='mcm', - old_name='marksheet', - new_name='Marksheet', - ), - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0003_merge_20241023_1016.py b/FusionIIIT/applications/scholarships/migrations/0003_merge_20241023_1016.py new file mode 100644 index 000000000..6aa9527ed --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0003_merge_20241023_1016.py @@ -0,0 +1,15 @@ +# Generated by Django 3.1.5 on 2024-10-23 10:16 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0002_auto_20241017_0040'), + ('online_cms', '0002_auto_20241016_1905'), + ('online_cms', '0002_auto_20241012_1459'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/scholarships/migrations/0003_merge_20241107_1924.py b/FusionIIIT/applications/scholarships/migrations/0003_merge_20241107_1924.py new file mode 100644 index 000000000..07560292a --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0003_merge_20241107_1924.py @@ -0,0 +1,15 @@ +# Generated by Django 3.1.5 on 2024-11-07 19:24 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0002_auto_20241016_1905'), + ('online_cms', '0002_auto_20241017_0040'), + ('online_cms', '0002_auto_20241012_1459'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/scholarships/migrations/0003_merge_20241110_1253.py b/FusionIIIT/applications/scholarships/migrations/0003_merge_20241110_1253.py new file mode 100644 index 000000000..71e66ebb8 --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0003_merge_20241110_1253.py @@ -0,0 +1,16 @@ +# Generated by Django 3.1.5 on 2024-11-10 12:53 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0002_auto_20241016_1905'), + ('online_cms', '0002_auto_20241012_1459'), + ('online_cms', '0002_auto_20241017_0040'), + ('online_cms', '0002_auto_20241018_0342'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/scholarships/migrations/0004_auto_20241118_1917.py b/FusionIIIT/applications/scholarships/migrations/0004_auto_20241118_1917.py deleted file mode 100644 index 51a063d1a..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0004_auto_20241118_1917.py +++ /dev/null @@ -1,23 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 19:17 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('scholarships', '0003_auto_20241116_0306'), - ] - - operations = [ - migrations.AddField( - model_name='director_gold', - name='nearest_railwaystations', - field=models.CharField(max_length=25, null=True), - ), - migrations.AlterField( - model_name='director_gold', - name='nearest_railwaystation', - field=models.TextField(default='station', max_length=30), - ), - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0004_merge_20241112_2008.py b/FusionIIIT/applications/scholarships/migrations/0004_merge_20241112_2008.py new file mode 100644 index 000000000..b2b96c455 --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0004_merge_20241112_2008.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-12 20:08 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0002_auto_20241018_0342'), + ('online_cms', '0003_merge_20241107_1924'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/scholarships/migrations/0004_merge_20241115_1509.py b/FusionIIIT/applications/scholarships/migrations/0004_merge_20241115_1509.py new file mode 100644 index 000000000..faea15c67 --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0004_merge_20241115_1509.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-15 15:09 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0003_merge_20241023_1016'), + ('online_cms', '0002_auto_20241018_0342'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/scholarships/migrations/0005_auto_20241118_1918.py b/FusionIIIT/applications/scholarships/migrations/0005_auto_20241118_1918.py deleted file mode 100644 index b7aa30441..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0005_auto_20241118_1918.py +++ /dev/null @@ -1,22 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 19:18 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('scholarships', '0004_auto_20241118_1917'), - ] - - operations = [ - migrations.RemoveField( - model_name='director_gold', - name='nearest_railwaystations', - ), - migrations.AlterField( - model_name='director_gold', - name='nearest_railwaystation', - field=models.CharField(max_length=25, null=True), - ), - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0233.py b/FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0233.py new file mode 100644 index 000000000..fcfdaf082 --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0233.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-16 02:33 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0003_merge_20241110_1253'), + ('online_cms', '0004_merge_20241115_1509'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0248.py b/FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0248.py new file mode 100644 index 000000000..647cb63f2 --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0248.py @@ -0,0 +1,15 @@ +# Generated by Django 3.1.5 on 2024-11-16 02:48 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0003_merge_20241110_1253'), + ('online_cms', '0004_merge_20241112_2008'), + ('online_cms', '0004_merge_20241115_1509'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0303.py b/FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0303.py new file mode 100644 index 000000000..81b842c6f --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0303.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-16 03:03 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0003_merge_20241110_1253'), + ('online_cms', '0004_merge_20241115_1509'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/scholarships/migrations/0006_auto_20241118_1921.py b/FusionIIIT/applications/scholarships/migrations/0006_auto_20241118_1921.py deleted file mode 100644 index 1c1ef00d5..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0006_auto_20241118_1921.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 19:21 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('scholarships', '0005_auto_20241118_1918'), - ] - - operations = [ - migrations.RenameField( - model_name='mcm', - old_name='Marksheet', - new_name='Marksheets', - ), - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0004_merge_20241118_1545.py b/FusionIIIT/applications/scholarships/migrations/0006_merge_20241118_1545.py similarity index 53% rename from FusionIIIT/applications/scholarships/migrations/0004_merge_20241118_1545.py rename to FusionIIIT/applications/scholarships/migrations/0006_merge_20241118_1545.py index 51cb87daa..cc2d9550a 100644 --- a/FusionIIIT/applications/scholarships/migrations/0004_merge_20241118_1545.py +++ b/FusionIIIT/applications/scholarships/migrations/0006_merge_20241118_1545.py @@ -6,8 +6,9 @@ class Migration(migrations.Migration): dependencies = [ - ('scholarships', '0003_auto_20241116_0306'), - ('scholarships', '0003_auto_20241117_2324'), + ('online_cms', '0005_merge_20241116_0303'), + ('online_cms', '0005_merge_20241116_0233'), + ('online_cms', '0005_merge_20241116_0248'), ] operations = [ diff --git a/FusionIIIT/applications/scholarships/migrations/0006_merge_20241118_1914.py b/FusionIIIT/applications/scholarships/migrations/0006_merge_20241118_1914.py new file mode 100644 index 000000000..408d4ddfd --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0006_merge_20241118_1914.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-11-18 19:14 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('online_cms', '0005_merge_20241116_0303'), + ('online_cms', '0005_merge_20241116_0233'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/scholarships/migrations/0007_auto_20241118_1921.py b/FusionIIIT/applications/scholarships/migrations/0007_auto_20241118_1921.py deleted file mode 100644 index 0aa0c3153..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0007_auto_20241118_1921.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 19:21 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('scholarships', '0006_auto_20241118_1921'), - ] - - operations = [ - migrations.RenameField( - model_name='mcm', - old_name='Marksheets', - new_name='Marksheet', - ), - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0008_auto_20241118_1945.py b/FusionIIIT/applications/scholarships/migrations/0008_auto_20241118_1945.py deleted file mode 100644 index b15d06af4..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0008_auto_20241118_1945.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 19:45 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('scholarships', '0007_auto_20241118_1921'), - ] - - operations = [ - migrations.RenameField( - model_name='mcm', - old_name='Marksheet', - new_name='marksheet', - ), - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0009_auto_20241118_1948.py b/FusionIIIT/applications/scholarships/migrations/0009_auto_20241118_1948.py deleted file mode 100644 index 95de3b24e..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0009_auto_20241118_1948.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 19:48 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('scholarships', '0008_auto_20241118_1945'), - ] - - operations = [ - migrations.RenameField( - model_name='mcm', - old_name='marksheet', - new_name='Marksheet', - ), - ] diff --git a/FusionIIIT/applications/scholarships/migrations/__init__.py b/FusionIIIT/applications/scholarships/migrations/__init__.py deleted file mode 100644 index e69de29bb..000000000 diff --git a/FusionIIIT/applications/scholarships/models.py b/FusionIIIT/applications/scholarships/models.py index 07954685d..74c31205e 100755 --- a/FusionIIIT/applications/scholarships/models.py +++ b/FusionIIIT/applications/scholarships/models.py @@ -12,6 +12,8 @@ class Constants: ('Accept', 'ACCEPT'), ('ACCEPT', 'Accept'), ('REJECT', 'Reject'), + ('ACCEPTED', 'Accepted'), + ('REJECTED', 'Rejected'), ('UNDER_REVIEW', 'Under Review') ) @@ -110,13 +112,13 @@ class Mcm(models.Model): loan_amount = models.IntegerField(blank=True, null=True) college_fee = models.IntegerField(blank=True, null=True) college_name = models.CharField(max_length=30, null=True) - income_certificate = models.FileField(null=False, blank=False) - Marksheet = models.FileField(null=False, blank=False) - Bank_details = models.FileField(null=False, blank=False) - Affidavit = models.FileField(null=False, blank=False) - Aadhar_card = models.FileField(null=False, blank=False) - Fee_Receipt = models.FileField(null=False, blank=False) - forms = models.FileField(null=True, blank=True) + income_certificate = models.BinaryField(null=False, blank=False) + Marksheet = models.BinaryField(null=False, blank=False) + Bank_details = models.BinaryField(null=False, blank=False) + Affidavit = models.BinaryField(null=False, blank=False) + Aadhar_card = models.BinaryField(null=False, blank=False) + Fee_Receipt = models.BinaryField(null=False, blank=False) + forms = models.CharField(max_length=100, null=True, blank=True) status = models.CharField(max_length=20, choices=Constants.STATUS_CHOICES, default='INCOMPLETE') student = models.ForeignKey(Student, on_delete=models.CASCADE, related_name='mcm_info') @@ -200,7 +202,7 @@ class Director_silver(models.Model): award_id = models.ForeignKey(Award_and_scholarship, on_delete=models.CASCADE) award_type = models.CharField(max_length=50, null=True) status = models.CharField(max_length=20, choices=Constants.STATUS_CHOICES,default='INCOMPLETE') - Marksheet = models.FileField(null=False, blank=False) + Marksheet = models.BinaryField(null=False, blank=False) date = models.DateField(default=datetime.date.today) financial_assistance = models.TextField(max_length=1000 ,null=True) grand_total = models.IntegerField(null=True) diff --git a/FusionIIIT/applications/scholarships/views.py b/FusionIIIT/applications/scholarships/views.py index bbcbffb16..b0897bede 100755 --- a/FusionIIIT/applications/scholarships/views.py +++ b/FusionIIIT/applications/scholarships/views.py @@ -100,10 +100,10 @@ def convener_view(request): # It updates the student Notification table on the spacs head sending the mcm invitation if batch == 'all': active_batches = range(datetime.datetime.now().year - 4 , datetime.datetime.now().year + 1) - query = reduce(or_, (Q(id__id__startswith=int(batch)-2000) for batch in active_batches)) + query = reduce(or_, (Q(id_id_startswith=int(batch)-2000) for batch in active_batches)) recipient = Student.objects.filter(programme=programme).filter(query) else: - recipient = Student.objects.filter(programme=programme, id__id__startswith=int(batch)-2000) + recipient = Student.objects.filter(programme=programme, id_id_startswith=int(batch)-2000) # Notification starts convenor = request.user @@ -569,7 +569,7 @@ def submitMCM(request): ).filter(award="Merit-cum-Means Scholarship") for release in releases: if Mcm.objects.select_related('award_id','student').filter( - Q(date__gte=release.startdate, date__lte=release.enddate) + Q(date_gte=release.startdate, date_lte=release.enddate) ).filter(student=request.user.extrainfo.student): # if len(Mcm.objects.filter(student = request.user.extrainfo.student)) > 0: Mcm.objects.select_related('award_id','student').filter( @@ -710,7 +710,7 @@ def submitGold(request): releases = Release.objects.filter(Q(startdate__lte=datetime.datetime.today().strftime( '%Y-%m-%d'), enddate__gte=datetime.datetime.today().strftime('%Y-%m-%d'))).filter(award="Convocation Medals") for release in releases: - existingRelease = Director_gold.objects.select_related('student','award_id').filter(Q(date__gte=release.startdate, date__lte=release.enddate)).filter(student=request.user.extrainfo.student) + existingRelease = Director_gold.objects.select_related('student','award_id').filter(Q(date_gte=release.startdate, date_lte=release.enddate)).filter(student=request.user.extrainfo.student) if existingRelease: existingRelease.update( student=student_id, @@ -805,7 +805,7 @@ def submitSilver(request): releases = Release.objects.filter(Q(startdate__lte=datetime.datetime.today().strftime( '%Y-%m-%d'), enddate__gte=datetime.datetime.today().strftime('%Y-%m-%d'))).filter(award="Convocation Medals") for release in releases: - existingRelease = Director_silver.objects.select_related('student','award_id').filter(Q(date__gte=release.startdate, date__lte=release.enddate)).filter(student=request.user.extrainfo.student) + existingRelease = Director_silver.objects.select_related('student','award_id').filter(Q(date_gte=release.startdate, date_lte=release.enddate)).filter(student=request.user.extrainfo.student) if existingRelease: existingRelease.update( student=student_id, @@ -922,7 +922,7 @@ def submitDM(request): releases = Release.objects.filter(Q(startdate__lte=datetime.datetime.today().strftime( '%Y-%m-%d'), enddate__gte=datetime.datetime.today().strftime('%Y-%m-%d'))).filter(award="Convocation Medals") for release in releases: - existingRelease = Proficiency_dm.objects.select_related('student','award_id').filter(Q(date__gte=release.startdate, date__lte=release.enddate)).filter(student=request.user.extrainfo.student) + existingRelease = Proficiency_dm.objects.select_related('student','award_id').filter(Q(date_gte=release.startdate, date_lte=release.enddate)).filter(student=request.user.extrainfo.student) if existingRelease: existingRelease.update( title_name=title_name, diff --git a/FusionIIIT/manage.py b/FusionIIIT/manage.py index c4bcdcbec..bb3479293 100755 --- a/FusionIIIT/manage.py +++ b/FusionIIIT/manage.py @@ -6,5 +6,6 @@ os.environ.setdefault("DJANGO_SETTINGS_MODULE", "Fusion.settings.development") from django.core.management import execute_from_command_line + execute_from_command_line(sys.argv) diff --git a/FusionIIIT/package.json b/FusionIIIT/package.json new file mode 100644 index 000000000..61f38f65b --- /dev/null +++ b/FusionIIIT/package.json @@ -0,0 +1,5 @@ +{ + "dependencies": { + "jwt-decode": "^4.0.0" + } +} From 8eafe607d459a5e3332cce3a8e17e902494a228a Mon Sep 17 00:00:00 2001 From: Ms Kumkum Kadhala <22bcs165@iiitdmj.ac.in> Date: Tue, 14 Jan 2025 15:49:07 +0530 Subject: [PATCH 26/37] delete duplicate migrations --- .../migrations/0002_auto_20241012_1459.py | 15 --------------- .../migrations/0002_auto_20241016_1905.py | 15 --------------- .../migrations/0002_auto_20241018_0342.py | 15 --------------- .../migrations/0002_auto_20241116_1949.py | 15 --------------- 4 files changed, 60 deletions(-) diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241012_1459.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241012_1459.py index d689e8177..df44824d3 100644 --- a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241012_1459.py +++ b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241012_1459.py @@ -12,11 +12,6 @@ class Migration(migrations.Migration): ] operations = [ - migrations.AddField( - model_name='attendance', - name='no_of_attendance', - field=models.IntegerField(default=1), - ), migrations.AlterField( model_name='attendance', name='present', @@ -27,14 +22,4 @@ class Migration(migrations.Migration): name='type_of_evaluation', field=models.CharField(max_length=100), ), - migrations.CreateModel( - name='StudentEvaluation', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), - ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), - ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), - ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), - ], - ), ] diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241016_1905.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241016_1905.py index 90739623d..8ace64d21 100644 --- a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241016_1905.py +++ b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241016_1905.py @@ -12,11 +12,6 @@ class Migration(migrations.Migration): ] operations = [ - migrations.AddField( - model_name='attendance', - name='no_of_attendance', - field=models.IntegerField(default=1), - ), migrations.AlterField( model_name='attendance', name='present', @@ -27,14 +22,4 @@ class Migration(migrations.Migration): name='type_of_evaluation', field=models.CharField(max_length=100), ), - migrations.CreateModel( - name='StudentEvaluation', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), - ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), - ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), - ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), - ], - ), ] diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241018_0342.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241018_0342.py index 3411068ae..03a3ade92 100644 --- a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241018_0342.py +++ b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241018_0342.py @@ -12,11 +12,6 @@ class Migration(migrations.Migration): ] operations = [ - migrations.AddField( - model_name='attendance', - name='no_of_attendance', - field=models.IntegerField(default=1), - ), migrations.AlterField( model_name='attendance', name='present', @@ -27,14 +22,4 @@ class Migration(migrations.Migration): name='type_of_evaluation', field=models.CharField(max_length=100), ), - migrations.CreateModel( - name='StudentEvaluation', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), - ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), - ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), - ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), - ], - ), ] diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241116_1949.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241116_1949.py index 9c8f22871..4c7f63c70 100644 --- a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241116_1949.py +++ b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241116_1949.py @@ -12,11 +12,6 @@ class Migration(migrations.Migration): ] operations = [ - # migrations.AddField( - # model_name='attendance', - # name='no_of_attendance', - # field=models.IntegerField(default=1), - # ), migrations.AlterField( model_name='attendance', name='present', @@ -27,14 +22,4 @@ class Migration(migrations.Migration): name='type_of_evaluation', field=models.CharField(max_length=100), ), - migrations.CreateModel( - name='StudentEvaluation', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), - ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), - ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), - ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), - ], - ), ] From 7f069c59146bfac63e5e71063a81616bd72e134d Mon Sep 17 00:00:00 2001 From: Akash Paloju Date: Mon, 17 Feb 2025 02:25:12 +0530 Subject: [PATCH 27/37] Correct Migration files --- .../migrations/0002_auto_20250107_1408.py | 38 ------------- .../migrations/0002_auto_20241016_1905.py | 23 -------- .../migrations/0002_auto_20241017_0040.py | 23 -------- .../migrations/0002_auto_20241018_0342.py | 23 -------- .../migrations/0003_merge_20241023_1016.py | 15 ------ .../migrations/0003_merge_20241107_1924.py | 15 ------ .../migrations/0003_merge_20241110_1253.py | 16 ------ .../migrations/0004_merge_20241112_2008.py | 14 ----- .../migrations/0004_merge_20241115_1610.py | 14 ----- .../migrations/0005_auto_20241112_2009.py | 19 ------- .../migrations/0005_merge_20241116_0233.py | 14 ----- .../migrations/0005_merge_20241116_0303.py | 14 ----- .../migrations/0006_auto_20241116_0306.py | 19 ------- .../migrations/0006_merge_20241116_0248.py | 15 ------ .../migrations/0007_merge_20241118_1545.py | 15 ------ .../migrations/0007_merge_20241118_1914.py | 14 ----- .../migrations/0008_merge_20241118_2044.py | 14 ----- .../eis/migrations/0002_auto_20250107_1408.py | 53 ------------------- .../migrations/0003_auto_20241016_1905.py | 18 ------- .../migrations/0003_auto_20241017_0040.py | 18 ------- .../migrations/0003_auto_20241018_0342.py | 18 ------- .../migrations/0004_merge_20241107_1924.py | 14 ----- .../migrations/0004_merge_20241110_1253.py | 15 ------ .../migrations/0004_merge_20241115_1610.py | 15 ------ .../migrations/0005_auto_20241115_1710.py | 18 ------- .../migrations/0005_merge_20241112_2008.py | 14 ----- .../migrations/0006_auto_20241112_2009.py | 18 ------- .../migrations/0006_merge_20241116_0233.py | 14 ----- .../migrations/0006_merge_20241116_0303.py | 14 ----- .../migrations/0007_merge_20241116_0248.py | 15 ------ .../migrations/0007_merge_20241118_1914.py | 14 ----- .../migrations/0008_merge_20241118_1545.py | 15 ------ .../migrations/0009_merge_20241118_2045.py | 14 ----- .../migrations/0002_auto_20241012_1459.py | 15 ++++++ .../migrations/0002_auto_20241016_1905.py | 25 --------- .../migrations/0002_auto_20241017_0040.py | 40 -------------- .../migrations/0002_auto_20241018_0342.py | 25 --------- .../migrations/0002_auto_20241116_1949.py | 25 --------- .../migrations/0003_merge_20241023_1016.py | 15 ------ .../migrations/0003_merge_20241107_1924.py | 15 ------ .../migrations/0003_merge_20241110_1253.py | 16 ------ .../migrations/0004_merge_20241112_2008.py | 14 ----- .../migrations/0004_merge_20241115_1509.py | 14 ----- .../migrations/0005_merge_20241116_0233.py | 14 ----- .../migrations/0005_merge_20241116_0248.py | 15 ------ .../migrations/0005_merge_20241116_0303.py | 14 ----- .../migrations/0006_merge_20241118_1545.py | 15 ------ .../migrations/0006_merge_20241118_1914.py | 14 ----- .../migrations/0007_merge_20241118_2045.py | 14 ----- .../migrations/0008_merge_20241120_1733.py | 14 ----- .../migrations/0002_auto_20250107_1408.py | 23 -------- .../migrations/0002_auto_20241016_1905.py | 19 ------- .../migrations/0002_auto_20241017_0040.py | 19 ------- .../migrations/0002_auto_20241018_0342.py | 19 ------- .../migrations/0003_merge_20241107_1924.py | 15 ------ .../migrations/0003_merge_20241110_1253.py | 16 ------ .../migrations/0003_merge_20241115_1509.py | 16 ------ .../migrations/0004_merge_20241112_2008.py | 14 ----- .../migrations/0004_merge_20241116_0232.py | 14 ----- .../migrations/0004_merge_20241116_0303.py | 14 ----- .../migrations/0005_auto_20241112_2009.py | 19 ------- .../migrations/0005_merge_20241118_1914.py | 14 ----- .../migrations/0006_merge_20241116_0248.py | 15 ------ .../migrations/0007_merge_20241118_1545.py | 15 ------ .../migrations/0008_merge_20241118_2044.py | 14 ----- .../migrations/0002_auto_20241012_1459.py | 40 -------------- .../migrations/0002_auto_20241016_1905.py | 40 -------------- .../migrations/0002_auto_20241017_0040.py | 40 -------------- .../migrations/0002_auto_20241018_0342.py | 40 -------------- .../migrations/0003_merge_20241023_1016.py | 15 ------ .../migrations/0003_merge_20241107_1924.py | 15 ------ .../migrations/0003_merge_20241110_1253.py | 16 ------ .../migrations/0004_merge_20241112_2008.py | 14 ----- .../migrations/0004_merge_20241115_1509.py | 14 ----- .../migrations/0005_merge_20241116_0233.py | 14 ----- .../migrations/0005_merge_20241116_0248.py | 15 ------ .../migrations/0005_merge_20241116_0303.py | 14 ----- .../migrations/0006_merge_20241118_1545.py | 15 ------ .../migrations/0006_merge_20241118_1914.py | 14 ----- FusionIIIT/manage.py | 2 - 80 files changed, 15 insertions(+), 1435 deletions(-) delete mode 100644 FusionIIIT/applications/academic_procedures/migrations/0002_auto_20250107_1408.py delete mode 100644 FusionIIIT/applications/central_mess/migrations/0002_auto_20241016_1905.py delete mode 100644 FusionIIIT/applications/central_mess/migrations/0002_auto_20241017_0040.py delete mode 100644 FusionIIIT/applications/central_mess/migrations/0002_auto_20241018_0342.py delete mode 100644 FusionIIIT/applications/central_mess/migrations/0003_merge_20241023_1016.py delete mode 100644 FusionIIIT/applications/central_mess/migrations/0003_merge_20241107_1924.py delete mode 100644 FusionIIIT/applications/central_mess/migrations/0003_merge_20241110_1253.py delete mode 100644 FusionIIIT/applications/central_mess/migrations/0004_merge_20241112_2008.py delete mode 100644 FusionIIIT/applications/central_mess/migrations/0004_merge_20241115_1610.py delete mode 100644 FusionIIIT/applications/central_mess/migrations/0005_auto_20241112_2009.py delete mode 100644 FusionIIIT/applications/central_mess/migrations/0005_merge_20241116_0233.py delete mode 100644 FusionIIIT/applications/central_mess/migrations/0005_merge_20241116_0303.py delete mode 100644 FusionIIIT/applications/central_mess/migrations/0006_auto_20241116_0306.py delete mode 100644 FusionIIIT/applications/central_mess/migrations/0006_merge_20241116_0248.py delete mode 100644 FusionIIIT/applications/central_mess/migrations/0007_merge_20241118_1545.py delete mode 100644 FusionIIIT/applications/central_mess/migrations/0007_merge_20241118_1914.py delete mode 100644 FusionIIIT/applications/central_mess/migrations/0008_merge_20241118_2044.py delete mode 100644 FusionIIIT/applications/eis/migrations/0002_auto_20250107_1408.py delete mode 100644 FusionIIIT/applications/globals/migrations/0003_auto_20241016_1905.py delete mode 100644 FusionIIIT/applications/globals/migrations/0003_auto_20241017_0040.py delete mode 100644 FusionIIIT/applications/globals/migrations/0003_auto_20241018_0342.py delete mode 100644 FusionIIIT/applications/globals/migrations/0004_merge_20241107_1924.py delete mode 100644 FusionIIIT/applications/globals/migrations/0004_merge_20241110_1253.py delete mode 100644 FusionIIIT/applications/globals/migrations/0004_merge_20241115_1610.py delete mode 100644 FusionIIIT/applications/globals/migrations/0005_auto_20241115_1710.py delete mode 100644 FusionIIIT/applications/globals/migrations/0005_merge_20241112_2008.py delete mode 100644 FusionIIIT/applications/globals/migrations/0006_auto_20241112_2009.py delete mode 100644 FusionIIIT/applications/globals/migrations/0006_merge_20241116_0233.py delete mode 100644 FusionIIIT/applications/globals/migrations/0006_merge_20241116_0303.py delete mode 100644 FusionIIIT/applications/globals/migrations/0007_merge_20241116_0248.py delete mode 100644 FusionIIIT/applications/globals/migrations/0007_merge_20241118_1914.py delete mode 100644 FusionIIIT/applications/globals/migrations/0008_merge_20241118_1545.py delete mode 100644 FusionIIIT/applications/globals/migrations/0009_merge_20241118_2045.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0002_auto_20241016_1905.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0002_auto_20241017_0040.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0002_auto_20241018_0342.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0002_auto_20241116_1949.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0003_merge_20241023_1016.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0003_merge_20241107_1924.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0003_merge_20241110_1253.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0004_merge_20241112_2008.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0004_merge_20241115_1509.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0233.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0248.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0303.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1545.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1914.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0007_merge_20241118_2045.py delete mode 100644 FusionIIIT/applications/online_cms/migrations/0008_merge_20241120_1733.py delete mode 100644 FusionIIIT/applications/programme_curriculum/migrations/0002_auto_20250107_1408.py delete mode 100644 FusionIIIT/applications/research_procedures/migrations/0002_auto_20241016_1905.py delete mode 100644 FusionIIIT/applications/research_procedures/migrations/0002_auto_20241017_0040.py delete mode 100644 FusionIIIT/applications/research_procedures/migrations/0002_auto_20241018_0342.py delete mode 100644 FusionIIIT/applications/research_procedures/migrations/0003_merge_20241107_1924.py delete mode 100644 FusionIIIT/applications/research_procedures/migrations/0003_merge_20241110_1253.py delete mode 100644 FusionIIIT/applications/research_procedures/migrations/0003_merge_20241115_1509.py delete mode 100644 FusionIIIT/applications/research_procedures/migrations/0004_merge_20241112_2008.py delete mode 100644 FusionIIIT/applications/research_procedures/migrations/0004_merge_20241116_0232.py delete mode 100644 FusionIIIT/applications/research_procedures/migrations/0004_merge_20241116_0303.py delete mode 100644 FusionIIIT/applications/research_procedures/migrations/0005_auto_20241112_2009.py delete mode 100644 FusionIIIT/applications/research_procedures/migrations/0005_merge_20241118_1914.py delete mode 100644 FusionIIIT/applications/research_procedures/migrations/0006_merge_20241116_0248.py delete mode 100644 FusionIIIT/applications/research_procedures/migrations/0007_merge_20241118_1545.py delete mode 100644 FusionIIIT/applications/research_procedures/migrations/0008_merge_20241118_2044.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0002_auto_20241012_1459.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0002_auto_20241016_1905.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0002_auto_20241017_0040.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0002_auto_20241018_0342.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0003_merge_20241023_1016.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0003_merge_20241107_1924.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0003_merge_20241110_1253.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0004_merge_20241112_2008.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0004_merge_20241115_1509.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0233.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0248.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0303.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0006_merge_20241118_1545.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0006_merge_20241118_1914.py diff --git a/FusionIIIT/applications/academic_procedures/migrations/0002_auto_20250107_1408.py b/FusionIIIT/applications/academic_procedures/migrations/0002_auto_20250107_1408.py deleted file mode 100644 index 8d8a4a876..000000000 --- a/FusionIIIT/applications/academic_procedures/migrations/0002_auto_20250107_1408.py +++ /dev/null @@ -1,38 +0,0 @@ -# Generated by Django 3.1.5 on 2025-01-07 14:08 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('academic_procedures', '0001_initial'), - ] - - operations = [ - migrations.AlterField( - model_name='assistantshipclaim', - name='year', - field=models.IntegerField(choices=[(2025, 2025), (2024, 2024)]), - ), - migrations.AlterField( - model_name='course_registration', - name='working_year', - field=models.IntegerField(blank=True, choices=[(2025, 2025), (2024, 2024)], null=True), - ), - migrations.AlterField( - model_name='finalregistrations', - name='batch', - field=models.IntegerField(default=2025), - ), - migrations.AlterField( - model_name='messdue', - name='year', - field=models.IntegerField(choices=[(2025, 2025), (2024, 2024)]), - ), - migrations.AlterField( - model_name='register', - name='year', - field=models.IntegerField(default=2025), - ), - ] diff --git a/FusionIIIT/applications/central_mess/migrations/0002_auto_20241016_1905.py b/FusionIIIT/applications/central_mess/migrations/0002_auto_20241016_1905.py deleted file mode 100644 index c7c1f7c98..000000000 --- a/FusionIIIT/applications/central_mess/migrations/0002_auto_20241016_1905.py +++ /dev/null @@ -1,23 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-16 19:05 - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('central_mess', '0001_initial'), - ] - - operations = [ - migrations.AlterField( - model_name='payments', - name='payment_date', - field=models.DateField(default=datetime.date(2024, 10, 16)), - ), - migrations.AlterUniqueTogether( - name='payments', - unique_together=set(), - ), - ] diff --git a/FusionIIIT/applications/central_mess/migrations/0002_auto_20241017_0040.py b/FusionIIIT/applications/central_mess/migrations/0002_auto_20241017_0040.py deleted file mode 100644 index c2ad27e7a..000000000 --- a/FusionIIIT/applications/central_mess/migrations/0002_auto_20241017_0040.py +++ /dev/null @@ -1,23 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-17 00:40 - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('central_mess', '0001_initial'), - ] - - operations = [ - migrations.AlterField( - model_name='payments', - name='payment_date', - field=models.DateField(default=datetime.date(2024, 10, 17)), - ), - migrations.AlterUniqueTogether( - name='payments', - unique_together=set(), - ), - ] diff --git a/FusionIIIT/applications/central_mess/migrations/0002_auto_20241018_0342.py b/FusionIIIT/applications/central_mess/migrations/0002_auto_20241018_0342.py deleted file mode 100644 index 1099cf271..000000000 --- a/FusionIIIT/applications/central_mess/migrations/0002_auto_20241018_0342.py +++ /dev/null @@ -1,23 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-18 03:42 - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('central_mess', '0001_initial'), - ] - - operations = [ - migrations.AlterField( - model_name='payments', - name='payment_date', - field=models.DateField(default=datetime.date(2024, 10, 18)), - ), - migrations.AlterUniqueTogether( - name='payments', - unique_together=set(), - ), - ] diff --git a/FusionIIIT/applications/central_mess/migrations/0003_merge_20241023_1016.py b/FusionIIIT/applications/central_mess/migrations/0003_merge_20241023_1016.py deleted file mode 100644 index ffe696451..000000000 --- a/FusionIIIT/applications/central_mess/migrations/0003_merge_20241023_1016.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-23 10:16 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('central_mess', '0002_auto_20241017_0040'), - ('central_mess', '0002_auto_20241016_1905'), - ('central_mess', '0002_auto_20241012_1459'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/central_mess/migrations/0003_merge_20241107_1924.py b/FusionIIIT/applications/central_mess/migrations/0003_merge_20241107_1924.py deleted file mode 100644 index 109cbae8e..000000000 --- a/FusionIIIT/applications/central_mess/migrations/0003_merge_20241107_1924.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-07 19:24 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('central_mess', '0002_auto_20241016_1905'), - ('central_mess', '0002_auto_20241017_0040'), - ('central_mess', '0002_auto_20241012_1459'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/central_mess/migrations/0003_merge_20241110_1253.py b/FusionIIIT/applications/central_mess/migrations/0003_merge_20241110_1253.py deleted file mode 100644 index 9cc06b37b..000000000 --- a/FusionIIIT/applications/central_mess/migrations/0003_merge_20241110_1253.py +++ /dev/null @@ -1,16 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-10 12:53 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('central_mess', '0002_auto_20241016_1905'), - ('central_mess', '0002_auto_20241012_1459'), - ('central_mess', '0002_auto_20241017_0040'), - ('central_mess', '0002_auto_20241018_0342'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/central_mess/migrations/0004_merge_20241112_2008.py b/FusionIIIT/applications/central_mess/migrations/0004_merge_20241112_2008.py deleted file mode 100644 index bc282ca71..000000000 --- a/FusionIIIT/applications/central_mess/migrations/0004_merge_20241112_2008.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-12 20:08 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('central_mess', '0002_auto_20241018_0342'), - ('central_mess', '0003_merge_20241107_1924'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/central_mess/migrations/0004_merge_20241115_1610.py b/FusionIIIT/applications/central_mess/migrations/0004_merge_20241115_1610.py deleted file mode 100644 index b248cb47a..000000000 --- a/FusionIIIT/applications/central_mess/migrations/0004_merge_20241115_1610.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-15 16:10 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('central_mess', '0003_merge_20241023_1016'), - ('central_mess', '0002_auto_20241018_0342'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/central_mess/migrations/0005_auto_20241112_2009.py b/FusionIIIT/applications/central_mess/migrations/0005_auto_20241112_2009.py deleted file mode 100644 index a620da757..000000000 --- a/FusionIIIT/applications/central_mess/migrations/0005_auto_20241112_2009.py +++ /dev/null @@ -1,19 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-12 20:09 - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('central_mess', '0004_merge_20241112_2008'), - ] - - operations = [ - migrations.AlterField( - model_name='payments', - name='payment_date', - field=models.DateField(default=datetime.date.today), - ), - ] diff --git a/FusionIIIT/applications/central_mess/migrations/0005_merge_20241116_0233.py b/FusionIIIT/applications/central_mess/migrations/0005_merge_20241116_0233.py deleted file mode 100644 index 0f22d00e8..000000000 --- a/FusionIIIT/applications/central_mess/migrations/0005_merge_20241116_0233.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-16 02:33 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('central_mess', '0003_merge_20241110_1253'), - ('central_mess', '0004_merge_20241115_1610'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/central_mess/migrations/0005_merge_20241116_0303.py b/FusionIIIT/applications/central_mess/migrations/0005_merge_20241116_0303.py deleted file mode 100644 index 50651e05b..000000000 --- a/FusionIIIT/applications/central_mess/migrations/0005_merge_20241116_0303.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-16 03:03 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('central_mess', '0003_merge_20241110_1253'), - ('central_mess', '0004_merge_20241115_1610'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/central_mess/migrations/0006_auto_20241116_0306.py b/FusionIIIT/applications/central_mess/migrations/0006_auto_20241116_0306.py deleted file mode 100644 index 071692b6a..000000000 --- a/FusionIIIT/applications/central_mess/migrations/0006_auto_20241116_0306.py +++ /dev/null @@ -1,19 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-16 03:06 - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('central_mess', '0005_merge_20241116_0303'), - ] - - operations = [ - migrations.AlterField( - model_name='payments', - name='payment_date', - field=models.DateField(default=datetime.date.today), - ), - ] diff --git a/FusionIIIT/applications/central_mess/migrations/0006_merge_20241116_0248.py b/FusionIIIT/applications/central_mess/migrations/0006_merge_20241116_0248.py deleted file mode 100644 index 18ee2510b..000000000 --- a/FusionIIIT/applications/central_mess/migrations/0006_merge_20241116_0248.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-16 02:48 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('central_mess', '0004_merge_20241115_1610'), - ('central_mess', '0003_merge_20241110_1253'), - ('central_mess', '0005_auto_20241112_2009'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/central_mess/migrations/0007_merge_20241118_1545.py b/FusionIIIT/applications/central_mess/migrations/0007_merge_20241118_1545.py deleted file mode 100644 index 5368fea2e..000000000 --- a/FusionIIIT/applications/central_mess/migrations/0007_merge_20241118_1545.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 15:45 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('central_mess', '0006_merge_20241116_0248'), - ('central_mess', '0005_merge_20241116_0233'), - ('central_mess', '0006_auto_20241116_0306'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/central_mess/migrations/0007_merge_20241118_1914.py b/FusionIIIT/applications/central_mess/migrations/0007_merge_20241118_1914.py deleted file mode 100644 index aa83ab2e2..000000000 --- a/FusionIIIT/applications/central_mess/migrations/0007_merge_20241118_1914.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 19:14 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('central_mess', '0006_auto_20241116_0306'), - ('central_mess', '0005_merge_20241116_0233'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/central_mess/migrations/0008_merge_20241118_2044.py b/FusionIIIT/applications/central_mess/migrations/0008_merge_20241118_2044.py deleted file mode 100644 index 421b138b1..000000000 --- a/FusionIIIT/applications/central_mess/migrations/0008_merge_20241118_2044.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 20:44 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('central_mess', '0007_merge_20241118_1914'), - ('central_mess', '0007_merge_20241118_1545'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/eis/migrations/0002_auto_20250107_1408.py b/FusionIIIT/applications/eis/migrations/0002_auto_20250107_1408.py deleted file mode 100644 index 1526ffd5e..000000000 --- a/FusionIIIT/applications/eis/migrations/0002_auto_20250107_1408.py +++ /dev/null @@ -1,53 +0,0 @@ -# Generated by Django 3.1.5 on 2025-01-07 14:08 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('eis', '0001_initial'), - ] - - operations = [ - migrations.AlterField( - model_name='emp_achievement', - name='a_year', - field=models.IntegerField(blank=True, choices=[(1995, 1995), (1996, 1996), (1997, 1997), (1998, 1998), (1999, 1999), (2000, 2000), (2001, 2001), (2002, 2002), (2003, 2003), (2004, 2004), (2005, 2005), (2006, 2006), (2007, 2007), (2008, 2008), (2009, 2009), (2010, 2010), (2011, 2011), (2012, 2012), (2013, 2013), (2014, 2014), (2015, 2015), (2016, 2016), (2017, 2017), (2018, 2018), (2019, 2019), (2020, 2020), (2021, 2021), (2022, 2022), (2023, 2023), (2024, 2024), (2025, 2025)], null=True, verbose_name='year'), - ), - migrations.AlterField( - model_name='emp_confrence_organised', - name='k_year', - field=models.IntegerField(blank=True, choices=[(1995, 1995), (1996, 1996), (1997, 1997), (1998, 1998), (1999, 1999), (2000, 2000), (2001, 2001), (2002, 2002), (2003, 2003), (2004, 2004), (2005, 2005), (2006, 2006), (2007, 2007), (2008, 2008), (2009, 2009), (2010, 2010), (2011, 2011), (2012, 2012), (2013, 2013), (2014, 2014), (2015, 2015), (2016, 2016), (2017, 2017), (2018, 2018), (2019, 2019), (2020, 2020), (2021, 2021), (2022, 2022), (2023, 2023), (2024, 2024), (2025, 2025)], null=True, verbose_name='year'), - ), - migrations.AlterField( - model_name='emp_expert_lectures', - name='l_year', - field=models.IntegerField(blank=True, choices=[(1995, 1995), (1996, 1996), (1997, 1997), (1998, 1998), (1999, 1999), (2000, 2000), (2001, 2001), (2002, 2002), (2003, 2003), (2004, 2004), (2005, 2005), (2006, 2006), (2007, 2007), (2008, 2008), (2009, 2009), (2010, 2010), (2011, 2011), (2012, 2012), (2013, 2013), (2014, 2014), (2015, 2015), (2016, 2016), (2017, 2017), (2018, 2018), (2019, 2019), (2020, 2020), (2021, 2021), (2022, 2022), (2023, 2023), (2024, 2024), (2025, 2025)], null=True, verbose_name='year'), - ), - migrations.AlterField( - model_name='emp_keynote_address', - name='k_year', - field=models.IntegerField(blank=True, choices=[(1995, 1995), (1996, 1996), (1997, 1997), (1998, 1998), (1999, 1999), (2000, 2000), (2001, 2001), (2002, 2002), (2003, 2003), (2004, 2004), (2005, 2005), (2006, 2006), (2007, 2007), (2008, 2008), (2009, 2009), (2010, 2010), (2011, 2011), (2012, 2012), (2013, 2013), (2014, 2014), (2015, 2015), (2016, 2016), (2017, 2017), (2018, 2018), (2019, 2019), (2020, 2020), (2021, 2021), (2022, 2022), (2023, 2023), (2024, 2024), (2025, 2025)], null=True, verbose_name='year'), - ), - migrations.AlterField( - model_name='emp_mtechphd_thesis', - name='s_year', - field=models.IntegerField(blank=True, choices=[(1995, 1995), (1996, 1996), (1997, 1997), (1998, 1998), (1999, 1999), (2000, 2000), (2001, 2001), (2002, 2002), (2003, 2003), (2004, 2004), (2005, 2005), (2006, 2006), (2007, 2007), (2008, 2008), (2009, 2009), (2010, 2010), (2011, 2011), (2012, 2012), (2013, 2013), (2014, 2014), (2015, 2015), (2016, 2016), (2017, 2017), (2018, 2018), (2019, 2019), (2020, 2020), (2021, 2021), (2022, 2022), (2023, 2023), (2024, 2024), (2025, 2025)], null=True, verbose_name='year'), - ), - migrations.AlterField( - model_name='emp_patents', - name='p_year', - field=models.IntegerField(blank=True, choices=[(1995, 1995), (1996, 1996), (1997, 1997), (1998, 1998), (1999, 1999), (2000, 2000), (2001, 2001), (2002, 2002), (2003, 2003), (2004, 2004), (2005, 2005), (2006, 2006), (2007, 2007), (2008, 2008), (2009, 2009), (2010, 2010), (2011, 2011), (2012, 2012), (2013, 2013), (2014, 2014), (2015, 2015), (2016, 2016), (2017, 2017), (2018, 2018), (2019, 2019), (2020, 2020), (2021, 2021), (2022, 2022), (2023, 2023), (2024, 2024), (2025, 2025)], null=True, verbose_name='year'), - ), - migrations.AlterField( - model_name='emp_published_books', - name='pyear', - field=models.IntegerField(blank=True, choices=[(1995, 1995), (1996, 1996), (1997, 1997), (1998, 1998), (1999, 1999), (2000, 2000), (2001, 2001), (2002, 2002), (2003, 2003), (2004, 2004), (2005, 2005), (2006, 2006), (2007, 2007), (2008, 2008), (2009, 2009), (2010, 2010), (2011, 2011), (2012, 2012), (2013, 2013), (2014, 2014), (2015, 2015), (2016, 2016), (2017, 2017), (2018, 2018), (2019, 2019), (2020, 2020), (2021, 2021), (2022, 2022), (2023, 2023), (2024, 2024), (2025, 2025)], null=True, verbose_name='year'), - ), - migrations.AlterField( - model_name='emp_research_papers', - name='year', - field=models.CharField(blank=True, choices=[(1995, 1995), (1996, 1996), (1997, 1997), (1998, 1998), (1999, 1999), (2000, 2000), (2001, 2001), (2002, 2002), (2003, 2003), (2004, 2004), (2005, 2005), (2006, 2006), (2007, 2007), (2008, 2008), (2009, 2009), (2010, 2010), (2011, 2011), (2012, 2012), (2013, 2013), (2014, 2014), (2015, 2015), (2016, 2016), (2017, 2017), (2018, 2018), (2019, 2019), (2020, 2020), (2021, 2021), (2022, 2022), (2023, 2023), (2024, 2024), (2025, 2025)], max_length=10, null=True), - ), - ] diff --git a/FusionIIIT/applications/globals/migrations/0003_auto_20241016_1905.py b/FusionIIIT/applications/globals/migrations/0003_auto_20241016_1905.py deleted file mode 100644 index 5f8aea90e..000000000 --- a/FusionIIIT/applications/globals/migrations/0003_auto_20241016_1905.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-16 19:05 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('globals', '0002_auto_20241007_2302'), - ] - - operations = [ - migrations.AlterField( - model_name='extrainfo', - name='user_status', - field=models.CharField(choices=[('PRESENT', 'PRESENT'), ('NEW', 'NEW')], default='PRESENT', max_length=50), - ), - ] diff --git a/FusionIIIT/applications/globals/migrations/0003_auto_20241017_0040.py b/FusionIIIT/applications/globals/migrations/0003_auto_20241017_0040.py deleted file mode 100644 index ba964aa12..000000000 --- a/FusionIIIT/applications/globals/migrations/0003_auto_20241017_0040.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-17 00:40 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('globals', '0002_auto_20241007_2302'), - ] - - operations = [ - migrations.AlterField( - model_name='extrainfo', - name='user_status', - field=models.CharField(choices=[('PRESENT', 'PRESENT'), ('NEW', 'NEW')], default='PRESENT', max_length=50), - ), - ] diff --git a/FusionIIIT/applications/globals/migrations/0003_auto_20241018_0342.py b/FusionIIIT/applications/globals/migrations/0003_auto_20241018_0342.py deleted file mode 100644 index 3d25d53d1..000000000 --- a/FusionIIIT/applications/globals/migrations/0003_auto_20241018_0342.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-18 03:42 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('globals', '0002_auto_20241007_2302'), - ] - - operations = [ - migrations.AlterField( - model_name='extrainfo', - name='user_status', - field=models.CharField(choices=[('PRESENT', 'PRESENT'), ('NEW', 'NEW')], default='PRESENT', max_length=50), - ), - ] diff --git a/FusionIIIT/applications/globals/migrations/0004_merge_20241107_1924.py b/FusionIIIT/applications/globals/migrations/0004_merge_20241107_1924.py deleted file mode 100644 index 170a506a6..000000000 --- a/FusionIIIT/applications/globals/migrations/0004_merge_20241107_1924.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-07 19:24 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('globals', '0003_auto_20241016_1905'), - ('globals', '0003_auto_20241017_0040'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/globals/migrations/0004_merge_20241110_1253.py b/FusionIIIT/applications/globals/migrations/0004_merge_20241110_1253.py deleted file mode 100644 index 5b53d6ed2..000000000 --- a/FusionIIIT/applications/globals/migrations/0004_merge_20241110_1253.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-10 12:53 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('globals', '0003_auto_20241016_1905'), - ('globals', '0003_auto_20241017_0040'), - ('globals', '0003_auto_20241018_0342'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/globals/migrations/0004_merge_20241115_1610.py b/FusionIIIT/applications/globals/migrations/0004_merge_20241115_1610.py deleted file mode 100644 index 8e1075cad..000000000 --- a/FusionIIIT/applications/globals/migrations/0004_merge_20241115_1610.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-15 16:10 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('globals', '0003_auto_20241018_0342'), - ('globals', '0003_auto_20241017_0040'), - ('globals', '0003_auto_20241016_1905'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/globals/migrations/0005_auto_20241115_1710.py b/FusionIIIT/applications/globals/migrations/0005_auto_20241115_1710.py deleted file mode 100644 index 2ca02c1ba..000000000 --- a/FusionIIIT/applications/globals/migrations/0005_auto_20241115_1710.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-15 17:10 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('globals', '0004_merge_20241110_1253'), - ] - - operations = [ - migrations.AlterField( - model_name='extrainfo', - name='user_status', - field=models.CharField(choices=[('NEW', 'NEW'), ('PRESENT', 'PRESENT')], default='PRESENT', max_length=50), - ), - ] diff --git a/FusionIIIT/applications/globals/migrations/0005_merge_20241112_2008.py b/FusionIIIT/applications/globals/migrations/0005_merge_20241112_2008.py deleted file mode 100644 index 140ea7b4e..000000000 --- a/FusionIIIT/applications/globals/migrations/0005_merge_20241112_2008.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-12 20:08 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('globals', '0004_merge_20241107_1924'), - ('globals', '0003_auto_20241018_0342'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/globals/migrations/0006_auto_20241112_2009.py b/FusionIIIT/applications/globals/migrations/0006_auto_20241112_2009.py deleted file mode 100644 index 64401a1df..000000000 --- a/FusionIIIT/applications/globals/migrations/0006_auto_20241112_2009.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-12 20:09 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('globals', '0005_merge_20241112_2008'), - ] - - operations = [ - migrations.AlterField( - model_name='extrainfo', - name='user_status', - field=models.CharField(choices=[('NEW', 'NEW'), ('PRESENT', 'PRESENT')], default='PRESENT', max_length=50), - ), - ] diff --git a/FusionIIIT/applications/globals/migrations/0006_merge_20241116_0233.py b/FusionIIIT/applications/globals/migrations/0006_merge_20241116_0233.py deleted file mode 100644 index de98b241b..000000000 --- a/FusionIIIT/applications/globals/migrations/0006_merge_20241116_0233.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-16 02:33 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('globals', '0004_merge_20241115_1610'), - ('globals', '0005_auto_20241115_1710'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/globals/migrations/0006_merge_20241116_0303.py b/FusionIIIT/applications/globals/migrations/0006_merge_20241116_0303.py deleted file mode 100644 index a9fe8bc37..000000000 --- a/FusionIIIT/applications/globals/migrations/0006_merge_20241116_0303.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-16 03:03 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('globals', '0005_auto_20241115_1710'), - ('globals', '0004_merge_20241115_1610'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/globals/migrations/0007_merge_20241116_0248.py b/FusionIIIT/applications/globals/migrations/0007_merge_20241116_0248.py deleted file mode 100644 index 0e00a6d63..000000000 --- a/FusionIIIT/applications/globals/migrations/0007_merge_20241116_0248.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-16 02:48 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('globals', '0004_merge_20241115_1610'), - ('globals', '0005_auto_20241115_1710'), - ('globals', '0006_auto_20241112_2009'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/globals/migrations/0007_merge_20241118_1914.py b/FusionIIIT/applications/globals/migrations/0007_merge_20241118_1914.py deleted file mode 100644 index 3daa763cf..000000000 --- a/FusionIIIT/applications/globals/migrations/0007_merge_20241118_1914.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 19:14 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('globals', '0006_merge_20241116_0233'), - ('globals', '0006_merge_20241116_0303'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/globals/migrations/0008_merge_20241118_1545.py b/FusionIIIT/applications/globals/migrations/0008_merge_20241118_1545.py deleted file mode 100644 index e7efa718c..000000000 --- a/FusionIIIT/applications/globals/migrations/0008_merge_20241118_1545.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 15:45 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('globals', '0007_merge_20241116_0248'), - ('globals', '0006_merge_20241116_0233'), - ('globals', '0006_merge_20241116_0303'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/globals/migrations/0009_merge_20241118_2045.py b/FusionIIIT/applications/globals/migrations/0009_merge_20241118_2045.py deleted file mode 100644 index 868bd59b8..000000000 --- a/FusionIIIT/applications/globals/migrations/0009_merge_20241118_2045.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 20:45 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('globals', '0007_merge_20241118_1914'), - ('globals', '0008_merge_20241118_1545'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241012_1459.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241012_1459.py index df44824d3..d689e8177 100644 --- a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241012_1459.py +++ b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241012_1459.py @@ -12,6 +12,11 @@ class Migration(migrations.Migration): ] operations = [ + migrations.AddField( + model_name='attendance', + name='no_of_attendance', + field=models.IntegerField(default=1), + ), migrations.AlterField( model_name='attendance', name='present', @@ -22,4 +27,14 @@ class Migration(migrations.Migration): name='type_of_evaluation', field=models.CharField(max_length=100), ), + migrations.CreateModel( + name='StudentEvaluation', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), + ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), + ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), + ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), + ], + ), ] diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241016_1905.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241016_1905.py deleted file mode 100644 index 8ace64d21..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241016_1905.py +++ /dev/null @@ -1,25 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-16 19:05 - -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('academic_information', '0001_initial'), - ('online_cms', '0001_initial'), - ] - - operations = [ - migrations.AlterField( - model_name='attendance', - name='present', - field=models.IntegerField(default=0), - ), - migrations.AlterField( - model_name='gradingscheme', - name='type_of_evaluation', - field=models.CharField(max_length=100), - ), - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241017_0040.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241017_0040.py deleted file mode 100644 index 1669cce6d..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241017_0040.py +++ /dev/null @@ -1,40 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-17 00:40 - -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('academic_information', '0001_initial'), - ('online_cms', '0001_initial'), - ] - - operations = [ - migrations.AddField( - model_name='attendance', - name='no_of_attendance', - field=models.IntegerField(default=1), - ), - migrations.AlterField( - model_name='attendance', - name='present', - field=models.IntegerField(default=0), - ), - migrations.AlterField( - model_name='gradingscheme', - name='type_of_evaluation', - field=models.CharField(max_length=100), - ), - migrations.CreateModel( - name='StudentEvaluation', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), - ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), - ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), - ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), - ], - ), - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241018_0342.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241018_0342.py deleted file mode 100644 index 03a3ade92..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241018_0342.py +++ /dev/null @@ -1,25 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-18 03:42 - -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('academic_information', '0001_initial'), - ('online_cms', '0001_initial'), - ] - - operations = [ - migrations.AlterField( - model_name='attendance', - name='present', - field=models.IntegerField(default=0), - ), - migrations.AlterField( - model_name='gradingscheme', - name='type_of_evaluation', - field=models.CharField(max_length=100), - ), - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241116_1949.py b/FusionIIIT/applications/online_cms/migrations/0002_auto_20241116_1949.py deleted file mode 100644 index 4c7f63c70..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0002_auto_20241116_1949.py +++ /dev/null @@ -1,25 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-16 19:49 - -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('academic_information', '0001_initial'), - ('online_cms', '0001_initial'), - ] - - operations = [ - migrations.AlterField( - model_name='attendance', - name='present', - field=models.IntegerField(default=0), - ), - migrations.AlterField( - model_name='gradingscheme', - name='type_of_evaluation', - field=models.CharField(max_length=100), - ), - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0003_merge_20241023_1016.py b/FusionIIIT/applications/online_cms/migrations/0003_merge_20241023_1016.py deleted file mode 100644 index 6aa9527ed..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0003_merge_20241023_1016.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-23 10:16 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0002_auto_20241017_0040'), - ('online_cms', '0002_auto_20241016_1905'), - ('online_cms', '0002_auto_20241012_1459'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0003_merge_20241107_1924.py b/FusionIIIT/applications/online_cms/migrations/0003_merge_20241107_1924.py deleted file mode 100644 index 07560292a..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0003_merge_20241107_1924.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-07 19:24 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0002_auto_20241016_1905'), - ('online_cms', '0002_auto_20241017_0040'), - ('online_cms', '0002_auto_20241012_1459'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0003_merge_20241110_1253.py b/FusionIIIT/applications/online_cms/migrations/0003_merge_20241110_1253.py deleted file mode 100644 index 71e66ebb8..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0003_merge_20241110_1253.py +++ /dev/null @@ -1,16 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-10 12:53 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0002_auto_20241016_1905'), - ('online_cms', '0002_auto_20241012_1459'), - ('online_cms', '0002_auto_20241017_0040'), - ('online_cms', '0002_auto_20241018_0342'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0004_merge_20241112_2008.py b/FusionIIIT/applications/online_cms/migrations/0004_merge_20241112_2008.py deleted file mode 100644 index b2b96c455..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0004_merge_20241112_2008.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-12 20:08 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0002_auto_20241018_0342'), - ('online_cms', '0003_merge_20241107_1924'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0004_merge_20241115_1509.py b/FusionIIIT/applications/online_cms/migrations/0004_merge_20241115_1509.py deleted file mode 100644 index faea15c67..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0004_merge_20241115_1509.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-15 15:09 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0003_merge_20241023_1016'), - ('online_cms', '0002_auto_20241018_0342'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0233.py b/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0233.py deleted file mode 100644 index fcfdaf082..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0233.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-16 02:33 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0003_merge_20241110_1253'), - ('online_cms', '0004_merge_20241115_1509'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0248.py b/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0248.py deleted file mode 100644 index 647cb63f2..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0248.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-16 02:48 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0003_merge_20241110_1253'), - ('online_cms', '0004_merge_20241112_2008'), - ('online_cms', '0004_merge_20241115_1509'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0303.py b/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0303.py deleted file mode 100644 index 81b842c6f..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0005_merge_20241116_0303.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-16 03:03 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0003_merge_20241110_1253'), - ('online_cms', '0004_merge_20241115_1509'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1545.py b/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1545.py deleted file mode 100644 index cc2d9550a..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1545.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 15:45 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0005_merge_20241116_0303'), - ('online_cms', '0005_merge_20241116_0233'), - ('online_cms', '0005_merge_20241116_0248'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1914.py b/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1914.py deleted file mode 100644 index 408d4ddfd..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0006_merge_20241118_1914.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 19:14 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0005_merge_20241116_0303'), - ('online_cms', '0005_merge_20241116_0233'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0007_merge_20241118_2045.py b/FusionIIIT/applications/online_cms/migrations/0007_merge_20241118_2045.py deleted file mode 100644 index 36a6e925b..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0007_merge_20241118_2045.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 20:45 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0006_merge_20241118_1545'), - ('online_cms', '0006_merge_20241118_1914'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/online_cms/migrations/0008_merge_20241120_1733.py b/FusionIIIT/applications/online_cms/migrations/0008_merge_20241120_1733.py deleted file mode 100644 index 00cfec5cf..000000000 --- a/FusionIIIT/applications/online_cms/migrations/0008_merge_20241120_1733.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-20 17:33 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0002_auto_20241116_1949'), - ('online_cms', '0007_merge_20241118_2045'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/programme_curriculum/migrations/0002_auto_20250107_1408.py b/FusionIIIT/applications/programme_curriculum/migrations/0002_auto_20250107_1408.py deleted file mode 100644 index cbc53b2cf..000000000 --- a/FusionIIIT/applications/programme_curriculum/migrations/0002_auto_20250107_1408.py +++ /dev/null @@ -1,23 +0,0 @@ -# Generated by Django 3.1.5 on 2025-01-07 14:08 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('programme_curriculum', '0001_initial'), - ] - - operations = [ - migrations.AlterField( - model_name='batch', - name='year', - field=models.PositiveIntegerField(default=2025), - ), - migrations.AlterField( - model_name='programme', - name='programme_begin_year', - field=models.PositiveIntegerField(default=2025), - ), - ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0002_auto_20241016_1905.py b/FusionIIIT/applications/research_procedures/migrations/0002_auto_20241016_1905.py deleted file mode 100644 index 4973df44f..000000000 --- a/FusionIIIT/applications/research_procedures/migrations/0002_auto_20241016_1905.py +++ /dev/null @@ -1,19 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-16 19:05 - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('research_procedures', '0001_initial'), - ] - - operations = [ - migrations.AlterField( - model_name='staff_allocations', - name='start_date', - field=models.DateField(default=datetime.date(2024, 10, 16)), - ), - ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0002_auto_20241017_0040.py b/FusionIIIT/applications/research_procedures/migrations/0002_auto_20241017_0040.py deleted file mode 100644 index 837aff62b..000000000 --- a/FusionIIIT/applications/research_procedures/migrations/0002_auto_20241017_0040.py +++ /dev/null @@ -1,19 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-17 00:40 - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('research_procedures', '0001_initial'), - ] - - operations = [ - migrations.AlterField( - model_name='staff_allocations', - name='start_date', - field=models.DateField(default=datetime.date(2024, 10, 17)), - ), - ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0002_auto_20241018_0342.py b/FusionIIIT/applications/research_procedures/migrations/0002_auto_20241018_0342.py deleted file mode 100644 index 2995814f6..000000000 --- a/FusionIIIT/applications/research_procedures/migrations/0002_auto_20241018_0342.py +++ /dev/null @@ -1,19 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-18 03:42 - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('research_procedures', '0001_initial'), - ] - - operations = [ - migrations.AlterField( - model_name='staff_allocations', - name='start_date', - field=models.DateField(default=datetime.date(2024, 10, 18)), - ), - ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0003_merge_20241107_1924.py b/FusionIIIT/applications/research_procedures/migrations/0003_merge_20241107_1924.py deleted file mode 100644 index 6db9d739d..000000000 --- a/FusionIIIT/applications/research_procedures/migrations/0003_merge_20241107_1924.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-07 19:24 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('research_procedures', '0002_auto_20241016_1905'), - ('research_procedures', '0002_auto_20241017_0040'), - ('research_procedures', '0002_auto_20241012_1459'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0003_merge_20241110_1253.py b/FusionIIIT/applications/research_procedures/migrations/0003_merge_20241110_1253.py deleted file mode 100644 index a3e51d9b8..000000000 --- a/FusionIIIT/applications/research_procedures/migrations/0003_merge_20241110_1253.py +++ /dev/null @@ -1,16 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-10 12:53 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('research_procedures', '0002_auto_20241016_1905'), - ('research_procedures', '0002_auto_20241012_1459'), - ('research_procedures', '0002_auto_20241017_0040'), - ('research_procedures', '0002_auto_20241018_0342'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0003_merge_20241115_1509.py b/FusionIIIT/applications/research_procedures/migrations/0003_merge_20241115_1509.py deleted file mode 100644 index 8381a8a05..000000000 --- a/FusionIIIT/applications/research_procedures/migrations/0003_merge_20241115_1509.py +++ /dev/null @@ -1,16 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-15 15:09 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('research_procedures', '0002_auto_20241016_1905'), - ('research_procedures', '0002_auto_20241018_0342'), - ('research_procedures', '0002_auto_20241017_0040'), - ('research_procedures', '0002_auto_20241012_1459'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0004_merge_20241112_2008.py b/FusionIIIT/applications/research_procedures/migrations/0004_merge_20241112_2008.py deleted file mode 100644 index 37604956d..000000000 --- a/FusionIIIT/applications/research_procedures/migrations/0004_merge_20241112_2008.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-12 20:08 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('research_procedures', '0002_auto_20241018_0342'), - ('research_procedures', '0003_merge_20241107_1924'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0004_merge_20241116_0232.py b/FusionIIIT/applications/research_procedures/migrations/0004_merge_20241116_0232.py deleted file mode 100644 index cf6d2bf31..000000000 --- a/FusionIIIT/applications/research_procedures/migrations/0004_merge_20241116_0232.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-16 02:32 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('research_procedures', '0003_merge_20241115_1509'), - ('research_procedures', '0003_merge_20241110_1253'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0004_merge_20241116_0303.py b/FusionIIIT/applications/research_procedures/migrations/0004_merge_20241116_0303.py deleted file mode 100644 index 28e05c2c1..000000000 --- a/FusionIIIT/applications/research_procedures/migrations/0004_merge_20241116_0303.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-16 03:03 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('research_procedures', '0003_merge_20241110_1253'), - ('research_procedures', '0003_merge_20241115_1509'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0005_auto_20241112_2009.py b/FusionIIIT/applications/research_procedures/migrations/0005_auto_20241112_2009.py deleted file mode 100644 index 2ea053d3d..000000000 --- a/FusionIIIT/applications/research_procedures/migrations/0005_auto_20241112_2009.py +++ /dev/null @@ -1,19 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-12 20:09 - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('research_procedures', '0004_merge_20241112_2008'), - ] - - operations = [ - migrations.AlterField( - model_name='staff_allocations', - name='start_date', - field=models.DateField(default=datetime.date.today), - ), - ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0005_merge_20241118_1914.py b/FusionIIIT/applications/research_procedures/migrations/0005_merge_20241118_1914.py deleted file mode 100644 index 08ffed819..000000000 --- a/FusionIIIT/applications/research_procedures/migrations/0005_merge_20241118_1914.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 19:14 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('research_procedures', '0004_merge_20241116_0232'), - ('research_procedures', '0004_merge_20241116_0303'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0006_merge_20241116_0248.py b/FusionIIIT/applications/research_procedures/migrations/0006_merge_20241116_0248.py deleted file mode 100644 index 65fb6d2db..000000000 --- a/FusionIIIT/applications/research_procedures/migrations/0006_merge_20241116_0248.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-16 02:48 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('research_procedures', '0003_merge_20241110_1253'), - ('research_procedures', '0005_auto_20241112_2009'), - ('research_procedures', '0003_merge_20241115_1509'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0007_merge_20241118_1545.py b/FusionIIIT/applications/research_procedures/migrations/0007_merge_20241118_1545.py deleted file mode 100644 index 38db6a815..000000000 --- a/FusionIIIT/applications/research_procedures/migrations/0007_merge_20241118_1545.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 15:45 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('research_procedures', '0006_merge_20241116_0248'), - ('research_procedures', '0004_merge_20241116_0232'), - ('research_procedures', '0004_merge_20241116_0303'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/research_procedures/migrations/0008_merge_20241118_2044.py b/FusionIIIT/applications/research_procedures/migrations/0008_merge_20241118_2044.py deleted file mode 100644 index 3b84e23e9..000000000 --- a/FusionIIIT/applications/research_procedures/migrations/0008_merge_20241118_2044.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 20:44 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('research_procedures', '0007_merge_20241118_1545'), - ('research_procedures', '0005_merge_20241118_1914'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0002_auto_20241012_1459.py b/FusionIIIT/applications/scholarships/migrations/0002_auto_20241012_1459.py deleted file mode 100644 index d689e8177..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0002_auto_20241012_1459.py +++ /dev/null @@ -1,40 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-12 14:59 - -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('academic_information', '0001_initial'), - ('online_cms', '0001_initial'), - ] - - operations = [ - migrations.AddField( - model_name='attendance', - name='no_of_attendance', - field=models.IntegerField(default=1), - ), - migrations.AlterField( - model_name='attendance', - name='present', - field=models.IntegerField(default=0), - ), - migrations.AlterField( - model_name='gradingscheme', - name='type_of_evaluation', - field=models.CharField(max_length=100), - ), - migrations.CreateModel( - name='StudentEvaluation', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), - ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), - ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), - ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), - ], - ), - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0002_auto_20241016_1905.py b/FusionIIIT/applications/scholarships/migrations/0002_auto_20241016_1905.py deleted file mode 100644 index 90739623d..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0002_auto_20241016_1905.py +++ /dev/null @@ -1,40 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-16 19:05 - -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('academic_information', '0001_initial'), - ('online_cms', '0001_initial'), - ] - - operations = [ - migrations.AddField( - model_name='attendance', - name='no_of_attendance', - field=models.IntegerField(default=1), - ), - migrations.AlterField( - model_name='attendance', - name='present', - field=models.IntegerField(default=0), - ), - migrations.AlterField( - model_name='gradingscheme', - name='type_of_evaluation', - field=models.CharField(max_length=100), - ), - migrations.CreateModel( - name='StudentEvaluation', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), - ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), - ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), - ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), - ], - ), - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0002_auto_20241017_0040.py b/FusionIIIT/applications/scholarships/migrations/0002_auto_20241017_0040.py deleted file mode 100644 index 1669cce6d..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0002_auto_20241017_0040.py +++ /dev/null @@ -1,40 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-17 00:40 - -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('academic_information', '0001_initial'), - ('online_cms', '0001_initial'), - ] - - operations = [ - migrations.AddField( - model_name='attendance', - name='no_of_attendance', - field=models.IntegerField(default=1), - ), - migrations.AlterField( - model_name='attendance', - name='present', - field=models.IntegerField(default=0), - ), - migrations.AlterField( - model_name='gradingscheme', - name='type_of_evaluation', - field=models.CharField(max_length=100), - ), - migrations.CreateModel( - name='StudentEvaluation', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), - ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), - ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), - ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), - ], - ), - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0002_auto_20241018_0342.py b/FusionIIIT/applications/scholarships/migrations/0002_auto_20241018_0342.py deleted file mode 100644 index 3411068ae..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0002_auto_20241018_0342.py +++ /dev/null @@ -1,40 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-18 03:42 - -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('academic_information', '0001_initial'), - ('online_cms', '0001_initial'), - ] - - operations = [ - migrations.AddField( - model_name='attendance', - name='no_of_attendance', - field=models.IntegerField(default=1), - ), - migrations.AlterField( - model_name='attendance', - name='present', - field=models.IntegerField(default=0), - ), - migrations.AlterField( - model_name='gradingscheme', - name='type_of_evaluation', - field=models.CharField(max_length=100), - ), - migrations.CreateModel( - name='StudentEvaluation', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('marks', models.DecimalField(decimal_places=2, max_digits=10, null=True)), - ('total_marks', models.DecimalField(decimal_places=2, default=0, max_digits=10)), - ('evaluation_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='online_cms.gradingscheme')), - ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), - ], - ), - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0003_merge_20241023_1016.py b/FusionIIIT/applications/scholarships/migrations/0003_merge_20241023_1016.py deleted file mode 100644 index 6aa9527ed..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0003_merge_20241023_1016.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-23 10:16 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0002_auto_20241017_0040'), - ('online_cms', '0002_auto_20241016_1905'), - ('online_cms', '0002_auto_20241012_1459'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0003_merge_20241107_1924.py b/FusionIIIT/applications/scholarships/migrations/0003_merge_20241107_1924.py deleted file mode 100644 index 07560292a..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0003_merge_20241107_1924.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-07 19:24 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0002_auto_20241016_1905'), - ('online_cms', '0002_auto_20241017_0040'), - ('online_cms', '0002_auto_20241012_1459'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0003_merge_20241110_1253.py b/FusionIIIT/applications/scholarships/migrations/0003_merge_20241110_1253.py deleted file mode 100644 index 71e66ebb8..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0003_merge_20241110_1253.py +++ /dev/null @@ -1,16 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-10 12:53 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0002_auto_20241016_1905'), - ('online_cms', '0002_auto_20241012_1459'), - ('online_cms', '0002_auto_20241017_0040'), - ('online_cms', '0002_auto_20241018_0342'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0004_merge_20241112_2008.py b/FusionIIIT/applications/scholarships/migrations/0004_merge_20241112_2008.py deleted file mode 100644 index b2b96c455..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0004_merge_20241112_2008.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-12 20:08 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0002_auto_20241018_0342'), - ('online_cms', '0003_merge_20241107_1924'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0004_merge_20241115_1509.py b/FusionIIIT/applications/scholarships/migrations/0004_merge_20241115_1509.py deleted file mode 100644 index faea15c67..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0004_merge_20241115_1509.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-15 15:09 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0003_merge_20241023_1016'), - ('online_cms', '0002_auto_20241018_0342'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0233.py b/FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0233.py deleted file mode 100644 index fcfdaf082..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0233.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-16 02:33 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0003_merge_20241110_1253'), - ('online_cms', '0004_merge_20241115_1509'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0248.py b/FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0248.py deleted file mode 100644 index 647cb63f2..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0248.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-16 02:48 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0003_merge_20241110_1253'), - ('online_cms', '0004_merge_20241112_2008'), - ('online_cms', '0004_merge_20241115_1509'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0303.py b/FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0303.py deleted file mode 100644 index 81b842c6f..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0005_merge_20241116_0303.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-16 03:03 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0003_merge_20241110_1253'), - ('online_cms', '0004_merge_20241115_1509'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0006_merge_20241118_1545.py b/FusionIIIT/applications/scholarships/migrations/0006_merge_20241118_1545.py deleted file mode 100644 index cc2d9550a..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0006_merge_20241118_1545.py +++ /dev/null @@ -1,15 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 15:45 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0005_merge_20241116_0303'), - ('online_cms', '0005_merge_20241116_0233'), - ('online_cms', '0005_merge_20241116_0248'), - ] - - operations = [ - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0006_merge_20241118_1914.py b/FusionIIIT/applications/scholarships/migrations/0006_merge_20241118_1914.py deleted file mode 100644 index 408d4ddfd..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0006_merge_20241118_1914.py +++ /dev/null @@ -1,14 +0,0 @@ -# Generated by Django 3.1.5 on 2024-11-18 19:14 - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('online_cms', '0005_merge_20241116_0303'), - ('online_cms', '0005_merge_20241116_0233'), - ] - - operations = [ - ] diff --git a/FusionIIIT/manage.py b/FusionIIIT/manage.py index bb3479293..67748d20a 100755 --- a/FusionIIIT/manage.py +++ b/FusionIIIT/manage.py @@ -6,6 +6,4 @@ os.environ.setdefault("DJANGO_SETTINGS_MODULE", "Fusion.settings.development") from django.core.management import execute_from_command_line - - execute_from_command_line(sys.argv) From 6e218c43f144696fa6905748ebb20e9f44465bc5 Mon Sep 17 00:00:00 2001 From: Akash Paloju Date: Mon, 17 Feb 2025 19:22:04 +0530 Subject: [PATCH 28/37] Remove unwanted changes --- FusionIIIT/manage.py | 1 + FusionIIIT/package.json | 5 ----- 2 files changed, 1 insertion(+), 5 deletions(-) delete mode 100644 FusionIIIT/package.json diff --git a/FusionIIIT/manage.py b/FusionIIIT/manage.py index 67748d20a..c4bcdcbec 100755 --- a/FusionIIIT/manage.py +++ b/FusionIIIT/manage.py @@ -6,4 +6,5 @@ os.environ.setdefault("DJANGO_SETTINGS_MODULE", "Fusion.settings.development") from django.core.management import execute_from_command_line + execute_from_command_line(sys.argv) diff --git a/FusionIIIT/package.json b/FusionIIIT/package.json deleted file mode 100644 index 61f38f65b..000000000 --- a/FusionIIIT/package.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "dependencies": { - "jwt-decode": "^4.0.0" - } -} From d548e47cb1b2af0163e59f2a48c499e9af3bf849 Mon Sep 17 00:00:00 2001 From: Priyanshu <115771027+PriyanshuXcoder@users.noreply.github.com> Date: Tue, 18 Feb 2025 15:22:03 +0530 Subject: [PATCH 29/37] files api in backend (#14) --- .../applications/scholarships/api/views.py | 70 ++++++++++++++++++- FusionIIIT/applications/scholarships/urls.py | 9 +-- 2 files changed, 73 insertions(+), 6 deletions(-) diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index 6394dcd6f..a2b4dd8cd 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -5,13 +5,14 @@ from applications.scholarships.models import Previous_winner, Award_and_scholarship,Mcm,Director_gold,Notional_prize,Director_silver,Proficiency_dm,Release from rest_framework.views import APIView from rest_framework.response import Response +from rest_framework.permissions import IsAuthenticated from .serializers import DirectorSilverDecisionSerializer # Add this import from rest_framework import status from applications.academic_information.models import Spi, Student from applications.globals.models import (Designation, ExtraInfo, HoldsDesignation) from rest_framework import viewsets -from applications.scholarships.api.serializers import PreviousWinnerSerializer,AwardAndScholarshipSerializer,McmSerializer,NotionalPrizeSerializer,DirectorGoldSerializer,DirectorSilverSerializer,ProficiencyDmSerializer,ReleaseSerializer +from applications.scholarships.api.serializers import PreviousWinnerSerializer,AwardAndScholarshipSerializer,McmSerializer,NotionalPrizeSerializer,DirectorGoldSerializer,DirectorSilverSerializer,ProficiencyDmSerializer,ReleaseSerializer,McmStatusUpdateSerializer from django.shortcuts import get_object_or_404 #This api is for invite application @@ -473,4 +474,69 @@ def post(self, request, *args, **kwargs): return Response( {'result': 'Failure', 'error': 'No releases found for the specified award'}, status=status.HTTP_404_NOT_FOUND - ) \ No newline at end of file + ) + + +class McmDocumentsRetrieveView(APIView): + permission_classes = [IsAuthenticated] + + def post(self, request): + roll_number = request.data.get("roll") # Roll number from request body + + if not roll_number: + return Response({"detail": "Roll number is required."}, status=status.HTTP_400_BAD_REQUEST) + + mcm_instance = get_object_or_404(Mcm, student__id=roll_number) + + documents = { + "income_certificate": bytes(mcm_instance.income_certificate).decode('utf-8') if mcm_instance.income_certificate else None, + "marksheet": bytes(mcm_instance.Marksheet).decode('utf-8') if mcm_instance.Marksheet else None, + "bank_details": bytes(mcm_instance.Bank_details).decode('utf-8') if mcm_instance.Bank_details else None, + "affidavit": bytes(mcm_instance.Affidavit).decode('utf-8') if mcm_instance.Affidavit else None, + "aadhar_card": bytes(mcm_instance.Aadhar_card).decode('utf-8') if mcm_instance.Aadhar_card else None, + "fee_receipt": bytes(mcm_instance.Fee_Receipt).decode('utf-8') if mcm_instance.Fee_Receipt else None, + } + + return Response(documents, status=status.HTTP_200_OK) + +class DirectorSilverMarksheetView(APIView): + permission_classes = [IsAuthenticated] + + def post(self, request): + roll_number = request.data.get('roll') # Get roll number from POST request body + + if not roll_number: + return Response({"error": "Roll number is required"}, status=400) + + director_silver_entry = get_object_or_404(Director_silver, student_id=roll_number) + + marksheet_data = director_silver_entry.Marksheet + if marksheet_data: + marksheet_str = bytes(marksheet_data).decode('utf-8') # Convert memoryview to bytes first, then decode + else: + marksheet_str = None + + return Response({ + "marksheet": marksheet_str, + }) + +class DirectorGoldMarksheetView(APIView): + permission_classes = [IsAuthenticated] + + def post(self, request): + roll_number = request.data.get("roll") # Get roll number from POST request body + + if not roll_number: + return Response({"error": "Roll number is required"}, status=400) + + record = get_object_or_404(Director_gold, student_id=roll_number) + + marksheet_data = record.Marksheet + if marksheet_data: + marksheet_str = bytes(marksheet_data).decode('utf-8') # Convert memoryview to bytes first, then decode + else: + marksheet_str = None + + return Response({ + "marksheet": marksheet_str, + }, status=200) \ No newline at end of file diff --git a/FusionIIIT/applications/scholarships/urls.py b/FusionIIIT/applications/scholarships/urls.py index fd3319716..0768d2074 100755 --- a/FusionIIIT/applications/scholarships/urls.py +++ b/FusionIIIT/applications/scholarships/urls.py @@ -4,8 +4,8 @@ from . import views from applications.scholarships.api.views import GetWinnersView -from applications.scholarships.api.views import create_award,McmUpdateView, McmRetrieveView, DirectorSilverRetrieveView,DirectorSilverUpdateView,DirectorGoldRetrieveView,DirectorGoldUpdateView,ProficiencyDmRetrieveView,ProficiencyDmUpdateView,AwardAndScholarshipCreateView -from applications.scholarships.api.views import ScholarshipDetailView,StudentDetailView,DirectorSilverDetailView,DirectorGoldDetailView,DirectorGoldListView,ReleaseCreateView,McmStatusUpdateView,DirectorSilverDecisionView,DirectorGoldAcceptRejectView,DirectorSilverListView,GetReleaseByAwardView +from applications.scholarships.api.views import create_award,McmUpdateView, McmRetrieveView, DirectorSilverRetrieveView,DirectorSilverUpdateView,DirectorGoldRetrieveView,DirectorGoldUpdateView,ProficiencyDmRetrieveView,ProficiencyDmUpdateView,AwardAndScholarshipCreateView,DirectorSilverMarksheetView,DirectorGoldMarksheetView +from applications.scholarships.api.views import ScholarshipDetailView,StudentDetailView,DirectorSilverDetailView,DirectorGoldDetailView,DirectorGoldListView,ReleaseCreateView,McmStatusUpdateView,DirectorSilverDecisionView,DirectorGoldAcceptRejectView,DirectorSilverListView,GetReleaseByAwardView,McmDocumentsRetrieveView # ,DirectorSilverAcceptRejectView @@ -80,7 +80,8 @@ path('director-gold/accept-reject/', DirectorGoldAcceptRejectView.as_view(), name='director-gold-accept-reject'), path('director-silver/', DirectorSilverListView.as_view(), name='director-silver-list'), # path('director-silver/accept-reject/', DirectorSilverAcceptRejectView.as_view(), name='director-silver-accept-reject'), - - + path('mcm/documents/', McmDocumentsRetrieveView.as_view(), name='mcm-documents'), + path('medals/marksheet/', DirectorSilverMarksheetView.as_view(), name='director_silver_marksheet'), + path('medals/marksheet/gold/', DirectorGoldMarksheetView.as_view(), name='director_gold_marksheet'), ] \ No newline at end of file From f086415cd61f4fde5cf8d4e2b19309106a001b57 Mon Sep 17 00:00:00 2001 From: Akash Paloju Date: Fri, 14 Mar 2025 23:45:14 +0530 Subject: [PATCH 30/37] make backend changes for convocation models and mcm --- .../applications/scholarships/api/urls.py | 6 +- .../applications/scholarships/api/views.py | 8 + .../scholarships/migrations/0001_initial.py | 233 ++++++++++++++++++ .../migrations/0002_auto_20250313_2341.py | 106 ++++++++ .../migrations/0003_auto_20250313_2358.py | 58 +++++ .../migrations/0004_auto_20250314_0154.py | 64 +++++ .../scholarships/migrations/__init__.py | 0 .../applications/scholarships/models.py | 40 +-- 8 files changed, 493 insertions(+), 22 deletions(-) create mode 100644 FusionIIIT/applications/scholarships/migrations/0001_initial.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0002_auto_20250313_2341.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0003_auto_20250313_2358.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0004_auto_20250314_0154.py create mode 100644 FusionIIIT/applications/scholarships/migrations/__init__.py diff --git a/FusionIIIT/applications/scholarships/api/urls.py b/FusionIIIT/applications/scholarships/api/urls.py index 328404f51..630953067 100644 --- a/FusionIIIT/applications/scholarships/api/urls.py +++ b/FusionIIIT/applications/scholarships/api/urls.py @@ -1,7 +1,9 @@ from django.conf.urls import url from . import views - +from applications.scholarships.api.views import GetWinnersView +from applications.scholarships.api.views import create_award,McmUpdateView, McmRetrieveView, DirectorSilverRetrieveView,DirectorSilverUpdateView,DirectorGoldRetrieveView,DirectorGoldUpdateView,ProficiencyDmRetrieveView,ProficiencyDmUpdateView,AwardAndScholarshipCreateView,DirectorSilverMarksheetView,DirectorGoldMarksheetView +from applications.scholarships.api.views import ScholarshipDetailView,StudentDetailView,DirectorSilverDetailView,DirectorGoldDetailView,DirectorGoldListView,ReleaseCreateView,McmStatusUpdateView,DirectorSilverDecisionView,DirectorGoldAcceptRejectView,DirectorSilverListView,GetReleaseByAwardView,McmDocumentsRetrieveView app_name = 'spacs' urlpatterns = [ @@ -17,6 +19,6 @@ # url(r'^getConvocationFlag/$', views.getConvocationFlag, name='getConvocationFlag'), # url(r'^getContent/$', views.getContent, name='getContent'), # url(r'^updateEndDate/$', views.updateEndDate, name='updateEndDate'), - path('get-winners/', GetWinnersView.as_view(), name='get-winners') + url('get-winners/', GetWinnersView.as_view(), name='get-winners') ] \ No newline at end of file diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index a2b4dd8cd..8b2255a4b 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -14,6 +14,7 @@ from rest_framework import viewsets from applications.scholarships.api.serializers import PreviousWinnerSerializer,AwardAndScholarshipSerializer,McmSerializer,NotionalPrizeSerializer,DirectorGoldSerializer,DirectorSilverSerializer,ProficiencyDmSerializer,ReleaseSerializer,McmStatusUpdateSerializer from django.shortcuts import get_object_or_404 +import datetime #This api is for invite application class ReleaseCreateView(APIView): @@ -102,6 +103,8 @@ def post(self, request, *args, **kwargs): class McmUpdateView(APIView): def post(self, request): + print(request.data) + request.data['student']=request.user.username serializer = McmSerializer(data=request.data) if serializer.is_valid(): mcm_instance = serializer.save() @@ -145,6 +148,8 @@ def post(self, request): class DirectorSilverUpdateView(APIView): def post(self, request): + request.data['student']=request.user.username + request.data['date']= datetime.date.today() serializer = DirectorSilverSerializer(data=request.data) if serializer.is_valid(): director_silver_instance = serializer.save() @@ -170,6 +175,7 @@ def post(self, request): class DirectorGoldUpdateView(APIView): def post(self, request): + request.data['student']=request.user.username serializer = DirectorGoldSerializer(data=request.data) if serializer.is_valid(): director_gold_instance = serializer.save() @@ -179,6 +185,8 @@ def post(self, request): class ProficiencyDmUpdateView(APIView): def post(self, request): + request.data['student']=request.user.username + print(request.data) serializer = ProficiencyDmSerializer(data=request.data) if serializer.is_valid(): proficiency_dm_instance = serializer.save() diff --git a/FusionIIIT/applications/scholarships/migrations/0001_initial.py b/FusionIIIT/applications/scholarships/migrations/0001_initial.py new file mode 100644 index 000000000..7e1962c88 --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0001_initial.py @@ -0,0 +1,233 @@ +# Generated by Django 3.1.5 on 2024-07-16 15:44 + +import datetime +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ('academic_information', '0001_initial'), + ('globals', '0001_initial'), + ] + + operations = [ + migrations.CreateModel( + name='Award_and_scholarship', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('award_name', models.CharField(default='', max_length=100)), + ('catalog', models.TextField(max_length=5000)), + ], + options={ + 'db_table': 'Award_and_scholarship', + }, + ), + migrations.CreateModel( + name='Release', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('date_time', models.DateTimeField(blank=True, default=datetime.datetime.now)), + ('programme', models.CharField(default='B.Tech', max_length=10)), + ('startdate', models.DateField(default=datetime.date.today)), + ('enddate', models.DateField()), + ('award', models.CharField(default='', max_length=50)), + ('remarks', models.TextField(default='', max_length=500)), + ('batch', models.TextField(default='all')), + ('notif_visible', models.IntegerField(default=1)), + ], + options={ + 'db_table': 'Release', + }, + ), + migrations.CreateModel( + name='Proficiency_dm', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('relevant_document', models.FileField(blank=True, null=True, upload_to='')), + ('title_name', models.CharField(max_length=30, null=True)), + ('award_type', models.CharField(max_length=50, null=True)), + ('status', models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT')], default='INCOMPLETE', max_length=10)), + ('no_of_students', models.IntegerField(default=1)), + ('date', models.DateField(default=datetime.date.today)), + ('roll_no1', models.IntegerField(default=0)), + ('roll_no2', models.IntegerField(default=0)), + ('roll_no3', models.IntegerField(default=0)), + ('roll_no4', models.IntegerField(default=0)), + ('roll_no5', models.IntegerField(default=0)), + ('brief_description', models.TextField(max_length=1000, null=True)), + ('justification', models.TextField(max_length=1000, null=True)), + ('ece_topic', models.CharField(max_length=25, null=True)), + ('cse_topic', models.CharField(max_length=25, null=True)), + ('mech_topic', models.CharField(max_length=25, null=True)), + ('design_topic', models.CharField(max_length=25, null=True)), + ('ece_percentage', models.IntegerField(null=True)), + ('cse_percentage', models.IntegerField(null=True)), + ('mech_percentage', models.IntegerField(null=True)), + ('design_percentage', models.IntegerField(null=True)), + ('correspondence_address', models.CharField(max_length=100, null=True)), + ('financial_assistance', models.TextField(max_length=1000, null=True)), + ('grand_total', models.IntegerField(null=True)), + ('nearest_policestation', models.CharField(max_length=25, null=True)), + ('nearest_railwaystation', models.CharField(max_length=25, null=True)), + ('award_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='scholarships.award_and_scholarship')), + ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), + ], + options={ + 'db_table': 'Proficiency_dm', + }, + ), + migrations.CreateModel( + name='Previous_winner', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('programme', models.CharField(default='B.Tech', max_length=10)), + ('year', models.IntegerField(default=2024)), + ('award_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='scholarships.award_and_scholarship')), + ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), + ], + options={ + 'db_table': 'Previous_winner', + }, + ), + migrations.CreateModel( + name='Notional_prize', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('spi', models.FloatField()), + ('cpi', models.FloatField()), + ('year', models.CharField(choices=[('UG1', 'UG1'), ('UG2', 'UG2'), ('UG3', 'UG3'), ('UG4', 'UG4'), ('PG1', 'PG1'), ('PG2', 'PG2')], max_length=10)), + ('award_id', models.ForeignKey(default=4, on_delete=django.db.models.deletion.CASCADE, to='scholarships.award_and_scholarship')), + ], + options={ + 'db_table': 'Notional_prize', + }, + ), + migrations.CreateModel( + name='Notification', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('notification_mcm_flag', models.BooleanField(default=False)), + ('notification_convocation_flag', models.BooleanField(default=False)), + ('invite_mcm_accept_flag', models.BooleanField(default=False)), + ('invite_convocation_accept_flag', models.BooleanField(default=False)), + ('release_id', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, to='scholarships.release')), + ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), + ], + options={ + 'db_table': 'Notification', + }, + ), + migrations.CreateModel( + name='Mcm', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('brother_name', models.CharField(max_length=30, null=True)), + ('brother_occupation', models.TextField(max_length=100, null=True)), + ('sister_name', models.CharField(max_length=30, null=True)), + ('sister_occupation', models.TextField(max_length=100, null=True)), + ('income_father', models.IntegerField(default=0)), + ('income_mother', models.IntegerField(default=0)), + ('income_other', models.IntegerField(default=0)), + ('father_occ', models.CharField(choices=[('government', 'Government'), ('private', 'Private'), ('public', 'Public'), ('business', 'Business'), ('medical', 'Medical'), ('consultant', 'Consultant'), ('pensioners', 'Pensioners')], default='', max_length=10)), + ('mother_occ', models.CharField(choices=[('EMPLOYED', 'EMPLOYED'), ('HOUSE_WIFE', 'HOUSE_WIFE')], default='', max_length=10)), + ('father_occ_desc', models.CharField(max_length=30, null=True)), + ('mother_occ_desc', models.CharField(max_length=30, null=True)), + ('four_wheeler', models.IntegerField(blank=True, null=True)), + ('four_wheeler_desc', models.CharField(max_length=30, null=True)), + ('two_wheeler', models.IntegerField(blank=True, null=True)), + ('two_wheeler_desc', models.CharField(max_length=30, null=True)), + ('house', models.CharField(max_length=10, null=True)), + ('plot_area', models.IntegerField(blank=True, null=True)), + ('constructed_area', models.IntegerField(blank=True, null=True)), + ('school_fee', models.IntegerField(blank=True, null=True)), + ('school_name', models.CharField(max_length=30, null=True)), + ('bank_name', models.CharField(max_length=100, null=True)), + ('loan_amount', models.IntegerField(blank=True, null=True)), + ('college_fee', models.IntegerField(blank=True, null=True)), + ('college_name', models.CharField(max_length=30, null=True)), + ('income_certificate', models.FileField(blank=True, null=True, upload_to='')), + ('forms', models.FileField(blank=True, null=True, upload_to='')), + ('status', models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT')], default='INCOMPLETE', max_length=10)), + ('annual_income', models.IntegerField(default=0)), + ('date', models.DateField(default=datetime.date.today)), + ('award_id', models.ForeignKey(default=4, on_delete=django.db.models.deletion.CASCADE, to='scholarships.award_and_scholarship')), + ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='mcm_info', to='academic_information.student')), + ], + options={ + 'db_table': 'Mcm', + }, + ), + migrations.CreateModel( + name='Director_silver', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('nearest_policestation', models.TextField(default='station', max_length=30)), + ('nearest_railwaystation', models.TextField(default='station', max_length=30)), + ('correspondence_address', models.TextField(max_length=150, null=True)), + ('award_type', models.CharField(max_length=50, null=True)), + ('status', models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT')], default='INCOMPLETE', max_length=10)), + ('relevant_document', models.FileField(blank=True, null=True, upload_to='')), + ('date', models.DateField(default=datetime.date.today)), + ('financial_assistance', models.TextField(max_length=1000, null=True)), + ('grand_total', models.IntegerField(null=True)), + ('inside_achievements', models.TextField(max_length=1000, null=True)), + ('justification', models.TextField(max_length=1000, null=True)), + ('outside_achievements', models.TextField(max_length=1000, null=True)), + ('award_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='scholarships.award_and_scholarship')), + ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), + ], + options={ + 'db_table': 'Director_silver', + }, + ), + migrations.CreateModel( + name='Director_gold', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('status', models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT')], default='INCOMPLETE', max_length=10)), + ('relevant_document', models.FileField(blank=True, null=True, upload_to='')), + ('date', models.DateField(default=datetime.date.today)), + ('academic_achievements', models.TextField(max_length=1000, null=True)), + ('science_inside', models.TextField(max_length=1000, null=True)), + ('science_outside', models.TextField(max_length=1000, null=True)), + ('games_inside', models.TextField(max_length=1000, null=True)), + ('games_outside', models.TextField(max_length=1000, null=True)), + ('cultural_inside', models.TextField(max_length=1000, null=True)), + ('cultural_outside', models.TextField(max_length=1000, null=True)), + ('social', models.TextField(max_length=1000, null=True)), + ('corporate', models.TextField(max_length=1000, null=True)), + ('hall_activities', models.TextField(max_length=1000, null=True)), + ('gymkhana_activities', models.TextField(max_length=1000, null=True)), + ('institute_activities', models.TextField(max_length=1000, null=True)), + ('counselling_activities', models.TextField(max_length=1000, null=True)), + ('other_activities', models.TextField(max_length=1000, null=True)), + ('justification', models.TextField(max_length=1000, null=True)), + ('correspondence_address', models.CharField(max_length=100, null=True)), + ('financial_assistance', models.TextField(max_length=1000, null=True)), + ('grand_total', models.IntegerField(null=True)), + ('nearest_policestation', models.CharField(max_length=25, null=True)), + ('nearest_railwaystation', models.CharField(max_length=25, null=True)), + ('award_id', models.ForeignKey(default=4, on_delete=django.db.models.deletion.CASCADE, to='scholarships.award_and_scholarship')), + ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='academic_information.student')), + ], + options={ + 'db_table': 'Director_gold', + }, + ), + migrations.CreateModel( + name='Application', + fields=[ + ('application_id', models.CharField(max_length=100, primary_key=True, serialize=False)), + ('applied_flag', models.BooleanField(default=False)), + ('award', models.CharField(max_length=30)), + ('student_id', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='globals.extrainfo')), + ], + options={ + 'db_table': 'Application', + }, + ), + ] diff --git a/FusionIIIT/applications/scholarships/migrations/0002_auto_20250313_2341.py b/FusionIIIT/applications/scholarships/migrations/0002_auto_20250313_2341.py new file mode 100644 index 000000000..655e43fee --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0002_auto_20250313_2341.py @@ -0,0 +1,106 @@ +# Generated by Django 3.1.5 on 2025-03-13 23:41 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('scholarships', '0001_initial'), + ] + + operations = [ + migrations.RemoveField( + model_name='director_gold', + name='relevant_document', + ), + migrations.RemoveField( + model_name='director_silver', + name='relevant_document', + ), + migrations.RemoveField( + model_name='proficiency_dm', + name='relevant_document', + ), + migrations.AddField( + model_name='director_gold', + name='Marksheet', + field=models.FileField(default='', upload_to=''), + ), + migrations.AddField( + model_name='director_silver', + name='Marksheet', + field=models.FileField(default='', upload_to=''), + ), + migrations.AddField( + model_name='mcm', + name='Aadhar_card', + field=models.FileField(default='', upload_to=''), + ), + migrations.AddField( + model_name='mcm', + name='Affidavit', + field=models.FileField(default='', upload_to=''), + ), + migrations.AddField( + model_name='mcm', + name='Bank_details', + field=models.FileField(default='', upload_to=''), + ), + migrations.AddField( + model_name='mcm', + name='Fee_Receipt', + field=models.FileField(default='', upload_to=''), + ), + migrations.AddField( + model_name='mcm', + name='Marksheet', + field=models.FileField(default='', upload_to=''), + ), + migrations.AddField( + model_name='proficiency_dm', + name='Marksheet', + field=models.FileField(default='', upload_to=''), + ), + migrations.AlterField( + model_name='director_gold', + name='status', + field=models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT'), ('ACCEPT', 'Accept'), ('REJECT', 'Reject'), ('ACCEPTED', 'Accepted'), ('REJECTED', 'Rejected'), ('UNDER_REVIEW', 'Under Review')], default='INCOMPLETE', max_length=20), + ), + migrations.AlterField( + model_name='director_silver', + name='award_id', + field=models.ForeignKey(default=3, on_delete=django.db.models.deletion.CASCADE, to='scholarships.award_and_scholarship'), + ), + migrations.AlterField( + model_name='director_silver', + name='status', + field=models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT'), ('ACCEPT', 'Accept'), ('REJECT', 'Reject'), ('ACCEPTED', 'Accepted'), ('REJECTED', 'Rejected'), ('UNDER_REVIEW', 'Under Review')], default='INCOMPLETE', max_length=20), + ), + migrations.AlterField( + model_name='mcm', + name='forms', + field=models.CharField(blank=True, max_length=100, null=True), + ), + migrations.AlterField( + model_name='mcm', + name='income_certificate', + field=models.FileField(default='', upload_to=''), + ), + migrations.AlterField( + model_name='mcm', + name='status', + field=models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT'), ('ACCEPT', 'Accept'), ('REJECT', 'Reject'), ('ACCEPTED', 'Accepted'), ('REJECTED', 'Rejected'), ('UNDER_REVIEW', 'Under Review')], default='INCOMPLETE', max_length=20), + ), + migrations.AlterField( + model_name='previous_winner', + name='year', + field=models.IntegerField(default=2025), + ), + migrations.AlterField( + model_name='proficiency_dm', + name='status', + field=models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT'), ('ACCEPT', 'Accept'), ('REJECT', 'Reject'), ('ACCEPTED', 'Accepted'), ('REJECTED', 'Rejected'), ('UNDER_REVIEW', 'Under Review')], default='INCOMPLETE', max_length=20), + ), + ] diff --git a/FusionIIIT/applications/scholarships/migrations/0003_auto_20250313_2358.py b/FusionIIIT/applications/scholarships/migrations/0003_auto_20250313_2358.py new file mode 100644 index 000000000..6e560df87 --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0003_auto_20250313_2358.py @@ -0,0 +1,58 @@ +# Generated by Django 3.1.5 on 2025-03-13 23:58 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('scholarships', '0002_auto_20250313_2341'), + ] + + operations = [ + migrations.AlterField( + model_name='director_gold', + name='Marksheet', + field=models.FileField(default='', upload_to='scholarships/director_gold/marksheet/'), + ), + migrations.AlterField( + model_name='director_silver', + name='Marksheet', + field=models.FileField(default='', upload_to='scholarships/director_silver/marksheet/'), + ), + migrations.AlterField( + model_name='mcm', + name='Aadhar_card', + field=models.FileField(default='', upload_to='scholarships/mcm/aadhar_card/'), + ), + migrations.AlterField( + model_name='mcm', + name='Affidavit', + field=models.FileField(default='', upload_to='scholarships/mcm/affidavit/'), + ), + migrations.AlterField( + model_name='mcm', + name='Bank_details', + field=models.FileField(default='', upload_to='scholarships/mcm/bank_details/'), + ), + migrations.AlterField( + model_name='mcm', + name='Fee_Receipt', + field=models.FileField(default='', upload_to='scholarships/mcm/fee_receipt/'), + ), + migrations.AlterField( + model_name='mcm', + name='Marksheet', + field=models.FileField(default='', upload_to='scholarships/mcm/marksheet/'), + ), + migrations.AlterField( + model_name='mcm', + name='income_certificate', + field=models.FileField(default='', upload_to='scholarships/mcm/income_certificate/'), + ), + migrations.AlterField( + model_name='proficiency_dm', + name='Marksheet', + field=models.FileField(default='', upload_to='scholarships/proficiency_dm/marksheet/'), + ), + ] diff --git a/FusionIIIT/applications/scholarships/migrations/0004_auto_20250314_0154.py b/FusionIIIT/applications/scholarships/migrations/0004_auto_20250314_0154.py new file mode 100644 index 000000000..82549bdb4 --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0004_auto_20250314_0154.py @@ -0,0 +1,64 @@ +# Generated by Django 3.1.5 on 2025-03-14 01:54 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('scholarships', '0003_auto_20250313_2358'), + ] + + operations = [ + migrations.AlterField( + model_name='proficiency_dm', + name='award_id', + field=models.ForeignKey(default=4, on_delete=django.db.models.deletion.CASCADE, to='scholarships.award_and_scholarship'), + ), + migrations.AlterField( + model_name='proficiency_dm', + name='cse_percentage', + field=models.FloatField(null=True), + ), + migrations.AlterField( + model_name='proficiency_dm', + name='design_percentage', + field=models.FloatField(null=True), + ), + migrations.AlterField( + model_name='proficiency_dm', + name='ece_percentage', + field=models.FloatField(null=True), + ), + migrations.AlterField( + model_name='proficiency_dm', + name='mech_percentage', + field=models.FloatField(null=True), + ), + migrations.AlterField( + model_name='proficiency_dm', + name='roll_no1', + field=models.CharField(max_length=30, null=True), + ), + migrations.AlterField( + model_name='proficiency_dm', + name='roll_no2', + field=models.CharField(max_length=30, null=True), + ), + migrations.AlterField( + model_name='proficiency_dm', + name='roll_no3', + field=models.CharField(max_length=30, null=True), + ), + migrations.AlterField( + model_name='proficiency_dm', + name='roll_no4', + field=models.CharField(max_length=30, null=True), + ), + migrations.AlterField( + model_name='proficiency_dm', + name='roll_no5', + field=models.CharField(max_length=30, null=True), + ), + ] diff --git a/FusionIIIT/applications/scholarships/migrations/__init__.py b/FusionIIIT/applications/scholarships/migrations/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/FusionIIIT/applications/scholarships/models.py b/FusionIIIT/applications/scholarships/models.py index 74c31205e..c783301e5 100755 --- a/FusionIIIT/applications/scholarships/models.py +++ b/FusionIIIT/applications/scholarships/models.py @@ -112,12 +112,12 @@ class Mcm(models.Model): loan_amount = models.IntegerField(blank=True, null=True) college_fee = models.IntegerField(blank=True, null=True) college_name = models.CharField(max_length=30, null=True) - income_certificate = models.BinaryField(null=False, blank=False) - Marksheet = models.BinaryField(null=False, blank=False) - Bank_details = models.BinaryField(null=False, blank=False) - Affidavit = models.BinaryField(null=False, blank=False) - Aadhar_card = models.BinaryField(null=False, blank=False) - Fee_Receipt = models.BinaryField(null=False, blank=False) + income_certificate = models.FileField(null=False, blank=False, default='', upload_to='scholarships/mcm/income_certificate/') + Marksheet = models.FileField(null=False, blank=False, default='', upload_to='scholarships/mcm/marksheet/') + Bank_details = models.FileField(null=False, blank=False, default='', upload_to='scholarships/mcm/bank_details/') + Affidavit = models.FileField(null=False, blank=False, default='', upload_to='scholarships/mcm/affidavit/') + Aadhar_card = models.FileField(null=False, blank=False, default='', upload_to='scholarships/mcm/aadhar_card/') + Fee_Receipt = models.FileField(null=False, blank=False, default='', upload_to='scholarships/mcm/fee_receipt/') forms = models.CharField(max_length=100, null=True, blank=True) status = models.CharField(max_length=20, choices=Constants.STATUS_CHOICES, default='INCOMPLETE') student = models.ForeignKey(Student, @@ -199,10 +199,10 @@ class Director_silver(models.Model): nearest_railwaystation = models.TextField(max_length=30, default='station') correspondence_address = models.TextField(max_length=150, null=True) student = models.ForeignKey(Student, on_delete=models.CASCADE) - award_id = models.ForeignKey(Award_and_scholarship, on_delete=models.CASCADE) + award_id = models.ForeignKey(Award_and_scholarship, on_delete=models.CASCADE, default=3) award_type = models.CharField(max_length=50, null=True) status = models.CharField(max_length=20, choices=Constants.STATUS_CHOICES,default='INCOMPLETE') - Marksheet = models.BinaryField(null=False, blank=False) + Marksheet = models.FileField(null=False, blank=False, default='', upload_to='scholarships/director_silver/marksheet/') date = models.DateField(default=datetime.date.today) financial_assistance = models.TextField(max_length=1000 ,null=True) grand_total = models.IntegerField(null=True) @@ -216,10 +216,10 @@ class Meta: class Proficiency_dm(models.Model): - Marksheet = models.FileField(null=False, blank=False) + Marksheet = models.FileField(null=False, blank=False, default='', upload_to='scholarships/proficiency_dm/marksheet/') title_name = models.CharField(max_length=30, null=True) student = models.ForeignKey(Student, on_delete=models.CASCADE) - award_id = models.ForeignKey(Award_and_scholarship, on_delete=models.CASCADE) + award_id = models.ForeignKey(Award_and_scholarship, on_delete=models.CASCADE, default=4) award_type = models.CharField(max_length=50, null=True) status = models.CharField(max_length=20, choices=Constants.STATUS_CHOICES,default='INCOMPLETE') nearest_policestation = models.TextField(max_length=30, default='station') @@ -227,11 +227,11 @@ class Proficiency_dm(models.Model): correspondence_address = models.TextField(max_length=150, null=True) no_of_students = models.IntegerField(default=1) date = models.DateField(default=datetime.date.today) - roll_no1 = models.IntegerField(default=0) - roll_no2 = models.IntegerField(default=0) - roll_no3 = models.IntegerField(default=0) - roll_no4 = models.IntegerField(default=0) - roll_no5 = models.IntegerField(default=0) + roll_no1 = models.CharField(max_length=30, null=True) + roll_no2 = models.CharField(max_length=30, null=True) + roll_no3 = models.CharField(max_length=30, null=True) + roll_no4 = models.CharField(max_length=30, null=True) + roll_no5 = models.CharField(max_length=30, null=True) financial_assistance = models.TextField(max_length=1000 ,null=True) brief_description = models.TextField(max_length=1000 ,null=True) justification = models.TextField(max_length=1000 ,null=True) @@ -240,10 +240,10 @@ class Proficiency_dm(models.Model): cse_topic = models.CharField(max_length=25,null=True) mech_topic = models.CharField(max_length=25,null=True) design_topic = models.CharField(max_length=25,null=True) - ece_percentage = models.IntegerField(null=True) - cse_percentage = models.IntegerField(null=True) - mech_percentage = models.IntegerField(null=True) - design_percentage = models.IntegerField(null=True) + ece_percentage = models.FloatField(null=True) + cse_percentage = models.FloatField(null=True) + mech_percentage = models.FloatField(null=True) + design_percentage = models.FloatField(null=True) correspondence_address = models.CharField(max_length=100, null=True) financial_assistance = models.TextField(max_length=1000, null=True) grand_total = models.IntegerField(null=True) @@ -261,7 +261,7 @@ class Director_gold(models.Model): correspondence_address = models.TextField(max_length=40, default='address') nearest_policestation = models.TextField(max_length=30, default='station') nearest_railwaystation = models.TextField(max_length=30, default='station') - Marksheet = models.FileField(null=False, blank=False) + Marksheet = models.FileField(null=False, blank=False, default='', upload_to='scholarships/director_gold/marksheet/') date = models.DateField(default=datetime.date.today) award_id = models.ForeignKey(Award_and_scholarship, default=4, on_delete=models.CASCADE) financial_assistance = models.TextField(max_length=1000 ,null=True) From 84c7889817038faf21f1362641971fbc7d7dae4b Mon Sep 17 00:00:00 2001 From: Akash Paloju Date: Sat, 15 Mar 2025 00:40:18 +0530 Subject: [PATCH 31/37] Add dm-proficiency apis --- .../scholarships/api/serializers.py | 10 +++++- .../applications/scholarships/api/views.py | 34 ++++++++++++++++++- FusionIIIT/applications/scholarships/urls.py | 6 ++-- 3 files changed, 46 insertions(+), 4 deletions(-) diff --git a/FusionIIIT/applications/scholarships/api/serializers.py b/FusionIIIT/applications/scholarships/api/serializers.py index 722fa6f30..6ef938c71 100644 --- a/FusionIIIT/applications/scholarships/api/serializers.py +++ b/FusionIIIT/applications/scholarships/api/serializers.py @@ -28,7 +28,15 @@ def validate_status(self, value): raise serializers.ValidationError("Status must be either 'ACCEPTED' or 'REJECTED'.") return value - +class DMProficiencyDecisionSerializer(serializers.ModelSerializer): + class Meta: + model = Proficiency_dm + fields = ['id', 'status'] + + def validate_status(self, value): + if value not in ['ACCEPTED', 'REJECTED']: + raise serializers.ValidationError("Status must be either 'ACCEPTED' or 'REJECTED'.") + return value class ReleaseSerializer(serializers.ModelSerializer): diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index 8b2255a4b..7b2f9a188 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -6,7 +6,7 @@ from rest_framework.views import APIView from rest_framework.response import Response from rest_framework.permissions import IsAuthenticated -from .serializers import DirectorSilverDecisionSerializer # Add this import +from .serializers import DirectorSilverDecisionSerializer, DMProficiencyDecisionSerializer from rest_framework import status from applications.academic_information.models import Spi, Student from applications.globals.models import (Designation, ExtraInfo, @@ -229,6 +229,15 @@ def get(self, request): serializer = DirectorGoldSerializer(director_gold_entries, many=True) # Return the serialized data as a response return Response(serializer.data, status=status.HTTP_200_OK) + +class DMProficiencyListView(APIView): + def get(self, request): + # Fetch all entries + proficiency_dm_entries = Proficiency_dm.objects.all() + # Serialize all entries + serializer = ProficiencyDmSerializer(proficiency_dm_entries, many=True) + # Return the serialized data as a response + return Response(serializer.data, status=status.HTTP_200_OK) @@ -372,6 +381,29 @@ def post(self, request): return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) +class DMProficiencyDecisionView(APIView): + def post(self, request): + # Deserialize the request data + serializer = DMProficiencyDecisionSerializer(data=request.data) + + if serializer.is_valid(): + try: + # Retrieve the Proficiency_dm instance using the provided id + proficiency_dm = Proficiency_dm.objects.get(id=request.data['id']) + + # Update the status field + proficiency_dm.status = serializer.validated_data['status'] + proficiency_dm.save() + + return Response({"message": f"Application has been {proficiency_dm.status.lower()}."}, + status=status.HTTP_200_OK) + + except Proficiency_dm.DoesNotExist: + return Response({"error": "Proficiency_dm entry not found."}, + status=status.HTTP_404_NOT_FOUND) + + # If the data is invalid + return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) ##This api for Director gold accepting and rejecting the application by convenor and assistant class DirectorGoldAcceptRejectView(APIView): diff --git a/FusionIIIT/applications/scholarships/urls.py b/FusionIIIT/applications/scholarships/urls.py index 0768d2074..5c9845b97 100755 --- a/FusionIIIT/applications/scholarships/urls.py +++ b/FusionIIIT/applications/scholarships/urls.py @@ -5,7 +5,7 @@ from . import views from applications.scholarships.api.views import GetWinnersView from applications.scholarships.api.views import create_award,McmUpdateView, McmRetrieveView, DirectorSilverRetrieveView,DirectorSilverUpdateView,DirectorGoldRetrieveView,DirectorGoldUpdateView,ProficiencyDmRetrieveView,ProficiencyDmUpdateView,AwardAndScholarshipCreateView,DirectorSilverMarksheetView,DirectorGoldMarksheetView -from applications.scholarships.api.views import ScholarshipDetailView,StudentDetailView,DirectorSilverDetailView,DirectorGoldDetailView,DirectorGoldListView,ReleaseCreateView,McmStatusUpdateView,DirectorSilverDecisionView,DirectorGoldAcceptRejectView,DirectorSilverListView,GetReleaseByAwardView,McmDocumentsRetrieveView +from applications.scholarships.api.views import ScholarshipDetailView,StudentDetailView,DirectorSilverDetailView,DirectorGoldDetailView,DirectorGoldListView,DMProficiencyListView,ReleaseCreateView,McmStatusUpdateView,DirectorSilverDecisionView,DMProficiencyDecisionView,DirectorGoldAcceptRejectView,DirectorSilverListView,GetReleaseByAwardView,McmDocumentsRetrieveView # ,DirectorSilverAcceptRejectView @@ -77,11 +77,13 @@ # url(r'student_file_show/', StudentDetailView.as_view(), name='student-file-show'), path('mcm/status-update/', McmStatusUpdateView.as_view(), name='mcm-status-update'), path('api/director_silver/decision/', DirectorSilverDecisionView.as_view(), name='director_silver_decision'), - path('director-gold/accept-reject/', DirectorGoldAcceptRejectView.as_view(), name='director-gold-accept-reject'), + path('director-gold/accept-reject/', DirectorGoldAcceptRejectView.as_view(), name='director-gold-accept-reject'), + path('api/dm-proficiency/decsion/', DMProficiencyDecisionView.as_view(), name='proficiency-dm-decision'), path('director-silver/', DirectorSilverListView.as_view(), name='director-silver-list'), # path('director-silver/accept-reject/', DirectorSilverAcceptRejectView.as_view(), name='director-silver-accept-reject'), path('mcm/documents/', McmDocumentsRetrieveView.as_view(), name='mcm-documents'), path('medals/marksheet/', DirectorSilverMarksheetView.as_view(), name='director_silver_marksheet'), path('medals/marksheet/gold/', DirectorGoldMarksheetView.as_view(), name='director_gold_marksheet'), + path('dm-proficiency-list/', DMProficiencyListView.as_view(), name='proficiency-dm'), ] \ No newline at end of file From a79c102696c8ade5f978c4ff900581d727b6e63a Mon Sep 17 00:00:00 2001 From: Akash Paloju Date: Tue, 18 Mar 2025 16:02:23 +0530 Subject: [PATCH 32/37] modify mcmstatus update view --- FusionIIIT/applications/scholarships/api/views.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index 7b2f9a188..b1586115c 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -338,7 +338,7 @@ def post(self, request, *args, **kwargs): class McmStatusUpdateView(APIView): def post(self, request): # Fetch the Mcm instance based on the provided primary key (pk) - mcm_instance = get_object_or_404(Mcm) + mcm_instance = get_object_or_404(Mcm,id=request.data.get('id')) # Deserialize the input data with the existing object serializer = McmStatusUpdateSerializer(mcm_instance, data=request.data, partial=True) From de42b4c22751bcb5c3bbd580a57165f15d55296b Mon Sep 17 00:00:00 2001 From: Akash Paloju Date: Thu, 20 Mar 2025 18:57:30 +0530 Subject: [PATCH 33/37] removed unnecessary lines --- .../scholarships/api/serializers.py | 21 ++----- .../applications/scholarships/api/views.py | 60 +------------------ .../applications/scholarships/models.py | 16 ----- FusionIIIT/applications/scholarships/urls.py | 2 - 4 files changed, 6 insertions(+), 93 deletions(-) diff --git a/FusionIIIT/applications/scholarships/api/serializers.py b/FusionIIIT/applications/scholarships/api/serializers.py index 6ef938c71..7cf36f45e 100644 --- a/FusionIIIT/applications/scholarships/api/serializers.py +++ b/FusionIIIT/applications/scholarships/api/serializers.py @@ -3,7 +3,6 @@ from applications.globals.models import ExtraInfo from applications.scholarships.models import Award_and_scholarship,Previous_winner,Mcm,Director_silver,Director_gold,Notional_prize,Proficiency_dm,Release - class McmStatusUpdateSerializer(serializers.ModelSerializer): class Meta: model = Mcm @@ -15,9 +14,6 @@ def validate_status(self, value): raise serializers.ValidationError(f"Status must be one of {valid_statuses}.") return value - - - class DirectorSilverDecisionSerializer(serializers.ModelSerializer): class Meta: model = Director_silver @@ -27,7 +23,7 @@ def validate_status(self, value): if value not in ['ACCEPTED', 'REJECTED']: raise serializers.ValidationError("Status must be either 'ACCEPTED' or 'REJECTED'.") return value - + class DMProficiencyDecisionSerializer(serializers.ModelSerializer): class Meta: model = Proficiency_dm @@ -38,21 +34,17 @@ def validate_status(self, value): raise serializers.ValidationError("Status must be either 'ACCEPTED' or 'REJECTED'.") return value - class ReleaseSerializer(serializers.ModelSerializer): class Meta: model = Release fields = '__all__' - - # This serializer is used for editing the catalog by convenor and assistant class AwardAndScholarshipSerializer(serializers.ModelSerializer): class Meta: model = Award_and_scholarship fields = '_all_' - # this serializer is used for showing data on catalog form class AwardAndScholarshipSerializer(serializers.ModelSerializer): class Meta: @@ -62,35 +54,32 @@ class Meta: 'catalog': {'required': True, 'allow_null': False} # Make catalog optional } - class PreviousWinnerSerializer(serializers.ModelSerializer): class Meta: model = Previous_winner fields = ['student', 'programme', 'year', 'award_id'] - class McmSerializer(serializers.ModelSerializer): class Meta: model = Mcm fields = '__all__' + class DirectorSilverSerializer(serializers.ModelSerializer): class Meta: model = Director_silver fields = '__all__' + class DirectorGoldSerializer(serializers.ModelSerializer): class Meta: model = Director_gold fields = '__all__' + class NotionalPrizeSerializer(serializers.ModelSerializer): class Meta: model = Notional_prize fields = '__all__' + class ProficiencyDmSerializer(serializers.ModelSerializer): class Meta: model = Proficiency_dm fields = '__all__' - - - - - diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index b1586115c..c1ee16c7e 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -25,8 +25,6 @@ def post(self, request): return Response(serializer.data, status=status.HTTP_201_CREATED) return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) - - #This API is for editing the catalogue by convenor and assistant and saving in the database class AwardAndScholarshipCreateView(APIView): def post(self, request, pk=None): @@ -45,11 +43,6 @@ def post(self, request, pk=None): return Response(serializer.data, status=status.HTTP_201_CREATED) # 201 Created response return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) # 400 Bad Request if data is invalid - - - - - #This api for fetching the award and scholarship catalogue from the database class create_award(APIView): @@ -58,7 +51,6 @@ def get(self, request, *args, **kwargs): serializer = AwardAndScholarshipSerializer(awards, many=True) # Serialize the awards return Response(serializer.data, status=status.HTTP_200_OK) - #This api is for Previous Winner class GetWinnersView(APIView): @@ -111,7 +103,6 @@ def post(self, request): return Response(McmSerializer(mcm_instance).data, status=status.HTTP_201_CREATED) return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) - class McmRetrieveView(APIView): def post(self, request): roll_number = request.user.username @@ -128,7 +119,6 @@ def post(self, request): return Response(serializer.data, status=status.HTTP_200_OK) - class DirectorSilverRetrieveView(APIView): def post(self, request): roll_number = request.user.username @@ -145,7 +135,6 @@ def post(self, request): return Response(serializer.data, status=status.HTTP_200_OK) - class DirectorSilverUpdateView(APIView): def post(self, request): request.data['student']=request.user.username @@ -172,7 +161,6 @@ def post(self, request): return Response(serializer.data, status=status.HTTP_200_OK) - class DirectorGoldUpdateView(APIView): def post(self, request): request.data['student']=request.user.username @@ -182,7 +170,6 @@ def post(self, request): return Response(DirectorGoldSerializer(director_gold_instance).data, status=status.HTTP_201_CREATED) return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) - class ProficiencyDmUpdateView(APIView): def post(self, request): request.data['student']=request.user.username @@ -193,7 +180,6 @@ def post(self, request): return Response(ProficiencyDmSerializer(proficiency_dm_instance).data, status=status.HTTP_201_CREATED) return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) - class ProficiencyDmRetrieveView(APIView): def post(self, request): roll_number = request.user.username @@ -220,7 +206,6 @@ def get(self, request): # Return the serialized data as a response return Response(serializer.data, status=status.HTTP_200_OK) - class DirectorGoldListView(APIView): def get(self, request): # Fetch all entries @@ -238,8 +223,6 @@ def get(self, request): serializer = ProficiencyDmSerializer(proficiency_dm_entries, many=True) # Return the serialized data as a response return Response(serializer.data, status=status.HTTP_200_OK) - - #This api is for showing the all the documnet to the convenor or assistant submitted by the student in browse application class StudentDetailView(APIView): @@ -272,7 +255,6 @@ def post(self, request): serializer = DirectorSilverSerializer(director_silver_entry) return Response(serializer.data, status=status.HTTP_200_OK) - #This api is for showing the list of student who has applied for director gold in browse application in convenor and assistant class DirectorGoldDetailView(APIView): def post(self, request): @@ -289,10 +271,7 @@ def post(self, request): serializer = DirectorGoldSerializer(director_gold_entry) return Response(serializer.data, status=status.HTTP_200_OK) - - class GetReleaseByAwardView(APIView): - def post(self, request, *args, **kwargs): # Get the award name from the request award_name = request.data.get('award') @@ -332,9 +311,7 @@ def post(self, request, *args, **kwargs): status=status.HTTP_404_NOT_FOUND ) - #This api for MCM status that is accept, reject and under review - class McmStatusUpdateView(APIView): def post(self, request): # Fetch the Mcm instance based on the provided primary key (pk) @@ -352,10 +329,7 @@ def post(self, request): # Return validation errors return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) - - #This api for Director silver accepting and rejecting the application by convenor and assistant - class DirectorSilverDecisionView(APIView): def post(self, request): # Deserialize the request data @@ -379,7 +353,6 @@ def post(self, request): # If the data is invalid return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) - class DMProficiencyDecisionView(APIView): def post(self, request): @@ -445,36 +418,6 @@ def get(self, request): serializer = DirectorSilverSerializer(director_silver_entries, many=True) return Response(serializer.data, status=status.HTTP_200_OK) -# class DirectorSilverAcceptRejectView(APIView): -# def post(self, request): -# # Get the ID of the Director_silver entry to update -# director_silver_id = request.data.get('id') -# action = request.data.get('action') # 'accept' or 'reject' - -# # Check if the action is valid -# if action not in ['accept', 'reject']: -# return Response({'error': 'Invalid action. Choose either "accept" or "reject".'}, status=status.HTTP_400_BAD_REQUEST) - -# try: -# # Fetch the Director_silver entry from the database using the ID -# director_silver = Director_silver.objects.get(id=director_silver_id) -# except Director_silver.DoesNotExist: -# return Response({'error': 'Director_silver entry not found.'}, status=status.HTTP_404_NOT_FOUND) - -# # Update the status based on the action -# if action == 'accept': -# director_silver.status = 'ACCEPTED' -# else: -# director_silver.status = 'REJECTED' - -# # Save the updated Director_silver entry -# director_silver.save() - -# # Return the updated entry as a response -# serializer = DirectorSilverSerializer(director_silver) -# return Response(serializer.data, status=status.HTTP_200_OK) - - class GetReleaseByAwardView(APIView): def post(self, request, *args, **kwargs): @@ -515,7 +458,6 @@ def post(self, request, *args, **kwargs): {'result': 'Failure', 'error': 'No releases found for the specified award'}, status=status.HTTP_404_NOT_FOUND ) - class McmDocumentsRetrieveView(APIView): permission_classes = [IsAuthenticated] @@ -579,4 +521,4 @@ def post(self, request): return Response({ "marksheet": marksheet_str, - }, status=200) \ No newline at end of file + }, status=200) diff --git a/FusionIIIT/applications/scholarships/models.py b/FusionIIIT/applications/scholarships/models.py index c783301e5..88c174678 100755 --- a/FusionIIIT/applications/scholarships/models.py +++ b/FusionIIIT/applications/scholarships/models.py @@ -3,7 +3,6 @@ from applications.academic_information.models import Student from applications.globals.models import ExtraInfo - class Constants: STATUS_CHOICES = ( ('Complete', 'COMPLETE'), @@ -70,7 +69,6 @@ class Constants: ('OWNED', 'OWNED') ) - class Award_and_scholarship(models.Model): award_name = models.CharField(max_length=100, default='') catalog = models.TextField(max_length=5000) @@ -81,8 +79,6 @@ class Meta: def __str__(self): return self.award_name - - class Mcm(models.Model): brother_name = models.CharField(max_length=30, null=True) brother_occupation = models.TextField(max_length=100, null=True) @@ -126,21 +122,18 @@ class Mcm(models.Model): date = models.DateField(default=datetime.date.today) award_id = models.ForeignKey(Award_and_scholarship, default=4, on_delete=models.CASCADE) - class Meta: db_table = 'Mcm' def __str__(self): return str(self.student) - class Notional_prize(models.Model): spi = models.FloatField() cpi = models.FloatField() year = models.CharField(max_length=10, choices=Constants.BATCH) award_id = models.ForeignKey(Award_and_scholarship, default=4, on_delete=models.CASCADE) - class Meta: db_table = 'Notional_prize' @@ -154,7 +147,6 @@ class Previous_winner(models.Model): class Meta: db_table = 'Previous_winner' - class Release(models.Model): date_time = models.DateTimeField(default=datetime.datetime.now, blank=True) programme = models.CharField(max_length=10,default='B.Tech') @@ -210,11 +202,9 @@ class Director_silver(models.Model): justification = models.TextField(max_length=1000, null=True) outside_achievements = models.TextField(max_length=1000, null=True) - class Meta: db_table = 'Director_silver' - class Proficiency_dm(models.Model): Marksheet = models.FileField(null=False, blank=False, default='', upload_to='scholarships/proficiency_dm/marksheet/') title_name = models.CharField(max_length=30, null=True) @@ -254,7 +244,6 @@ class Proficiency_dm(models.Model): class Meta: db_table = 'Proficiency_dm' - class Director_gold(models.Model): student = models.ForeignKey(Student, on_delete=models.CASCADE) status = models.CharField(max_length=20,choices=Constants.STATUS_CHOICES, default='INCOMPLETE') @@ -289,8 +278,3 @@ class Director_gold(models.Model): class Meta: db_table = 'Director_gold' - - - - - diff --git a/FusionIIIT/applications/scholarships/urls.py b/FusionIIIT/applications/scholarships/urls.py index 5c9845b97..e7f5d77b4 100755 --- a/FusionIIIT/applications/scholarships/urls.py +++ b/FusionIIIT/applications/scholarships/urls.py @@ -8,8 +8,6 @@ from applications.scholarships.api.views import ScholarshipDetailView,StudentDetailView,DirectorSilverDetailView,DirectorGoldDetailView,DirectorGoldListView,DMProficiencyListView,ReleaseCreateView,McmStatusUpdateView,DirectorSilverDecisionView,DMProficiencyDecisionView,DirectorGoldAcceptRejectView,DirectorSilverListView,GetReleaseByAwardView,McmDocumentsRetrieveView # ,DirectorSilverAcceptRejectView - - app_name = 'spacs' urlpatterns = [ From ee2cafb8b6a4e5193762afb04295da99e57953f3 Mon Sep 17 00:00:00 2001 From: Akash Paloju Date: Fri, 21 Mar 2025 00:11:00 +0530 Subject: [PATCH 34/37] Delete migration files --- .../migrations/0002_auto_20250313_2341.py | 106 ------------------ .../migrations/0003_auto_20250313_2358.py | 58 ---------- .../migrations/0004_auto_20250314_0154.py | 64 ----------- 3 files changed, 228 deletions(-) delete mode 100644 FusionIIIT/applications/scholarships/migrations/0002_auto_20250313_2341.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0003_auto_20250313_2358.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0004_auto_20250314_0154.py diff --git a/FusionIIIT/applications/scholarships/migrations/0002_auto_20250313_2341.py b/FusionIIIT/applications/scholarships/migrations/0002_auto_20250313_2341.py deleted file mode 100644 index 655e43fee..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0002_auto_20250313_2341.py +++ /dev/null @@ -1,106 +0,0 @@ -# Generated by Django 3.1.5 on 2025-03-13 23:41 - -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('scholarships', '0001_initial'), - ] - - operations = [ - migrations.RemoveField( - model_name='director_gold', - name='relevant_document', - ), - migrations.RemoveField( - model_name='director_silver', - name='relevant_document', - ), - migrations.RemoveField( - model_name='proficiency_dm', - name='relevant_document', - ), - migrations.AddField( - model_name='director_gold', - name='Marksheet', - field=models.FileField(default='', upload_to=''), - ), - migrations.AddField( - model_name='director_silver', - name='Marksheet', - field=models.FileField(default='', upload_to=''), - ), - migrations.AddField( - model_name='mcm', - name='Aadhar_card', - field=models.FileField(default='', upload_to=''), - ), - migrations.AddField( - model_name='mcm', - name='Affidavit', - field=models.FileField(default='', upload_to=''), - ), - migrations.AddField( - model_name='mcm', - name='Bank_details', - field=models.FileField(default='', upload_to=''), - ), - migrations.AddField( - model_name='mcm', - name='Fee_Receipt', - field=models.FileField(default='', upload_to=''), - ), - migrations.AddField( - model_name='mcm', - name='Marksheet', - field=models.FileField(default='', upload_to=''), - ), - migrations.AddField( - model_name='proficiency_dm', - name='Marksheet', - field=models.FileField(default='', upload_to=''), - ), - migrations.AlterField( - model_name='director_gold', - name='status', - field=models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT'), ('ACCEPT', 'Accept'), ('REJECT', 'Reject'), ('ACCEPTED', 'Accepted'), ('REJECTED', 'Rejected'), ('UNDER_REVIEW', 'Under Review')], default='INCOMPLETE', max_length=20), - ), - migrations.AlterField( - model_name='director_silver', - name='award_id', - field=models.ForeignKey(default=3, on_delete=django.db.models.deletion.CASCADE, to='scholarships.award_and_scholarship'), - ), - migrations.AlterField( - model_name='director_silver', - name='status', - field=models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT'), ('ACCEPT', 'Accept'), ('REJECT', 'Reject'), ('ACCEPTED', 'Accepted'), ('REJECTED', 'Rejected'), ('UNDER_REVIEW', 'Under Review')], default='INCOMPLETE', max_length=20), - ), - migrations.AlterField( - model_name='mcm', - name='forms', - field=models.CharField(blank=True, max_length=100, null=True), - ), - migrations.AlterField( - model_name='mcm', - name='income_certificate', - field=models.FileField(default='', upload_to=''), - ), - migrations.AlterField( - model_name='mcm', - name='status', - field=models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT'), ('ACCEPT', 'Accept'), ('REJECT', 'Reject'), ('ACCEPTED', 'Accepted'), ('REJECTED', 'Rejected'), ('UNDER_REVIEW', 'Under Review')], default='INCOMPLETE', max_length=20), - ), - migrations.AlterField( - model_name='previous_winner', - name='year', - field=models.IntegerField(default=2025), - ), - migrations.AlterField( - model_name='proficiency_dm', - name='status', - field=models.CharField(choices=[('Complete', 'COMPLETE'), ('Incomplete', 'INCOMPLETE'), ('Reject', 'REJECT'), ('Accept', 'ACCEPT'), ('ACCEPT', 'Accept'), ('REJECT', 'Reject'), ('ACCEPTED', 'Accepted'), ('REJECTED', 'Rejected'), ('UNDER_REVIEW', 'Under Review')], default='INCOMPLETE', max_length=20), - ), - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0003_auto_20250313_2358.py b/FusionIIIT/applications/scholarships/migrations/0003_auto_20250313_2358.py deleted file mode 100644 index 6e560df87..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0003_auto_20250313_2358.py +++ /dev/null @@ -1,58 +0,0 @@ -# Generated by Django 3.1.5 on 2025-03-13 23:58 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('scholarships', '0002_auto_20250313_2341'), - ] - - operations = [ - migrations.AlterField( - model_name='director_gold', - name='Marksheet', - field=models.FileField(default='', upload_to='scholarships/director_gold/marksheet/'), - ), - migrations.AlterField( - model_name='director_silver', - name='Marksheet', - field=models.FileField(default='', upload_to='scholarships/director_silver/marksheet/'), - ), - migrations.AlterField( - model_name='mcm', - name='Aadhar_card', - field=models.FileField(default='', upload_to='scholarships/mcm/aadhar_card/'), - ), - migrations.AlterField( - model_name='mcm', - name='Affidavit', - field=models.FileField(default='', upload_to='scholarships/mcm/affidavit/'), - ), - migrations.AlterField( - model_name='mcm', - name='Bank_details', - field=models.FileField(default='', upload_to='scholarships/mcm/bank_details/'), - ), - migrations.AlterField( - model_name='mcm', - name='Fee_Receipt', - field=models.FileField(default='', upload_to='scholarships/mcm/fee_receipt/'), - ), - migrations.AlterField( - model_name='mcm', - name='Marksheet', - field=models.FileField(default='', upload_to='scholarships/mcm/marksheet/'), - ), - migrations.AlterField( - model_name='mcm', - name='income_certificate', - field=models.FileField(default='', upload_to='scholarships/mcm/income_certificate/'), - ), - migrations.AlterField( - model_name='proficiency_dm', - name='Marksheet', - field=models.FileField(default='', upload_to='scholarships/proficiency_dm/marksheet/'), - ), - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0004_auto_20250314_0154.py b/FusionIIIT/applications/scholarships/migrations/0004_auto_20250314_0154.py deleted file mode 100644 index 82549bdb4..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0004_auto_20250314_0154.py +++ /dev/null @@ -1,64 +0,0 @@ -# Generated by Django 3.1.5 on 2025-03-14 01:54 - -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('scholarships', '0003_auto_20250313_2358'), - ] - - operations = [ - migrations.AlterField( - model_name='proficiency_dm', - name='award_id', - field=models.ForeignKey(default=4, on_delete=django.db.models.deletion.CASCADE, to='scholarships.award_and_scholarship'), - ), - migrations.AlterField( - model_name='proficiency_dm', - name='cse_percentage', - field=models.FloatField(null=True), - ), - migrations.AlterField( - model_name='proficiency_dm', - name='design_percentage', - field=models.FloatField(null=True), - ), - migrations.AlterField( - model_name='proficiency_dm', - name='ece_percentage', - field=models.FloatField(null=True), - ), - migrations.AlterField( - model_name='proficiency_dm', - name='mech_percentage', - field=models.FloatField(null=True), - ), - migrations.AlterField( - model_name='proficiency_dm', - name='roll_no1', - field=models.CharField(max_length=30, null=True), - ), - migrations.AlterField( - model_name='proficiency_dm', - name='roll_no2', - field=models.CharField(max_length=30, null=True), - ), - migrations.AlterField( - model_name='proficiency_dm', - name='roll_no3', - field=models.CharField(max_length=30, null=True), - ), - migrations.AlterField( - model_name='proficiency_dm', - name='roll_no4', - field=models.CharField(max_length=30, null=True), - ), - migrations.AlterField( - model_name='proficiency_dm', - name='roll_no5', - field=models.CharField(max_length=30, null=True), - ), - ] From 945019a1cd45400e30ddb746f4124f02c5d750ba Mon Sep 17 00:00:00 2001 From: Akash Paloju Date: Fri, 21 Mar 2025 01:58:32 +0530 Subject: [PATCH 35/37] Delete a migration file --- .../migrations/0002_auto_20241015_1451.py | 89 ------------------- 1 file changed, 89 deletions(-) delete mode 100644 FusionIIIT/applications/iwdModuleV2/migrations/0002_auto_20241015_1451.py diff --git a/FusionIIIT/applications/iwdModuleV2/migrations/0002_auto_20241015_1451.py b/FusionIIIT/applications/iwdModuleV2/migrations/0002_auto_20241015_1451.py deleted file mode 100644 index 8a5daed35..000000000 --- a/FusionIIIT/applications/iwdModuleV2/migrations/0002_auto_20241015_1451.py +++ /dev/null @@ -1,89 +0,0 @@ -# Generated by Django 3.1.5 on 2024-10-15 14:51 - -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('iwdModuleV2', '0001_initial'), - ] - - operations = [ - migrations.AddField( - model_name='pageonedetails', - name='page_id', - field=models.OneToOneField(null=True, on_delete=django.db.models.deletion.CASCADE, to='iwdModuleV2.projects'), - ), - migrations.AddField( - model_name='pagethreedetails', - name='page_id', - field=models.OneToOneField(null=True, on_delete=django.db.models.deletion.CASCADE, to='iwdModuleV2.projects'), - ), - migrations.AddField( - model_name='pagetwodetails', - name='page_id', - field=models.OneToOneField(null=True, on_delete=django.db.models.deletion.CASCADE, to='iwdModuleV2.projects'), - ), - migrations.AlterField( - model_name='addendum', - name='key', - field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='iwdModuleV2.projects'), - ), - migrations.AlterField( - model_name='agreement', - name='key', - field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='iwdModuleV2.projects'), - ), - migrations.AlterField( - model_name='corrigendumtable', - name='key', - field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='iwdModuleV2.projects'), - ), - migrations.AlterField( - model_name='financialbiddetails', - name='key', - field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='iwdModuleV2.projects'), - ), - migrations.AlterField( - model_name='letterofintentdetails', - name='key', - field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='iwdModuleV2.projects'), - ), - migrations.AlterField( - model_name='nooftechnicalbidtimes', - name='key', - field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='iwdModuleV2.projects'), - ), - migrations.AlterField( - model_name='pageonedetails', - name='id', - field=models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID'), - ), - migrations.AlterField( - model_name='pagethreedetails', - name='id', - field=models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID'), - ), - migrations.AlterField( - model_name='pagetwodetails', - name='id', - field=models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID'), - ), - migrations.AlterField( - model_name='prebiddetails', - name='key', - field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='iwdModuleV2.projects'), - ), - migrations.AlterField( - model_name='technicalbiddetails', - name='key', - field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='iwdModuleV2.projects'), - ), - migrations.AlterField( - model_name='workorderform', - name='key', - field=models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='iwdModuleV2.projects'), - ), - ] From 9d41c666a81e5759819823ca66974c8cbfd8a8b1 Mon Sep 17 00:00:00 2001 From: Akash Paloju Date: Wed, 16 Apr 2025 22:47:17 +0530 Subject: [PATCH 36/37] Add invite window feature --- .../notifications_extension/api/views.py | 2 +- .../applications/scholarships/api/views.py | 62 +++++++------------ FusionIIIT/applications/scholarships/urls.py | 3 +- FusionIIIT/notification/views.py | 4 +- 4 files changed, 27 insertions(+), 44 deletions(-) diff --git a/FusionIIIT/applications/notifications_extension/api/views.py b/FusionIIIT/applications/notifications_extension/api/views.py index e4c125786..75054ddd5 100644 --- a/FusionIIIT/applications/notifications_extension/api/views.py +++ b/FusionIIIT/applications/notifications_extension/api/views.py @@ -147,7 +147,7 @@ def post(self, request, *args, **kwargs): recipient_id = request.data.get('recipient') type = request.data.get('type') User = get_user_model() - recipient = User.objects.get(pk=recipient_id) + recipient = User.objects.get(username=recipient_id) # Trigger the notification function scholarship_portal_notif(sender, recipient, type) diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index c1ee16c7e..5558310e5 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -25,6 +25,27 @@ def post(self, request): return Response(serializer.data, status=status.HTTP_201_CREATED) return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) +class CheckApplicationWindowView(APIView): + def post(self, request): + award_name = request.data.get('award') + current_date = datetime.date.today() + + if not award_name: + return Response({'result': 'Failure', 'error': 'Award is a required field'}, status=status.HTTP_400_BAD_REQUEST) + + try: + #Get all the rows with the award name + releases = Release.objects.filter(award=award_name) + except Release.DoesNotExist: + return Response({'result': 'Failure', 'error': 'No release found for the specified award'}, status=status.HTTP_404_NOT_FOUND) + for release in releases: + # Check if the current date is within the start and end dates of the release + if release.startdate <= current_date <= release.enddate: + return Response({'result': 'Success', 'message': 'Application window is open.'}, status=status.HTTP_200_OK) + + # If the current date is outside the start and end dates + return Response({'result': 'Failure', 'error': 'Application window is closed.'}, status=status.HTTP_400_BAD_REQUEST) + #This API is for editing the catalogue by convenor and assistant and saving in the database class AwardAndScholarshipCreateView(APIView): def post(self, request, pk=None): @@ -418,47 +439,6 @@ def get(self, request): serializer = DirectorSilverSerializer(director_silver_entries, many=True) return Response(serializer.data, status=status.HTTP_200_OK) -class GetReleaseByAwardView(APIView): - - def post(self, request, *args, **kwargs): - # Get the award name from the request - award_name = request.data.get('award') - - # Check if the award variable is provided - if not award_name: - return Response( - {'result': 'Failure', 'error': 'Award is a required field'}, - status=status.HTTP_400_BAD_REQUEST - ) - - # Fetch records from the Release table where the award matches - releases = Release.objects.filter(award=award_name) - - # Check if any records were found - if releases.exists(): - # Build the response data - data = [] - for release in releases: - data.append({ - 'id': release.id, - 'date_time': release.date_time, - 'programme': release.programme, - 'startdate': release.startdate, - 'enddate': release.enddate, - 'award': release.award, - 'remarks': release.remarks, - 'batch': release.batch, - 'notif_visible': release.notif_visible, - }) - - return Response({'result': 'Success', 'data': data}, status=status.HTTP_200_OK) - - # If no records found - return Response( - {'result': 'Failure', 'error': 'No releases found for the specified award'}, - status=status.HTTP_404_NOT_FOUND - ) - class McmDocumentsRetrieveView(APIView): permission_classes = [IsAuthenticated] diff --git a/FusionIIIT/applications/scholarships/urls.py b/FusionIIIT/applications/scholarships/urls.py index e7f5d77b4..aa56e4461 100755 --- a/FusionIIIT/applications/scholarships/urls.py +++ b/FusionIIIT/applications/scholarships/urls.py @@ -4,7 +4,7 @@ from . import views from applications.scholarships.api.views import GetWinnersView -from applications.scholarships.api.views import create_award,McmUpdateView, McmRetrieveView, DirectorSilverRetrieveView,DirectorSilverUpdateView,DirectorGoldRetrieveView,DirectorGoldUpdateView,ProficiencyDmRetrieveView,ProficiencyDmUpdateView,AwardAndScholarshipCreateView,DirectorSilverMarksheetView,DirectorGoldMarksheetView +from applications.scholarships.api.views import create_award,McmUpdateView, McmRetrieveView, DirectorSilverRetrieveView,DirectorSilverUpdateView,DirectorGoldRetrieveView,DirectorGoldUpdateView,ProficiencyDmRetrieveView,ProficiencyDmUpdateView,AwardAndScholarshipCreateView,DirectorSilverMarksheetView,DirectorGoldMarksheetView, CheckApplicationWindowView from applications.scholarships.api.views import ScholarshipDetailView,StudentDetailView,DirectorSilverDetailView,DirectorGoldDetailView,DirectorGoldListView,DMProficiencyListView,ReleaseCreateView,McmStatusUpdateView,DirectorSilverDecisionView,DMProficiencyDecisionView,DirectorGoldAcceptRejectView,DirectorSilverListView,GetReleaseByAwardView,McmDocumentsRetrieveView # ,DirectorSilverAcceptRejectView @@ -83,5 +83,6 @@ path('medals/marksheet/', DirectorSilverMarksheetView.as_view(), name='director_silver_marksheet'), path('medals/marksheet/gold/', DirectorGoldMarksheetView.as_view(), name='director_gold_marksheet'), path('dm-proficiency-list/', DMProficiencyListView.as_view(), name='proficiency-dm'), + path('check-application-window/', CheckApplicationWindowView.as_view(), name='check-application-window'), ] \ No newline at end of file diff --git a/FusionIIIT/notification/views.py b/FusionIIIT/notification/views.py index 5f134a9a7..204e9a830 100644 --- a/FusionIIIT/notification/views.py +++ b/FusionIIIT/notification/views.py @@ -298,6 +298,8 @@ def scholarship_portal_notif(sender, recipient, type): verb = "Your Mcm form has been accepted " elif type == 'Reject_MCM': verb = "Your Mcm form has been rejected as you have not fulfilled the required criteria " + elif type == 'MCM_UNDER_REVIEW': + verb = "Your Mcm form is under review" elif type == 'Accept_Gold': verb = "Your Convocation form for Director's Gold Medal has been accepted " elif type == 'Reject_Gold': @@ -308,7 +310,7 @@ def scholarship_portal_notif(sender, recipient, type): verb = "Your Convocation form for Director's Silver Medal has been rejected " elif type == 'Accept_DM': verb = "Your Convocation form for D&M Proficiency Gold Medal has been accepted " - elif type == 'Reject_Silver': + elif type == 'Reject_DM': verb = "Your Convocation form for D&M Proficiency Gold Medal has been rejected " notify.send(sender=sender, recipient=recipient, url=url, module=module, verb=verb) From af91b0df4152f25f06a0c29d3435f7226e47a02a Mon Sep 17 00:00:00 2001 From: Akash Paloju Date: Wed, 16 Apr 2025 22:59:24 +0530 Subject: [PATCH 37/37] Change status codes for an api --- FusionIIIT/applications/scholarships/api/views.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/FusionIIIT/applications/scholarships/api/views.py b/FusionIIIT/applications/scholarships/api/views.py index 5558310e5..ff8651008 100644 --- a/FusionIIIT/applications/scholarships/api/views.py +++ b/FusionIIIT/applications/scholarships/api/views.py @@ -37,14 +37,14 @@ def post(self, request): #Get all the rows with the award name releases = Release.objects.filter(award=award_name) except Release.DoesNotExist: - return Response({'result': 'Failure', 'error': 'No release found for the specified award'}, status=status.HTTP_404_NOT_FOUND) + return Response({'result': 'Failure', 'message': 'No release found for the specified award'}, status=status.HTTP_200_OK) for release in releases: # Check if the current date is within the start and end dates of the release if release.startdate <= current_date <= release.enddate: return Response({'result': 'Success', 'message': 'Application window is open.'}, status=status.HTTP_200_OK) # If the current date is outside the start and end dates - return Response({'result': 'Failure', 'error': 'Application window is closed.'}, status=status.HTTP_400_BAD_REQUEST) + return Response({'result': 'Failure', 'message': 'Application window is closed.'}, status=status.HTTP_200_OK) #This API is for editing the catalogue by convenor and assistant and saving in the database class AwardAndScholarshipCreateView(APIView):