diff --git a/FusionIIIT/applications/globals/migrations/0015_auto_20240315_2100.py b/FusionIIIT/applications/globals/migrations/0015_auto_20240315_2100.py new file mode 100644 index 000000000..223656449 --- /dev/null +++ b/FusionIIIT/applications/globals/migrations/0015_auto_20240315_2100.py @@ -0,0 +1,18 @@ +# Generated by Django 3.1.5 on 2024-03-15 21:00 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('globals', '0014_auto_20240312_1930'), + ] + + 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/0019_merge_20240315_2153.py b/FusionIIIT/applications/globals/migrations/0019_merge_20240315_2153.py new file mode 100644 index 000000000..742ec09cd --- /dev/null +++ b/FusionIIIT/applications/globals/migrations/0019_merge_20240315_2153.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-03-15 21:53 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('globals', '0015_auto_20240315_2100'), + ('globals', '0018_merge_20240315_1500'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/globals/migrations/0020_auto_20240315_2158.py b/FusionIIIT/applications/globals/migrations/0020_auto_20240315_2158.py new file mode 100644 index 000000000..d7d37f5d2 --- /dev/null +++ b/FusionIIIT/applications/globals/migrations/0020_auto_20240315_2158.py @@ -0,0 +1,18 @@ +# Generated by Django 3.1.5 on 2024-03-15 21:58 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('globals', '0019_merge_20240315_2153'), + ] + + 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/hostel_management/migrations/0016_hostelleave_remark.py b/FusionIIIT/applications/hostel_management/migrations/0016_hostelleave_remark.py new file mode 100644 index 000000000..402af32bf --- /dev/null +++ b/FusionIIIT/applications/hostel_management/migrations/0016_hostelleave_remark.py @@ -0,0 +1,18 @@ +# Generated by Django 3.1.5 on 2024-03-15 21:00 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('hostel_management', '0015_merge_20240220_1917'), + ] + + operations = [ + migrations.AddField( + model_name='hostelleave', + name='remark', + field=models.TextField(blank=True, null=True), + ), + ] diff --git a/FusionIIIT/applications/hostel_management/migrations/0019_merge_20240315_2153.py b/FusionIIIT/applications/hostel_management/migrations/0019_merge_20240315_2153.py new file mode 100644 index 000000000..8beebe6f8 --- /dev/null +++ b/FusionIIIT/applications/hostel_management/migrations/0019_merge_20240315_2153.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.5 on 2024-03-15 21:53 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('hostel_management', '0018_hostelhistory'), + ('hostel_management', '0016_hostelleave_remark'), + ] + + operations = [ + ] diff --git a/FusionIIIT/applications/hostel_management/models.py b/FusionIIIT/applications/hostel_management/models.py index df18d5959..1108f573a 100644 --- a/FusionIIIT/applications/hostel_management/models.py +++ b/FusionIIIT/applications/hostel_management/models.py @@ -257,6 +257,7 @@ class HostelLeave(models.Model): start_date = models.DateField(default=timezone.now) end_date = models.DateField() status = models.CharField(max_length=20, default='pending') + remark = models.TextField(blank=True, null=True) def __str__(self): diff --git a/FusionIIIT/applications/hostel_management/views.py b/FusionIIIT/applications/hostel_management/views.py index 48fe23805..74a366749 100644 --- a/FusionIIIT/applications/hostel_management/views.py +++ b/FusionIIIT/applications/hostel_management/views.py @@ -706,6 +706,7 @@ def create_hostel_leave(request): reason = data.get('reason') start_date = data.get('start_date', timezone.now()) end_date = data.get('end_date') + # Create HostelLeave object and save to the database leave = HostelLeave.objects.create( @@ -713,7 +714,8 @@ def create_hostel_leave(request): roll_num=roll_num, reason=reason, start_date=start_date, - end_date=end_date + end_date=end_date, + ) return JsonResponse({'message': 'HostelLeave created successfully'}, status=status.HTTP_201_CREATED) @@ -1597,8 +1599,9 @@ def update_leave_status(request): try: leave = HostelLeave.objects.get(id=leave_id) leave.status = status + leave.remark = request.POST.get('remark') leave.save() - return JsonResponse({'status': status, 'message': 'Leave status updated successfully.'}) + return JsonResponse({'status': status,'remarks':leave.remark,'message': 'Leave status updated successfully.'}) except HostelLeave.DoesNotExist: return JsonResponse({'status': 'error', 'message': 'Leave not found.'}, status=404) else: diff --git a/FusionIIIT/templates/hostelmanagement/all_leave_data.html b/FusionIIIT/templates/hostelmanagement/all_leave_data.html index 486896342..485a5f912 100644 --- a/FusionIIIT/templates/hostelmanagement/all_leave_data.html +++ b/FusionIIIT/templates/hostelmanagement/all_leave_data.html @@ -1,6 +1,6 @@ {% block leave_requests %} -

All Leave Requests

-
+

All Leave Requests

+
@@ -11,11 +11,11 @@

All Leave Requests

+ {% for leave in all_leaves %} - @@ -23,58 +23,91 @@

All Leave Requests

- + - {% endfor %}
End Date Status ActionsRemark
{{ leave.student_name }} {{ leave.roll_num }} {{ leave.start_date }} {{ leave.end_date }} {{ leave.status }} + + + +
+ {% csrf_token %} + {%if leave.status == 'pending' %} + {%endif%}
{% csrf_token %} - + +
+ + +
{{leave.remark}}
-
- +
+ + + + }); + {% endblock %} \ No newline at end of file diff --git a/FusionIIIT/templates/hostelmanagement/create_leave.html b/FusionIIIT/templates/hostelmanagement/create_leave.html index 99d4fe7bc..1e989c34d 100644 --- a/FusionIIIT/templates/hostelmanagement/create_leave.html +++ b/FusionIIIT/templates/hostelmanagement/create_leave.html @@ -1,65 +1,78 @@ {% block create_leave %} -

Leave Form

-
- {% csrf_token %} -
+

Leave Form

+ + {% csrf_token %} +
-

-
-
+

+
+


-
-
+
+


-
-
+
+
-

-
-
+

+
+
-

-
-
- -
- - + {% endblock %} \ No newline at end of file diff --git a/FusionIIIT/templates/hostelmanagement/my_leaves.html b/FusionIIIT/templates/hostelmanagement/my_leaves.html index 662050e11..6b12edc2d 100644 --- a/FusionIIIT/templates/hostelmanagement/my_leaves.html +++ b/FusionIIIT/templates/hostelmanagement/my_leaves.html @@ -1,6 +1,6 @@ {% block leave_status %} -

My Leaves

-
+

My Leaves

+
@@ -9,6 +9,7 @@

My Leaves

+ @@ -22,24 +23,26 @@

My Leaves

class="{% if leave.status == 'Approved' %}approved-status{% elif leave.status == 'Rejected' %}rejected-status{% elif leave.status == 'pending' %}pending-status{%endif%}"> {{ leave.status }} + {% endfor %}
Start Date End Date StatusRemark
{{ leave.remark }}
-
- -{% endblock %} +
+ +{% endblock %} \ No newline at end of file