From b723a921ea840338f6fc1edbb84dadca8193d453 Mon Sep 17 00:00:00 2001 From: Abhijeet Date: Sun, 19 Jan 2025 18:20:25 +0530 Subject: [PATCH 1/7] Basic proposal system implemented --- .../applications/iwdModuleV2/api/serializers.py | 5 +++++ FusionIIIT/applications/iwdModuleV2/api/views.py | 14 ++++++++++++++ FusionIIIT/applications/iwdModuleV2/models.py | 11 +++++++++++ 3 files changed, 30 insertions(+) diff --git a/FusionIIIT/applications/iwdModuleV2/api/serializers.py b/FusionIIIT/applications/iwdModuleV2/api/serializers.py index 1b4e04b4a..30079e850 100644 --- a/FusionIIIT/applications/iwdModuleV2/api/serializers.py +++ b/FusionIIIT/applications/iwdModuleV2/api/serializers.py @@ -137,4 +137,9 @@ class Meta: class LetterOfIntentDetailsSerializer(serializers.ModelSerializer): class Meta: model = LetterOfIntentDetails + fields = '__all__' + +class ProposalSerializer(serializers.ModelSerializer): + class Meta: + model = Proposal fields = '__all__' \ No newline at end of file diff --git a/FusionIIIT/applications/iwdModuleV2/api/views.py b/FusionIIIT/applications/iwdModuleV2/api/views.py index 069b3fda0..88cc3fac7 100644 --- a/FusionIIIT/applications/iwdModuleV2/api/views.py +++ b/FusionIIIT/applications/iwdModuleV2/api/views.py @@ -1172,5 +1172,19 @@ def handle_settle_bill_requests(request): return Response({'error': 'Request ID not provided'}, status=status.HTTP_400_BAD_REQUEST) +@api_view(['POST']) +@permission_classes([IsAuthenticated]) +def create_proposal(request): + serializer = ProposalSerializer(data=request.data) + if serializer.is_valid(): + serializer.save(engineer=request.user) + return Response(serializer.data, status=status.HTTP_201_CREATED) + return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) +@api_view(['GET']) +@permission_classes([IsAuthenticated]) +def get_proposals(request, request_id): + proposals = Proposal.objects.filter(request_id=request_id) + serializer = ProposalSerializer(proposals, many=True) + return Response(serializer.data, status=status.HTTP_200_OK) diff --git a/FusionIIIT/applications/iwdModuleV2/models.py b/FusionIIIT/applications/iwdModuleV2/models.py index b78b7b3ef..c5a50e72a 100644 --- a/FusionIIIT/applications/iwdModuleV2/models.py +++ b/FusionIIIT/applications/iwdModuleV2/models.py @@ -196,3 +196,14 @@ class Bills(models.Model): class Budget(models.Model): name = models.CharField(max_length=200) budgetIssued = models.IntegerField(default=0) + +class Proposal(models.Model): + request = models.ForeignKey(Requests, on_delete=models.CASCADE, related_name='proposals') + engineer = models.CharField(max_length=200) #models.ForeignKey(User, on_delete=models.CASCADE) + items = models.TextField() + costs = models.DecimalField(max_digits=10, decimal_places=2) + quantities = models.IntegerField() + supporting_documents = models.FileField(upload_to='proposals/', null=True, blank=True) + created_at = models.DateTimeField(auto_now_add=True) + updated_at = models.DateTimeField(auto_now=True) + status = models.CharField(max_length=20, choices=[('Pending', 'Pending'), ('Approved', 'Approved'), ('Rejected', 'Rejected')], default='Pending') \ No newline at end of file From c7727feea3c46abb7b615c21f419075d18ef0fe5 Mon Sep 17 00:00:00 2001 From: Abhijeet Date: Sun, 19 Jan 2025 22:21:27 +0530 Subject: [PATCH 2/7] Added a separate Items model and updated ProposalSerializer --- .../iwdModuleV2/api/serializers.py | 33 ++++++++++++++++++- FusionIIIT/applications/iwdModuleV2/models.py | 11 ++++--- 2 files changed, 39 insertions(+), 5 deletions(-) diff --git a/FusionIIIT/applications/iwdModuleV2/api/serializers.py b/FusionIIIT/applications/iwdModuleV2/api/serializers.py index 30079e850..2546ba872 100644 --- a/FusionIIIT/applications/iwdModuleV2/api/serializers.py +++ b/FusionIIIT/applications/iwdModuleV2/api/serializers.py @@ -139,7 +139,38 @@ class Meta: model = LetterOfIntentDetails fields = '__all__' +class ItemSerializer(serializers.ModelSerializer): + class Meta: + model = Item + fields = '__all__' class ProposalSerializer(serializers.ModelSerializer): + items = ItemSerializer(many=True) class Meta: model = Proposal - fields = '__all__' \ No newline at end of file + fields = '__all__' + + def create(self, validated_data): + items_data = validated_data.pop('items') + proposal = Proposal.objects.create(**validated_data) + for item_data in items_data: + Item.objects.create(proposal=proposal, **item_data) + return proposal + + def update(self, instance, validated_data): + items_data = validated_data.pop('items') + instance.supporting_documents = validated_data.get('supporting_documents', instance.supporting_documents) + instance.status = validated_data.get('status', instance.status) + instance.save() + + for item_data in items_data: + item_id = item_data.get('id') + if item_id: + item = Item.objects.get(id=item_id, proposal=instance) + item.name = item_data.get('name', item.name) + item.cost = item_data.get('cost', item.cost) + item.quantity = item_data.get('quantity', item.quantity) + item.save() + else: + Item.objects.create(proposal=instance, **item_data) + + return instance \ No newline at end of file diff --git a/FusionIIIT/applications/iwdModuleV2/models.py b/FusionIIIT/applications/iwdModuleV2/models.py index c5a50e72a..3a51ee234 100644 --- a/FusionIIIT/applications/iwdModuleV2/models.py +++ b/FusionIIIT/applications/iwdModuleV2/models.py @@ -200,10 +200,13 @@ class Budget(models.Model): class Proposal(models.Model): request = models.ForeignKey(Requests, on_delete=models.CASCADE, related_name='proposals') engineer = models.CharField(max_length=200) #models.ForeignKey(User, on_delete=models.CASCADE) - items = models.TextField() - costs = models.DecimalField(max_digits=10, decimal_places=2) - quantities = models.IntegerField() supporting_documents = models.FileField(upload_to='proposals/', null=True, blank=True) created_at = models.DateTimeField(auto_now_add=True) updated_at = models.DateTimeField(auto_now=True) - status = models.CharField(max_length=20, choices=[('Pending', 'Pending'), ('Approved', 'Approved'), ('Rejected', 'Rejected')], default='Pending') \ No newline at end of file + status = models.CharField(max_length=20, choices=[('Pending', 'Pending'), ('Approved', 'Approved'), ('Rejected', 'Rejected')], default='Pending') + +class Item(models.Model): + proposal = models.ForeignKey('Proposal', on_delete=models.CASCADE, related_name='items') + name = models.CharField(max_length=255) + cost = models.DecimalField(max_digits=10, decimal_places=2) + quantity = models.IntegerField() \ No newline at end of file From 9c9a3f2d97d9c231bd480254eb585859e8560092 Mon Sep 17 00:00:00 2001 From: Abhijeet Date: Mon, 20 Jan 2025 19:22:32 +0530 Subject: [PATCH 3/7] Updated BE --- .../migrations/0002_auto_20250120_1903.py | 38 +++++++++++++ .../migrations/0004_auto_20250120_1903.py | 19 +++++++ .../eis/migrations/0002_auto_20250120_1903.py | 53 +++++++++++++++++++ .../iwdModuleV2/api/serializers.py | 19 +++++-- .../applications/iwdModuleV2/api/views.py | 18 +++++-- .../migrations/0003_auto_20250120_1903.py | 47 ++++++++++++++++ FusionIIIT/applications/iwdModuleV2/models.py | 13 +++-- .../migrations/0002_auto_20250120_1903.py | 23 ++++++++ .../migrations/0004_auto_20250120_1903.py | 19 +++++++ .../migrations/0002_auto_20250120_1903.py | 18 +++++++ 10 files changed, 257 insertions(+), 10 deletions(-) create mode 100644 FusionIIIT/applications/academic_procedures/migrations/0002_auto_20250120_1903.py create mode 100644 FusionIIIT/applications/central_mess/migrations/0004_auto_20250120_1903.py create mode 100644 FusionIIIT/applications/eis/migrations/0002_auto_20250120_1903.py create mode 100644 FusionIIIT/applications/iwdModuleV2/migrations/0003_auto_20250120_1903.py create mode 100644 FusionIIIT/applications/programme_curriculum/migrations/0002_auto_20250120_1903.py create mode 100644 FusionIIIT/applications/research_procedures/migrations/0004_auto_20250120_1903.py create mode 100644 FusionIIIT/applications/scholarships/migrations/0002_auto_20250120_1903.py diff --git a/FusionIIIT/applications/academic_procedures/migrations/0002_auto_20250120_1903.py b/FusionIIIT/applications/academic_procedures/migrations/0002_auto_20250120_1903.py new file mode 100644 index 000000000..0f97b0696 --- /dev/null +++ b/FusionIIIT/applications/academic_procedures/migrations/0002_auto_20250120_1903.py @@ -0,0 +1,38 @@ +# Generated by Django 3.1.5 on 2025-01-20 19:03 + +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/0004_auto_20250120_1903.py b/FusionIIIT/applications/central_mess/migrations/0004_auto_20250120_1903.py new file mode 100644 index 000000000..d3bda0465 --- /dev/null +++ b/FusionIIIT/applications/central_mess/migrations/0004_auto_20250120_1903.py @@ -0,0 +1,19 @@ +# Generated by Django 3.1.5 on 2025-01-20 19:03 + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('central_mess', '0003_merge_20241023_0545'), + ] + + operations = [ + migrations.AlterField( + model_name='payments', + name='payment_date', + field=models.DateField(default=datetime.date.today), + ), + ] diff --git a/FusionIIIT/applications/eis/migrations/0002_auto_20250120_1903.py b/FusionIIIT/applications/eis/migrations/0002_auto_20250120_1903.py new file mode 100644 index 000000000..451f2db4f --- /dev/null +++ b/FusionIIIT/applications/eis/migrations/0002_auto_20250120_1903.py @@ -0,0 +1,53 @@ +# Generated by Django 3.1.5 on 2025-01-20 19:03 + +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/iwdModuleV2/api/serializers.py b/FusionIIIT/applications/iwdModuleV2/api/serializers.py index 2546ba872..70d7d9f17 100644 --- a/FusionIIIT/applications/iwdModuleV2/api/serializers.py +++ b/FusionIIIT/applications/iwdModuleV2/api/serializers.py @@ -152,8 +152,12 @@ class Meta: def create(self, validated_data): items_data = validated_data.pop('items') proposal = Proposal.objects.create(**validated_data) + total_budget = 0 for item_data in items_data: - Item.objects.create(proposal=proposal, **item_data) + item = Item.objects.create(proposal=proposal, **item_data) + total_budget += item.total_price + proposal.proposal_budget = total_budget + proposal.save() return proposal def update(self, instance, validated_data): @@ -162,15 +166,22 @@ def update(self, instance, validated_data): instance.status = validated_data.get('status', instance.status) instance.save() + total_budget = 0 for item_data in items_data: item_id = item_data.get('id') if item_id: item = Item.objects.get(id=item_id, proposal=instance) item.name = item_data.get('name', item.name) - item.cost = item_data.get('cost', item.cost) - item.quantity = item_data.get('quantity', item.quantity) + item.description = item_data.get('description', item.description) + item.unit = item_data.get('unit', item.unit) + item.price_per_unit = item_data.get('price_per_unit', item.price_per_unit) + item.total_price = item_data.get('total_price', item.total_price) + item.docs = item_data.get('docs', item.docs) item.save() else: - Item.objects.create(proposal=instance, **item_data) + item = Item.objects.create(proposal=instance, **item_data) + total_budget += item.total_price + instance.proposal_budget = total_budget + instance.save() return instance \ No newline at end of file diff --git a/FusionIIIT/applications/iwdModuleV2/api/views.py b/FusionIIIT/applications/iwdModuleV2/api/views.py index 88cc3fac7..b558fc800 100644 --- a/FusionIIIT/applications/iwdModuleV2/api/views.py +++ b/FusionIIIT/applications/iwdModuleV2/api/views.py @@ -54,8 +54,7 @@ def create_request(request): to create a new request ''' data = request.data - data['requestCreatedBy'] = request.user.username - data['requestCreatedBy'] = request.user.username + data['requestCreatedBy'] = request.user.username serializer = CreateRequestsSerializer(data=data, context={'request': request}) if serializer.is_valid(): @@ -1175,9 +1174,22 @@ def handle_settle_bill_requests(request): @api_view(['POST']) @permission_classes([IsAuthenticated]) def create_proposal(request): + data = request.data + receiver_desg, receiver_user = data.get('designation').split('|') serializer = ProposalSerializer(data=request.data) if serializer.is_valid(): - serializer.save(engineer=request.user) + file_id = create_file( + uploader=request.user.username, + uploader_designation=data.get('role'), + receiver=receiver_user, + receiver_designation=receiver_desg, + src_module="IWD", + src_object_id=str(data.get("id")), + file_extra_JSON={"value": 2}, + attached_file=None + ) + file_instance = File.objects.get(id=file_id) + proposal = serializer.save(created_by=request.user, file=file_instance) return Response(serializer.data, status=status.HTTP_201_CREATED) return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) diff --git a/FusionIIIT/applications/iwdModuleV2/migrations/0003_auto_20250120_1903.py b/FusionIIIT/applications/iwdModuleV2/migrations/0003_auto_20250120_1903.py new file mode 100644 index 000000000..6bb6fec05 --- /dev/null +++ b/FusionIIIT/applications/iwdModuleV2/migrations/0003_auto_20250120_1903.py @@ -0,0 +1,47 @@ +# Generated by Django 3.1.5 on 2025-01-20 19:03 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('filetracking', '0001_initial'), + ('iwdModuleV2', '0002_auto_20241015_1451'), + ] + + operations = [ + migrations.AlterField( + model_name='requests', + name='description', + field=models.CharField(max_length=1000), + ), + migrations.CreateModel( + name='Proposal', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('created_by', models.CharField(max_length=200)), + ('proposal_budget', models.DecimalField(blank=True, decimal_places=2, max_digits=15, null=True)), + ('supporting_documents', models.FileField(blank=True, null=True, upload_to='proposals/')), + ('created_at', models.DateTimeField(auto_now_add=True)), + ('updated_at', models.DateTimeField(auto_now=True)), + ('status', models.CharField(choices=[('Pending', 'Pending'), ('Approved', 'Approved'), ('Rejected', 'Rejected')], default='Pending', max_length=20)), + ('file', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='filetracking.file')), + ('request', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='proposals', to='iwdModuleV2.requests')), + ], + ), + migrations.CreateModel( + name='Item', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=255)), + ('description', models.TextField()), + ('unit', models.CharField(max_length=50)), + ('price_per_unit', models.DecimalField(decimal_places=2, max_digits=10)), + ('total_price', models.DecimalField(decimal_places=2, max_digits=10)), + ('docs', models.FileField(blank=True, null=True, upload_to='items/')), + ('proposal', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='items', to='iwdModuleV2.proposal')), + ], + ), + ] diff --git a/FusionIIIT/applications/iwdModuleV2/models.py b/FusionIIIT/applications/iwdModuleV2/models.py index 3a51ee234..0105c5bfc 100644 --- a/FusionIIIT/applications/iwdModuleV2/models.py +++ b/FusionIIIT/applications/iwdModuleV2/models.py @@ -1,5 +1,7 @@ from django.db import models from datetime import date +#from django.contrib.auth.models import User +from applications.filetracking.models import File # Create your models here. @@ -199,7 +201,9 @@ class Budget(models.Model): class Proposal(models.Model): request = models.ForeignKey(Requests, on_delete=models.CASCADE, related_name='proposals') - engineer = models.CharField(max_length=200) #models.ForeignKey(User, on_delete=models.CASCADE) + created_by = models.CharField(max_length=200) #models.ForeignKey(User, on_delete=models.CASCADE) + file = models.ForeignKey(File, on_delete=models.CASCADE, null=True, blank=True) + proposal_budget = models.DecimalField(max_digits=15, decimal_places=2, null=True, blank=True) supporting_documents = models.FileField(upload_to='proposals/', null=True, blank=True) created_at = models.DateTimeField(auto_now_add=True) updated_at = models.DateTimeField(auto_now=True) @@ -208,5 +212,8 @@ class Proposal(models.Model): class Item(models.Model): proposal = models.ForeignKey('Proposal', on_delete=models.CASCADE, related_name='items') name = models.CharField(max_length=255) - cost = models.DecimalField(max_digits=10, decimal_places=2) - quantity = models.IntegerField() \ No newline at end of file + description = models.TextField() + unit = models.CharField(max_length=50) + price_per_unit = models.DecimalField(max_digits=10, decimal_places=2) + total_price = models.DecimalField(max_digits=10, decimal_places=2) + docs = models.FileField(upload_to='items/', null=True, blank=True) \ No newline at end of file diff --git a/FusionIIIT/applications/programme_curriculum/migrations/0002_auto_20250120_1903.py b/FusionIIIT/applications/programme_curriculum/migrations/0002_auto_20250120_1903.py new file mode 100644 index 000000000..57a6ea3cd --- /dev/null +++ b/FusionIIIT/applications/programme_curriculum/migrations/0002_auto_20250120_1903.py @@ -0,0 +1,23 @@ +# Generated by Django 3.1.5 on 2025-01-20 19:03 + +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/0004_auto_20250120_1903.py b/FusionIIIT/applications/research_procedures/migrations/0004_auto_20250120_1903.py new file mode 100644 index 000000000..894e00e7b --- /dev/null +++ b/FusionIIIT/applications/research_procedures/migrations/0004_auto_20250120_1903.py @@ -0,0 +1,19 @@ +# Generated by Django 3.1.5 on 2025-01-20 19:03 + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('research_procedures', '0003_merge_20241023_0545'), + ] + + operations = [ + migrations.AlterField( + model_name='staff_allocations', + name='start_date', + field=models.DateField(default=datetime.date.today), + ), + ] diff --git a/FusionIIIT/applications/scholarships/migrations/0002_auto_20250120_1903.py b/FusionIIIT/applications/scholarships/migrations/0002_auto_20250120_1903.py new file mode 100644 index 000000000..4a43102b2 --- /dev/null +++ b/FusionIIIT/applications/scholarships/migrations/0002_auto_20250120_1903.py @@ -0,0 +1,18 @@ +# Generated by Django 3.1.5 on 2025-01-20 19:03 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('scholarships', '0001_initial'), + ] + + operations = [ + migrations.AlterField( + model_name='previous_winner', + name='year', + field=models.IntegerField(default=2025), + ), + ] From 4e63a458d4d709432a50aeb8fd48728df6aa7d38 Mon Sep 17 00:00:00 2001 From: Abhijeet Date: Mon, 20 Jan 2025 19:28:19 +0530 Subject: [PATCH 4/7] Removed migrations --- .../migrations/0002_auto_20250120_1903.py | 38 --- .../migrations/0004_auto_20250120_1903.py | 19 -- .../eis/migrations/0001_initial.py | 280 ------------------ .../migrations/0003_auto_20250120_1903.py | 47 --- .../migrations/0002_auto_20250120_1903.py | 23 -- .../migrations/0004_auto_20250120_1903.py | 19 -- .../migrations/0002_auto_20250120_1903.py | 18 -- 7 files changed, 444 deletions(-) delete mode 100644 FusionIIIT/applications/academic_procedures/migrations/0002_auto_20250120_1903.py delete mode 100644 FusionIIIT/applications/central_mess/migrations/0004_auto_20250120_1903.py delete mode 100644 FusionIIIT/applications/eis/migrations/0001_initial.py delete mode 100644 FusionIIIT/applications/iwdModuleV2/migrations/0003_auto_20250120_1903.py delete mode 100644 FusionIIIT/applications/programme_curriculum/migrations/0002_auto_20250120_1903.py delete mode 100644 FusionIIIT/applications/research_procedures/migrations/0004_auto_20250120_1903.py delete mode 100644 FusionIIIT/applications/scholarships/migrations/0002_auto_20250120_1903.py diff --git a/FusionIIIT/applications/academic_procedures/migrations/0002_auto_20250120_1903.py b/FusionIIIT/applications/academic_procedures/migrations/0002_auto_20250120_1903.py deleted file mode 100644 index 0f97b0696..000000000 --- a/FusionIIIT/applications/academic_procedures/migrations/0002_auto_20250120_1903.py +++ /dev/null @@ -1,38 +0,0 @@ -# Generated by Django 3.1.5 on 2025-01-20 19:03 - -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/0004_auto_20250120_1903.py b/FusionIIIT/applications/central_mess/migrations/0004_auto_20250120_1903.py deleted file mode 100644 index d3bda0465..000000000 --- a/FusionIIIT/applications/central_mess/migrations/0004_auto_20250120_1903.py +++ /dev/null @@ -1,19 +0,0 @@ -# Generated by Django 3.1.5 on 2025-01-20 19:03 - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('central_mess', '0003_merge_20241023_0545'), - ] - - operations = [ - migrations.AlterField( - model_name='payments', - name='payment_date', - field=models.DateField(default=datetime.date.today), - ), - ] diff --git a/FusionIIIT/applications/eis/migrations/0001_initial.py b/FusionIIIT/applications/eis/migrations/0001_initial.py deleted file mode 100644 index 265b34ac7..000000000 --- a/FusionIIIT/applications/eis/migrations/0001_initial.py +++ /dev/null @@ -1,280 +0,0 @@ -# Generated by Django 3.1.5 on 2024-07-16 15:44 - -import datetime -from django.conf import settings -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - initial = True - - dependencies = [ - ('auth', '0012_alter_user_first_name_max_length'), - migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ] - - operations = [ - migrations.CreateModel( - name='faculty_about', - fields=[ - ('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, primary_key=True, serialize=False, to='auth.user')), - ('about', models.TextField(max_length=1000)), - ('doj', models.DateField(default=datetime.datetime.now)), - ('education', models.TextField(max_length=500)), - ('interest', models.TextField(max_length=500)), - ('contact', models.CharField(blank=True, max_length=10, null=True)), - ('github', models.CharField(blank=True, max_length=100, null=True)), - ('linkedin', models.CharField(blank=True, max_length=100, null=True)), - ], - ), - migrations.CreateModel( - name='emp_visits', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('pf_no', models.CharField(max_length=20)), - ('v_type', models.IntegerField(default=1)), - ('country', models.CharField(default=' ', max_length=500)), - ('place', models.CharField(default=' ', max_length=500)), - ('purpose', models.CharField(default=' ', max_length=500)), - ('v_date', models.DateField(blank=True, null=True)), - ('start_date', models.DateField(blank=True, null=True)), - ('end_date', models.DateField(blank=True, null=True)), - ('entry_date', models.DateField(blank=True, default=datetime.datetime.now, null=True)), - ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), - ], - ), - migrations.CreateModel( - name='emp_techtransfer', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('pf_no', models.CharField(max_length=20)), - ('details', models.CharField(default=' ', max_length=500)), - ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), - ('start_date', models.DateField(blank=True, null=True)), - ('end_date', models.DateField(blank=True, null=True)), - ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), - ], - ), - migrations.CreateModel( - name='emp_session_chair', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('pf_no', models.CharField(max_length=20)), - ('name', models.CharField(default=' ', max_length=500)), - ('event', models.TextField(default=' ', max_length=2500)), - ('s_year', 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)], null=True, verbose_name='year')), - ('a_month', models.IntegerField(blank=True, choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10), (11, 11), (12, 12)], default=1, null=True, verbose_name='Month')), - ('start_date', models.DateField(blank=True, null=True)), - ('end_date', models.DateField(blank=True, null=True)), - ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), - ('remarks', models.CharField(default=' ', max_length=1000)), - ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), - ], - ), - migrations.CreateModel( - name='emp_research_projects', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('pf_no', models.CharField(max_length=20)), - ('ptype', models.CharField(default='Research', max_length=100)), - ('pi', models.CharField(default=' ', max_length=1000)), - ('co_pi', models.CharField(default=' ', max_length=1500)), - ('title', models.TextField(default=' ', max_length=5000)), - ('funding_agency', models.CharField(default=' ', max_length=250, null=True)), - ('financial_outlay', models.CharField(default=' ', max_length=150, null=True)), - ('status', models.CharField(choices=[('Awarded', 'Awarded'), ('Submitted', 'Submitted'), ('Ongoing', 'Ongoing'), ('Completed', 'Completed')], max_length=10)), - ('start_date', models.DateField(blank=True, null=True)), - ('finish_date', models.DateField(blank=True, null=True)), - ('date_submission', models.DateField(blank=True, null=True)), - ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), - ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), - ], - ), - migrations.CreateModel( - name='emp_research_papers', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('pf_no', models.CharField(max_length=20)), - ('rtype', models.CharField(choices=[('Journal', 'Journal'), ('Conference', 'Conference')], default='Conference', max_length=500)), - ('authors', models.CharField(blank=True, max_length=2500, null=True)), - ('co_authors', models.CharField(blank=True, max_length=2500, null=True)), - ('title_paper', models.CharField(blank=True, max_length=2500, null=True)), - ('name', models.CharField(blank=True, max_length=2500, null=True)), - ('paper', models.CharField(blank=True, max_length=1000, null=True)), - ('venue', models.CharField(blank=True, max_length=2500, null=True)), - ('volume_no', models.CharField(blank=True, max_length=500, null=True)), - ('page_no', models.CharField(blank=True, max_length=500, null=True)), - ('is_sci', models.CharField(blank=True, choices=[('SCI', 'SCI'), ('SCIE', 'SCIE')], max_length=6, null=True)), - ('isbn_no', models.CharField(blank=True, max_length=250, null=True)), - ('doi', models.CharField(blank=True, max_length=1000, null=True)), - ('start_date', models.DateField(blank=True, null=True)), - ('end_date', models.DateField(blank=True, null=True)), - ('date_acceptance', models.DateField(blank=True, null=True)), - ('date_publication', models.DateField(blank=True, null=True)), - ('year', 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)], max_length=10, null=True)), - ('a_month', models.CharField(blank=True, choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10), (11, 11), (12, 12)], default=1, max_length=500, null=True)), - ('doc_id', models.CharField(blank=True, max_length=50, null=True)), - ('doc_description', models.CharField(blank=True, max_length=1000, null=True)), - ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), - ('status', models.CharField(blank=True, choices=[('Published', 'Published'), ('Accepted', 'Accepted'), ('Communicated', 'Communicated')], max_length=15, null=True)), - ('date_submission', models.DateTimeField(blank=True, null=True)), - ('reference_number', models.CharField(blank=True, max_length=100, null=True)), - ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), - ], - ), - migrations.CreateModel( - name='emp_published_books', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('pf_no', models.CharField(max_length=20)), - ('p_type', models.CharField(choices=[('Book', 'Book'), ('Monograph', 'Monograph'), ('Book Chapter', 'Book Chapter'), ('Handbook', 'Handbook'), ('Technical Report', 'Technical Report')], max_length=16)), - ('title', models.CharField(default=' ', max_length=2500)), - ('publisher', models.CharField(default=' ', max_length=2500)), - ('pyear', 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)], null=True, verbose_name='year')), - ('authors', models.CharField(default=' ', max_length=250)), - ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), - ('publication_date', models.DateField(blank=True, null=True)), - ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), - ], - ), - migrations.CreateModel( - name='emp_patents', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('pf_no', models.CharField(max_length=20)), - ('p_no', models.CharField(max_length=150)), - ('title', models.CharField(max_length=1500)), - ('earnings', models.IntegerField(default=0)), - ('status', models.CharField(choices=[('Filed', 'Filed'), ('Granted', 'Granted'), ('Published', 'Published'), ('Owned', 'Owned')], max_length=15)), - ('p_year', 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)], null=True, verbose_name='year')), - ('a_month', models.IntegerField(blank=True, choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10), (11, 11), (12, 12)], default=1, null=True, verbose_name='Month')), - ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), - ('start_date', models.DateField(blank=True, null=True)), - ('end_date', models.DateField(blank=True, null=True)), - ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), - ], - ), - migrations.CreateModel( - name='emp_mtechphd_thesis', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('pf_no', models.CharField(max_length=20)), - ('degree_type', models.IntegerField(default=1)), - ('title', models.CharField(max_length=250)), - ('supervisors', models.CharField(max_length=250)), - ('co_supervisors', models.CharField(blank=True, max_length=250, null=True)), - ('rollno', models.CharField(max_length=200)), - ('s_name', models.CharField(max_length=5000)), - ('s_year', 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)], null=True, verbose_name='year')), - ('a_month', models.IntegerField(blank=True, choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10), (11, 11), (12, 12)], default=1, null=True, verbose_name='Month')), - ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), - ('start_date', models.DateField(blank=True, null=True)), - ('end_date', models.DateField(blank=True, null=True)), - ('semester', models.IntegerField(blank=True, default=1, null=True)), - ('status', models.CharField(blank=True, choices=[('Awarded', 'Awarded'), ('Submitted', 'Submitted'), ('Ongoing', 'Ongoing'), ('Completed', 'Completed')], max_length=10, null=True)), - ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), - ], - ), - migrations.CreateModel( - name='emp_keynote_address', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('pf_no', models.CharField(max_length=20)), - ('type', models.CharField(choices=[('Keynote', 'Keynote'), ('Plenary Address', 'Plenary Address')], default='Keynote', max_length=140)), - ('title', models.CharField(max_length=1000)), - ('name', models.CharField(max_length=1000)), - ('venue', models.CharField(max_length=1000)), - ('page_no', models.CharField(max_length=100)), - ('isbn_no', models.CharField(max_length=200)), - ('k_year', 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)], null=True, verbose_name='year')), - ('a_month', models.IntegerField(blank=True, choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10), (11, 11), (12, 12)], default=1, null=True, verbose_name='Month')), - ('start_date', models.DateField(blank=True, null=True)), - ('end_date', models.DateField(blank=True, null=True)), - ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), - ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), - ], - ), - migrations.CreateModel( - name='emp_expert_lectures', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('pf_no', models.CharField(max_length=20)), - ('l_type', models.CharField(choices=[('Expert Lecture', 'Expert Lecture'), ('Invited Talk', 'Invited Talk')], default='Expert Lecture', max_length=14)), - ('title', models.CharField(max_length=1000)), - ('place', models.CharField(max_length=1000)), - ('l_date', models.DateField(blank=True, null=True)), - ('l_year', 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)], null=True, verbose_name='year')), - ('a_month', models.IntegerField(blank=True, choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10), (11, 11), (12, 12)], default=1, null=True, verbose_name='Month')), - ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), - ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), - ], - ), - migrations.CreateModel( - name='emp_event_organized', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('pf_no', models.CharField(max_length=20)), - ('type', models.CharField(choices=[('Training Program', 'Training Program'), ('Seminar', 'Seminar'), ('Short Term Program', 'Short Term Program'), ('Workshop', 'Workshop'), ('Any Other', 'Any Other')], max_length=180)), - ('name', models.CharField(max_length=1000)), - ('sponsoring_agency', models.CharField(max_length=150)), - ('venue', models.CharField(max_length=100)), - ('role', models.CharField(choices=[('Convener', 'Convener'), ('Coordinator', 'Coordinator'), ('Co-Convener', 'Co-Convener')], max_length=11)), - ('start_date', models.DateField(blank=True, null=True)), - ('end_date', models.DateField(blank=True, null=True)), - ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), - ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), - ], - ), - migrations.CreateModel( - name='emp_consultancy_projects', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('pf_no', models.CharField(max_length=20)), - ('consultants', models.CharField(max_length=150)), - ('title', models.CharField(max_length=1000)), - ('client', models.CharField(max_length=1000)), - ('financial_outlay', models.IntegerField()), - ('start_date', models.DateField(blank=True, null=True)), - ('end_date', models.DateField(blank=True, null=True)), - ('duration', models.CharField(blank=True, max_length=500, null=True)), - ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), - ('status', models.CharField(blank=True, choices=[('Completed', 'Completed'), ('Submitted', 'Submitted'), ('Ongoing', 'Ongoing')], default='Ongoing', max_length=10, null=True)), - ('remarks', models.CharField(blank=True, max_length=1000, null=True)), - ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), - ], - ), - migrations.CreateModel( - name='emp_confrence_organised', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('pf_no', models.CharField(max_length=20)), - ('name', models.CharField(max_length=500)), - ('venue', models.CharField(max_length=500)), - ('k_year', 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)], null=True, verbose_name='year')), - ('a_month', models.IntegerField(blank=True, choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10), (11, 11), (12, 12)], default=1, null=True, verbose_name='Month')), - ('start_date', models.DateField(blank=True, null=True)), - ('end_date', models.DateField(blank=True, null=True)), - ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), - ('role1', models.CharField(blank=True, choices=[('Advisary Committee', 'Advisary Committee'), ('Program Committee', 'Program Committee'), ('Organised', 'Organised'), ('Conference Chair', 'Conference Chair'), ('Any Other', 'Any Other')], default='Any Other', max_length=200, null=True)), - ('role2', models.CharField(blank=True, max_length=200, null=True)), - ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), - ], - ), - migrations.CreateModel( - name='emp_achievement', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('pf_no', models.CharField(max_length=20)), - ('a_type', models.CharField(choices=[('Award', 'Award'), ('Honour', 'Honour'), ('Prize', 'Prize'), ('Other', 'Other')], default='Other', max_length=180)), - ('details', models.TextField(default=' ', max_length=1550)), - ('a_day', models.IntegerField(blank=True, choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10), (11, 11), (12, 12), (13, 13), (14, 14), (15, 15), (16, 16), (17, 17), (18, 18), (19, 19), (20, 20), (21, 21), (22, 22), (23, 23), (24, 24), (25, 25), (26, 26), (27, 27), (28, 28), (29, 29), (30, 30), (31, 31)], null=True, verbose_name='Day')), - ('a_month', models.IntegerField(blank=True, choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10), (11, 11), (12, 12)], null=True, verbose_name='Month')), - ('a_year', 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)], null=True, verbose_name='year')), - ('date_entry', models.DateField(default=datetime.datetime.now)), - ('achievment_date', models.DateField(blank=True, null=True)), - ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), - ], - ), - ] diff --git a/FusionIIIT/applications/iwdModuleV2/migrations/0003_auto_20250120_1903.py b/FusionIIIT/applications/iwdModuleV2/migrations/0003_auto_20250120_1903.py deleted file mode 100644 index 6bb6fec05..000000000 --- a/FusionIIIT/applications/iwdModuleV2/migrations/0003_auto_20250120_1903.py +++ /dev/null @@ -1,47 +0,0 @@ -# Generated by Django 3.1.5 on 2025-01-20 19:03 - -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('filetracking', '0001_initial'), - ('iwdModuleV2', '0002_auto_20241015_1451'), - ] - - operations = [ - migrations.AlterField( - model_name='requests', - name='description', - field=models.CharField(max_length=1000), - ), - migrations.CreateModel( - name='Proposal', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('created_by', models.CharField(max_length=200)), - ('proposal_budget', models.DecimalField(blank=True, decimal_places=2, max_digits=15, null=True)), - ('supporting_documents', models.FileField(blank=True, null=True, upload_to='proposals/')), - ('created_at', models.DateTimeField(auto_now_add=True)), - ('updated_at', models.DateTimeField(auto_now=True)), - ('status', models.CharField(choices=[('Pending', 'Pending'), ('Approved', 'Approved'), ('Rejected', 'Rejected')], default='Pending', max_length=20)), - ('file', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='filetracking.file')), - ('request', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='proposals', to='iwdModuleV2.requests')), - ], - ), - migrations.CreateModel( - name='Item', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('name', models.CharField(max_length=255)), - ('description', models.TextField()), - ('unit', models.CharField(max_length=50)), - ('price_per_unit', models.DecimalField(decimal_places=2, max_digits=10)), - ('total_price', models.DecimalField(decimal_places=2, max_digits=10)), - ('docs', models.FileField(blank=True, null=True, upload_to='items/')), - ('proposal', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='items', to='iwdModuleV2.proposal')), - ], - ), - ] diff --git a/FusionIIIT/applications/programme_curriculum/migrations/0002_auto_20250120_1903.py b/FusionIIIT/applications/programme_curriculum/migrations/0002_auto_20250120_1903.py deleted file mode 100644 index 57a6ea3cd..000000000 --- a/FusionIIIT/applications/programme_curriculum/migrations/0002_auto_20250120_1903.py +++ /dev/null @@ -1,23 +0,0 @@ -# Generated by Django 3.1.5 on 2025-01-20 19:03 - -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/0004_auto_20250120_1903.py b/FusionIIIT/applications/research_procedures/migrations/0004_auto_20250120_1903.py deleted file mode 100644 index 894e00e7b..000000000 --- a/FusionIIIT/applications/research_procedures/migrations/0004_auto_20250120_1903.py +++ /dev/null @@ -1,19 +0,0 @@ -# Generated by Django 3.1.5 on 2025-01-20 19:03 - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('research_procedures', '0003_merge_20241023_0545'), - ] - - operations = [ - migrations.AlterField( - model_name='staff_allocations', - name='start_date', - field=models.DateField(default=datetime.date.today), - ), - ] diff --git a/FusionIIIT/applications/scholarships/migrations/0002_auto_20250120_1903.py b/FusionIIIT/applications/scholarships/migrations/0002_auto_20250120_1903.py deleted file mode 100644 index 4a43102b2..000000000 --- a/FusionIIIT/applications/scholarships/migrations/0002_auto_20250120_1903.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 3.1.5 on 2025-01-20 19:03 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('scholarships', '0001_initial'), - ] - - operations = [ - migrations.AlterField( - model_name='previous_winner', - name='year', - field=models.IntegerField(default=2025), - ), - ] From 96d2e25241e59dd81d9050a62a6f5fc55cd7ab2f Mon Sep 17 00:00:00 2001 From: Abhijeet Date: Mon, 20 Jan 2025 19:31:21 +0530 Subject: [PATCH 5/7] Minor changes --- .../eis/migrations/0001_initial.py | 280 ++++++++++++++++++ .../eis/migrations/0002_auto_20250120_1903.py | 53 ---- 2 files changed, 280 insertions(+), 53 deletions(-) create mode 100644 FusionIIIT/applications/eis/migrations/0001_initial.py delete mode 100644 FusionIIIT/applications/eis/migrations/0002_auto_20250120_1903.py diff --git a/FusionIIIT/applications/eis/migrations/0001_initial.py b/FusionIIIT/applications/eis/migrations/0001_initial.py new file mode 100644 index 000000000..140702a32 --- /dev/null +++ b/FusionIIIT/applications/eis/migrations/0001_initial.py @@ -0,0 +1,280 @@ +# Generated by Django 3.1.5 on 2024-07-16 15:44 + +import datetime +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ('auth', '0012_alter_user_first_name_max_length'), + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ] + + operations = [ + migrations.CreateModel( + name='faculty_about', + fields=[ + ('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, primary_key=True, serialize=False, to='auth.user')), + ('about', models.TextField(max_length=1000)), + ('doj', models.DateField(default=datetime.datetime.now)), + ('education', models.TextField(max_length=500)), + ('interest', models.TextField(max_length=500)), + ('contact', models.CharField(blank=True, max_length=10, null=True)), + ('github', models.CharField(blank=True, max_length=100, null=True)), + ('linkedin', models.CharField(blank=True, max_length=100, null=True)), + ], + ), + migrations.CreateModel( + name='emp_visits', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('pf_no', models.CharField(max_length=20)), + ('v_type', models.IntegerField(default=1)), + ('country', models.CharField(default=' ', max_length=500)), + ('place', models.CharField(default=' ', max_length=500)), + ('purpose', models.CharField(default=' ', max_length=500)), + ('v_date', models.DateField(blank=True, null=True)), + ('start_date', models.DateField(blank=True, null=True)), + ('end_date', models.DateField(blank=True, null=True)), + ('entry_date', models.DateField(blank=True, default=datetime.datetime.now, null=True)), + ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + migrations.CreateModel( + name='emp_techtransfer', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('pf_no', models.CharField(max_length=20)), + ('details', models.CharField(default=' ', max_length=500)), + ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), + ('start_date', models.DateField(blank=True, null=True)), + ('end_date', models.DateField(blank=True, null=True)), + ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + migrations.CreateModel( + name='emp_session_chair', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('pf_no', models.CharField(max_length=20)), + ('name', models.CharField(default=' ', max_length=500)), + ('event', models.TextField(default=' ', max_length=2500)), + ('s_year', 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)], null=True, verbose_name='year')), + ('a_month', models.IntegerField(blank=True, choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10), (11, 11), (12, 12)], default=1, null=True, verbose_name='Month')), + ('start_date', models.DateField(blank=True, null=True)), + ('end_date', models.DateField(blank=True, null=True)), + ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), + ('remarks', models.CharField(default=' ', max_length=1000)), + ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + migrations.CreateModel( + name='emp_research_projects', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('pf_no', models.CharField(max_length=20)), + ('ptype', models.CharField(default='Research', max_length=100)), + ('pi', models.CharField(default=' ', max_length=1000)), + ('co_pi', models.CharField(default=' ', max_length=1500)), + ('title', models.TextField(default=' ', max_length=5000)), + ('funding_agency', models.CharField(default=' ', max_length=250, null=True)), + ('financial_outlay', models.CharField(default=' ', max_length=150, null=True)), + ('status', models.CharField(choices=[('Awarded', 'Awarded'), ('Submitted', 'Submitted'), ('Ongoing', 'Ongoing'), ('Completed', 'Completed')], max_length=10)), + ('start_date', models.DateField(blank=True, null=True)), + ('finish_date', models.DateField(blank=True, null=True)), + ('date_submission', models.DateField(blank=True, null=True)), + ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), + ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + migrations.CreateModel( + name='emp_research_papers', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('pf_no', models.CharField(max_length=20)), + ('rtype', models.CharField(choices=[('Journal', 'Journal'), ('Conference', 'Conference')], default='Conference', max_length=500)), + ('authors', models.CharField(blank=True, max_length=2500, null=True)), + ('co_authors', models.CharField(blank=True, max_length=2500, null=True)), + ('title_paper', models.CharField(blank=True, max_length=2500, null=True)), + ('name', models.CharField(blank=True, max_length=2500, null=True)), + ('paper', models.CharField(blank=True, max_length=1000, null=True)), + ('venue', models.CharField(blank=True, max_length=2500, null=True)), + ('volume_no', models.CharField(blank=True, max_length=500, null=True)), + ('page_no', models.CharField(blank=True, max_length=500, null=True)), + ('is_sci', models.CharField(blank=True, choices=[('SCI', 'SCI'), ('SCIE', 'SCIE')], max_length=6, null=True)), + ('isbn_no', models.CharField(blank=True, max_length=250, null=True)), + ('doi', models.CharField(blank=True, max_length=1000, null=True)), + ('start_date', models.DateField(blank=True, null=True)), + ('end_date', models.DateField(blank=True, null=True)), + ('date_acceptance', models.DateField(blank=True, null=True)), + ('date_publication', models.DateField(blank=True, null=True)), + ('year', 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)], max_length=10, null=True)), + ('a_month', models.CharField(blank=True, choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10), (11, 11), (12, 12)], default=1, max_length=500, null=True)), + ('doc_id', models.CharField(blank=True, max_length=50, null=True)), + ('doc_description', models.CharField(blank=True, max_length=1000, null=True)), + ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), + ('status', models.CharField(blank=True, choices=[('Published', 'Published'), ('Accepted', 'Accepted'), ('Communicated', 'Communicated')], max_length=15, null=True)), + ('date_submission', models.DateTimeField(blank=True, null=True)), + ('reference_number', models.CharField(blank=True, max_length=100, null=True)), + ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + migrations.CreateModel( + name='emp_published_books', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('pf_no', models.CharField(max_length=20)), + ('p_type', models.CharField(choices=[('Book', 'Book'), ('Monograph', 'Monograph'), ('Book Chapter', 'Book Chapter'), ('Handbook', 'Handbook'), ('Technical Report', 'Technical Report')], max_length=16)), + ('title', models.CharField(default=' ', max_length=2500)), + ('publisher', models.CharField(default=' ', max_length=2500)), + ('pyear', 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)], null=True, verbose_name='year')), + ('authors', models.CharField(default=' ', max_length=250)), + ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), + ('publication_date', models.DateField(blank=True, null=True)), + ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + migrations.CreateModel( + name='emp_patents', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('pf_no', models.CharField(max_length=20)), + ('p_no', models.CharField(max_length=150)), + ('title', models.CharField(max_length=1500)), + ('earnings', models.IntegerField(default=0)), + ('status', models.CharField(choices=[('Filed', 'Filed'), ('Granted', 'Granted'), ('Published', 'Published'), ('Owned', 'Owned')], max_length=15)), + ('p_year', 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)], null=True, verbose_name='year')), + ('a_month', models.IntegerField(blank=True, choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10), (11, 11), (12, 12)], default=1, null=True, verbose_name='Month')), + ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), + ('start_date', models.DateField(blank=True, null=True)), + ('end_date', models.DateField(blank=True, null=True)), + ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + migrations.CreateModel( + name='emp_mtechphd_thesis', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('pf_no', models.CharField(max_length=20)), + ('degree_type', models.IntegerField(default=1)), + ('title', models.CharField(max_length=250)), + ('supervisors', models.CharField(max_length=250)), + ('co_supervisors', models.CharField(blank=True, max_length=250, null=True)), + ('rollno', models.CharField(max_length=200)), + ('s_name', models.CharField(max_length=5000)), + ('s_year', 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)], null=True, verbose_name='year')), + ('a_month', models.IntegerField(blank=True, choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10), (11, 11), (12, 12)], default=1, null=True, verbose_name='Month')), + ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), + ('start_date', models.DateField(blank=True, null=True)), + ('end_date', models.DateField(blank=True, null=True)), + ('semester', models.IntegerField(blank=True, default=1, null=True)), + ('status', models.CharField(blank=True, choices=[('Awarded', 'Awarded'), ('Submitted', 'Submitted'), ('Ongoing', 'Ongoing'), ('Completed', 'Completed')], max_length=10, null=True)), + ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + migrations.CreateModel( + name='emp_keynote_address', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('pf_no', models.CharField(max_length=20)), + ('type', models.CharField(choices=[('Keynote', 'Keynote'), ('Plenary Address', 'Plenary Address')], default='Keynote', max_length=140)), + ('title', models.CharField(max_length=1000)), + ('name', models.CharField(max_length=1000)), + ('venue', models.CharField(max_length=1000)), + ('page_no', models.CharField(max_length=100)), + ('isbn_no', models.CharField(max_length=200)), + ('k_year', 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)], null=True, verbose_name='year')), + ('a_month', models.IntegerField(blank=True, choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10), (11, 11), (12, 12)], default=1, null=True, verbose_name='Month')), + ('start_date', models.DateField(blank=True, null=True)), + ('end_date', models.DateField(blank=True, null=True)), + ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), + ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + migrations.CreateModel( + name='emp_expert_lectures', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('pf_no', models.CharField(max_length=20)), + ('l_type', models.CharField(choices=[('Expert Lecture', 'Expert Lecture'), ('Invited Talk', 'Invited Talk')], default='Expert Lecture', max_length=14)), + ('title', models.CharField(max_length=1000)), + ('place', models.CharField(max_length=1000)), + ('l_date', models.DateField(blank=True, null=True)), + ('l_year', 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)], null=True, verbose_name='year')), + ('a_month', models.IntegerField(blank=True, choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10), (11, 11), (12, 12)], default=1, null=True, verbose_name='Month')), + ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), + ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + migrations.CreateModel( + name='emp_event_organized', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('pf_no', models.CharField(max_length=20)), + ('type', models.CharField(choices=[('Training Program', 'Training Program'), ('Seminar', 'Seminar'), ('Short Term Program', 'Short Term Program'), ('Workshop', 'Workshop'), ('Any Other', 'Any Other')], max_length=180)), + ('name', models.CharField(max_length=1000)), + ('sponsoring_agency', models.CharField(max_length=150)), + ('venue', models.CharField(max_length=100)), + ('role', models.CharField(choices=[('Convener', 'Convener'), ('Coordinator', 'Coordinator'), ('Co-Convener', 'Co-Convener')], max_length=11)), + ('start_date', models.DateField(blank=True, null=True)), + ('end_date', models.DateField(blank=True, null=True)), + ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), + ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + migrations.CreateModel( + name='emp_consultancy_projects', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('pf_no', models.CharField(max_length=20)), + ('consultants', models.CharField(max_length=150)), + ('title', models.CharField(max_length=1000)), + ('client', models.CharField(max_length=1000)), + ('financial_outlay', models.IntegerField()), + ('start_date', models.DateField(blank=True, null=True)), + ('end_date', models.DateField(blank=True, null=True)), + ('duration', models.CharField(blank=True, max_length=500, null=True)), + ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), + ('status', models.CharField(blank=True, choices=[('Completed', 'Completed'), ('Submitted', 'Submitted'), ('Ongoing', 'Ongoing')], default='Ongoing', max_length=10, null=True)), + ('remarks', models.CharField(blank=True, max_length=1000, null=True)), + ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + migrations.CreateModel( + name='emp_confrence_organised', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('pf_no', models.CharField(max_length=20)), + ('name', models.CharField(max_length=500)), + ('venue', models.CharField(max_length=500)), + ('k_year', 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)], null=True, verbose_name='year')), + ('a_month', models.IntegerField(blank=True, choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10), (11, 11), (12, 12)], default=1, null=True, verbose_name='Month')), + ('start_date', models.DateField(blank=True, null=True)), + ('end_date', models.DateField(blank=True, null=True)), + ('date_entry', models.DateField(blank=True, default=datetime.datetime.now, null=True)), + ('role1', models.CharField(blank=True, choices=[('Advisary Committee', 'Advisary Committee'), ('Program Committee', 'Program Committee'), ('Organised', 'Organised'), ('Conference Chair', 'Conference Chair'), ('Any Other', 'Any Other')], default='Any Other', max_length=200, null=True)), + ('role2', models.CharField(blank=True, max_length=200, null=True)), + ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + migrations.CreateModel( + name='emp_achievement', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('pf_no', models.CharField(max_length=20)), + ('a_type', models.CharField(choices=[('Award', 'Award'), ('Honour', 'Honour'), ('Prize', 'Prize'), ('Other', 'Other')], default='Other', max_length=180)), + ('details', models.TextField(default=' ', max_length=1550)), + ('a_day', models.IntegerField(blank=True, choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10), (11, 11), (12, 12), (13, 13), (14, 14), (15, 15), (16, 16), (17, 17), (18, 18), (19, 19), (20, 20), (21, 21), (22, 22), (23, 23), (24, 24), (25, 25), (26, 26), (27, 27), (28, 28), (29, 29), (30, 30), (31, 31)], null=True, verbose_name='Day')), + ('a_month', models.IntegerField(blank=True, choices=[(1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9), (10, 10), (11, 11), (12, 12)], null=True, verbose_name='Month')), + ('a_year', 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)], null=True, verbose_name='year')), + ('date_entry', models.DateField(default=datetime.datetime.now)), + ('achievment_date', models.DateField(blank=True, null=True)), + ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + ), + ] \ No newline at end of file diff --git a/FusionIIIT/applications/eis/migrations/0002_auto_20250120_1903.py b/FusionIIIT/applications/eis/migrations/0002_auto_20250120_1903.py deleted file mode 100644 index 451f2db4f..000000000 --- a/FusionIIIT/applications/eis/migrations/0002_auto_20250120_1903.py +++ /dev/null @@ -1,53 +0,0 @@ -# Generated by Django 3.1.5 on 2025-01-20 19:03 - -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), - ), - ] From dd301b205430055df04cec180e0728182fb486d3 Mon Sep 17 00:00:00 2001 From: Divyansh Bisht <115489768+dcoder13@users.noreply.github.com> Date: Tue, 21 Jan 2025 15:26:29 +0530 Subject: [PATCH 6/7] Update models.py --- FusionIIIT/applications/iwdModuleV2/models.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/FusionIIIT/applications/iwdModuleV2/models.py b/FusionIIIT/applications/iwdModuleV2/models.py index 0105c5bfc..b48f1ff49 100644 --- a/FusionIIIT/applications/iwdModuleV2/models.py +++ b/FusionIIIT/applications/iwdModuleV2/models.py @@ -200,20 +200,23 @@ class Budget(models.Model): budgetIssued = models.IntegerField(default=0) class Proposal(models.Model): - request = models.ForeignKey(Requests, on_delete=models.CASCADE, related_name='proposals') - created_by = models.CharField(max_length=200) #models.ForeignKey(User, on_delete=models.CASCADE) + request_id = models.ForeignKey(Requests, on_delete=models.CASCADE) + created_by = models.CharField(max_length=200) file = models.ForeignKey(File, on_delete=models.CASCADE, null=True, blank=True) proposal_budget = models.DecimalField(max_digits=15, decimal_places=2, null=True, blank=True) supporting_documents = models.FileField(upload_to='proposals/', null=True, blank=True) created_at = models.DateTimeField(auto_now_add=True) updated_at = models.DateTimeField(auto_now=True) - status = models.CharField(max_length=20, choices=[('Pending', 'Pending'), ('Approved', 'Approved'), ('Rejected', 'Rejected')], default='Pending') + issuedWorkOrder = models.IntegerField(default=0) + workCompleted = models.IntegerField(default=0) + billGenerated = models.IntegerField(default=0) + billProcessed = models.IntegerField(default=0) + billSettled = models.IntegerField(default=0) class Item(models.Model): - proposal = models.ForeignKey('Proposal', on_delete=models.CASCADE, related_name='items') + proposal_id = models.ForeignKey('Proposal', on_delete=models.CASCADE) name = models.CharField(max_length=255) description = models.TextField() unit = models.CharField(max_length=50) price_per_unit = models.DecimalField(max_digits=10, decimal_places=2) total_price = models.DecimalField(max_digits=10, decimal_places=2) - docs = models.FileField(upload_to='items/', null=True, blank=True) \ No newline at end of file From a2c734bc556be127c6c67e66bd04bdd76ce0a0fe Mon Sep 17 00:00:00 2001 From: Divyansh Bisht <115489768+dcoder13@users.noreply.github.com> Date: Tue, 21 Jan 2025 15:48:33 +0530 Subject: [PATCH 7/7] Update models.py --- FusionIIIT/applications/iwdModuleV2/models.py | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/FusionIIIT/applications/iwdModuleV2/models.py b/FusionIIIT/applications/iwdModuleV2/models.py index b48f1ff49..3dd3058d3 100644 --- a/FusionIIIT/applications/iwdModuleV2/models.py +++ b/FusionIIIT/applications/iwdModuleV2/models.py @@ -198,25 +198,21 @@ class Bills(models.Model): class Budget(models.Model): name = models.CharField(max_length=200) budgetIssued = models.IntegerField(default=0) - + class Proposal(models.Model): - request_id = models.ForeignKey(Requests, on_delete=models.CASCADE) - created_by = models.CharField(max_length=200) + request = models.ForeignKey(Requests, on_delete=models.CASCADE, related_name='proposals') + created_by = models.CharField(max_length=200) #models.ForeignKey(User, on_delete=models.CASCADE) file = models.ForeignKey(File, on_delete=models.CASCADE, null=True, blank=True) proposal_budget = models.DecimalField(max_digits=15, decimal_places=2, null=True, blank=True) supporting_documents = models.FileField(upload_to='proposals/', null=True, blank=True) created_at = models.DateTimeField(auto_now_add=True) updated_at = models.DateTimeField(auto_now=True) - issuedWorkOrder = models.IntegerField(default=0) - workCompleted = models.IntegerField(default=0) - billGenerated = models.IntegerField(default=0) - billProcessed = models.IntegerField(default=0) - billSettled = models.IntegerField(default=0) - + status = models.CharField(max_length=20, choices=[('Pending', 'Pending'), ('Approved', 'Approved'), ('Rejected', 'Rejected')], default='Pending') class Item(models.Model): - proposal_id = models.ForeignKey('Proposal', on_delete=models.CASCADE) + proposal = models.ForeignKey('Proposal', on_delete=models.CASCADE, related_name='items') name = models.CharField(max_length=255) description = models.TextField() unit = models.CharField(max_length=50) price_per_unit = models.DecimalField(max_digits=10, decimal_places=2) total_price = models.DecimalField(max_digits=10, decimal_places=2) + docs = models.FileField(upload_to='items/', null=True, blank=True)