This commit is contained in:
sankalp committed 2025-01-16 13:16:44 +05:45
1 parent 7c09b319aa
commit edb0f45871
105 files changed
-19786

No files matched your search

-259
View File
@@ -1,259 +0,0 @@
# Generated by Django 5.1.4 on 2025-01-09 17:58
import django.core.validators
import django.db.models.deletion
from decimal import Decimal
from django.conf import settings
from django.db import migrations, models
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='AcademicYear',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('year', models.CharField(max_length=255, unique=True)),
],
options={
'verbose_name': 'Academic Year',
'verbose_name_plural': 'Academic Years',
},
),
migrations.CreateModel(
name='Course',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=100)),
('level', models.CharField(choices=[('basic', 'Basic'), ('primary', 'Primary'), ('secondary', 'Secondary'), ('vocational traning', 'Vocational Traning'), ('higher secondary', 'Higher Secondary'), ('graduation', 'Graduation'), ('post graduation', 'Post Graduation')], max_length=45)),
('course_type', models.CharField(choices=[('semester', 'Semester-based'), ('yearly', 'Yearly-based')], max_length=10)),
('duration', models.PositiveIntegerField()),
],
options={
'verbose_name': 'Course',
'verbose_name_plural': 'Courses',
},
),
migrations.CreateModel(
name='Library',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('category', models.CharField(max_length=255)),
('book_name', models.CharField(max_length=255)),
('description', models.CharField(max_length=255)),
('publication', models.CharField(max_length=255)),
('publication_year', models.PositiveIntegerField()),
('quantity', models.PositiveIntegerField()),
('available', models.CharField(choices=[('Y', 'Yes'), ('N', 'NO')], max_length=1)),
('date_added', models.DateField(auto_now_add=True)),
],
options={
'verbose_name': 'Library',
'verbose_name_plural': 'Library',
},
),
migrations.CreateModel(
name='NewsEvent',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('title', models.CharField(max_length=255)),
('summary', models.TextField()),
('type', models.CharField(choices=[('news', 'News'), ('event', 'Event')], max_length=5)),
('created_at', models.DateTimeField(auto_now_add=True)),
],
options={
'verbose_name': 'News/Event',
'verbose_name_plural': 'News/Events',
},
),
migrations.CreateModel(
name='Staff',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('active_status', models.BooleanField(default=True)),
('first_name', models.CharField(max_length=255)),
('middle_name', models.CharField(blank=True, max_length=255, null=True)),
('last_name', models.CharField(max_length=255)),
('email', models.EmailField(max_length=255, unique=True)),
('phone', models.CharField(max_length=10, validators=[django.core.validators.RegexValidator('^\\d{10}$')])),
('username', models.CharField(blank=True, max_length=255, null=True, unique=True)),
('password', models.CharField(max_length=255)),
('gender', models.CharField(choices=[('M', 'Male'), ('F', 'Female')], max_length=1)),
('position', models.CharField(choices=[('lab Assistant', 'Lab Assistant'), ('librarian', 'Librarian'), ('accountant', 'Accountant'), ('guard', 'Guard'), ('driver', 'Driver'), ('helper', 'Helper'), ('cleaner', 'Cleaner')], max_length=255)),
('address', models.CharField(max_length=255)),
('marital_status', models.CharField(choices=[('married', 'Married'), ('widowed', 'Widowed'), ('separated', 'Separated'), ('divorced', 'Divorced'), ('single', 'Single')], max_length=10)),
('date_of_joining', models.DateField()),
('group', models.ManyToManyField(blank=True, to='auth.group')),
('user', models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
],
options={
'verbose_name': 'Staff',
'verbose_name_plural': 'Staff',
},
),
migrations.CreateModel(
name='Student',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('active_status', models.BooleanField(default=True)),
('first_name', models.CharField(max_length=255)),
('middle_name', models.CharField(blank=True, max_length=255, null=True)),
('last_name', models.CharField(max_length=255)),
('email', models.EmailField(max_length=255, unique=True)),
('phone', models.CharField(max_length=10, validators=[django.core.validators.RegexValidator('^\\d{10}$')])),
('username', models.CharField(blank=True, max_length=255, null=True, unique=True)),
('password', models.CharField(max_length=255)),
('date_of_birth', models.DateField()),
('gender', models.CharField(choices=[('M', 'Male'), ('F', 'Female')], max_length=1)),
('address', models.CharField(max_length=255)),
('father_name', models.CharField(max_length=100)),
('father_phone_no', models.CharField(max_length=10, validators=[django.core.validators.RegexValidator('^\\d{10}$')])),
('father_email', models.EmailField(blank=True, max_length=254, null=True)),
('father_occupation', models.CharField(choices=[('agriculture', 'Agriculture'), ('banker', 'Banker'), ('business', 'Business'), ('doctor', 'Doctor'), ('farmer', 'Farmer'), ('fisherman', 'Fisherman'), ('public service', 'Public Service'), ('private service', 'Private Service'), ('shopkeeper', 'Shopkeeper'), ('driver', 'Driver'), ('worker', 'Worker'), ('N/A', 'N/A')], default='N/A', max_length=45)),
('mother_name', models.CharField(max_length=100)),
('mother_phone_no', models.CharField(blank=True, max_length=10, null=True, validators=[django.core.validators.RegexValidator('^\\d{10}$')])),
('mother_email', models.EmailField(blank=True, max_length=254, null=True)),
('mother_occupation', models.CharField(choices=[('agriculture', 'Agriculture'), ('banker', 'Banker'), ('business', 'Business'), ('doctor', 'Doctor'), ('farmer', 'Farmer'), ('fisherman', 'Fisherman'), ('public service', 'Public Service'), ('private service', 'Private Service'), ('shopkeeper', 'Shopkeeper'), ('driver', 'Driver'), ('houseWife', 'HouseWife'), ('worker', 'Worker'), ('N/A', 'N/A')], default='N/A', max_length=45)),
('guardian_name', models.CharField(max_length=100)),
('guardian_phone_no', models.CharField(max_length=10, validators=[django.core.validators.RegexValidator('^\\d{10}$')])),
('guardian_email', models.EmailField(blank=True, max_length=254, null=True)),
('relationship_with_student', models.CharField(choices=[('father', 'Father'), ('mother', 'Mother'), ('brother', 'Brother'), ('sister', 'Sister'), ('uncle', 'Uncle'), ('aunt', 'Aunt'), ('grandfather', 'Grandfather')], max_length=45)),
('academic_year', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='app.academicyear')),
('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='app.course')),
('group', models.ManyToManyField(blank=True, to='auth.group')),
('user', models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
],
options={
'verbose_name': 'Student',
'verbose_name_plural': 'Students',
},
),
migrations.CreateModel(
name='Marksheet',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('total_marks', models.PositiveIntegerField(default=Decimal('0.00'), help_text='Total marks for the course', validators=[django.core.validators.MinValueValidator(1)])),
('obtained_marks', models.PositiveIntegerField(default=Decimal('0.00'), help_text='Total marks obtained by the student', validators=[django.core.validators.MinValueValidator(0)])),
('grade', models.CharField(blank=True, choices=[('A+', 'A+'), ('A', 'A'), ('B+', 'B+'), ('B', 'B'), ('C+', 'C+'), ('C', 'C'), ('D', 'D'), ('E', 'E')], help_text='Grade assigned based on marks', max_length=2, null=True)),
('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='marksheets', to='app.course')),
('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='marksheets', to='app.student')),
],
options={
'verbose_name': 'Marksheet',
'verbose_name_plural': 'Marksheets',
'unique_together': {('student', 'course')},
},
),
migrations.CreateModel(
name='Certificate',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('title', models.CharField(max_length=255)),
('description', models.TextField(blank=True, null=True)),
('issue_date', models.DateField(auto_now_add=True)),
('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='app.course')),
('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='app.student')),
],
options={
'verbose_name': 'Certificate',
'verbose_name_plural': 'Certificate',
},
),
migrations.CreateModel(
name='Subject',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=255)),
('semester_or_year_number', models.PositiveIntegerField()),
('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='subjects', to='app.course')),
],
options={
'verbose_name': 'Subject',
'verbose_name_plural': 'Subjects',
},
),
migrations.CreateModel(
name='Result',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('practical_marks', models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=5)),
('exam_marks', models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=5)),
('total_marks', models.DecimalField(decimal_places=2, default=Decimal('0.00'), editable=False, max_digits=5)),
('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='app.student')),
('subject', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='app.subject')),
],
options={
'verbose_name': 'Result',
'verbose_name_plural': 'Results',
},
),
migrations.CreateModel(
name='Attendance',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('date', models.DateField()),
('status', models.CharField(choices=[('present', 'Present'), ('absent', 'Absent')], max_length=10)),
('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='app.student')),
('subject', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='app.subject')),
],
options={
'verbose_name': 'Attendance',
'verbose_name_plural': 'Attendance Records',
},
),
migrations.CreateModel(
name='Teacher',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('active_status', models.BooleanField(default=True)),
('first_name', models.CharField(max_length=255)),
('middle_name', models.CharField(blank=True, max_length=255, null=True)),
('last_name', models.CharField(max_length=255)),
('email', models.EmailField(max_length=255, unique=True)),
('phone', models.CharField(max_length=10, validators=[django.core.validators.RegexValidator('^\\d{10}$')])),
('username', models.CharField(blank=True, max_length=255, null=True, unique=True)),
('password', models.CharField(max_length=255)),
('address', models.CharField(max_length=255)),
('gender', models.CharField(choices=[('M', 'Male'), ('F', 'Female')], max_length=1)),
('qualification', models.CharField(choices=[('BA', 'BA'), ('BBS', 'BBS'), ('BE', 'BE'), ('BEd', 'BEd'), ('BSc', 'BSc'), ('MA', 'MA'), ('MSc', 'MSc'), ('MBS', 'MBS'), ('ME', 'ME'), ('PhD', 'PhD'), ('Others', 'Others')], max_length=45)),
('specialization', models.CharField(max_length=255)),
('marital_status', models.CharField(choices=[('married', 'Married'), ('widowed', 'Widowed'), ('separated', 'Separated'), ('divorced', 'Divorced'), ('single', 'Single')], max_length=10)),
('date_of_joining', models.DateField()),
('group', models.ManyToManyField(blank=True, to='auth.group')),
('user', models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
],
options={
'verbose_name': 'Teacher',
'verbose_name_plural': 'Teachers',
},
),
migrations.AddField(
model_name='subject',
name='teacher',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='subjects', to='app.teacher'),
),
migrations.CreateModel(
name='SubjectMark',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('obtained_practical_marks', models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=5)),
('total_practical_marks', models.DecimalField(decimal_places=2, default=Decimal('20.00'), max_digits=5)),
('obtained_theory_marks', models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=5)),
('total_theory_marks', models.DecimalField(decimal_places=2, default=Decimal('80.00'), max_digits=5)),
('total_marks', models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=5)),
('marksheet', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='subject_marks', to='app.marksheet')),
('subject', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='subject_marks', to='app.subject')),
],
options={
'unique_together': {('marksheet', 'subject')},
},
),
]
@@ -1,44 +0,0 @@
# Generated by Django 5.1.4 on 2025-01-09 18:06
import django.core.validators
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('app', '0001_initial'),
]
operations = [
migrations.AlterField(
model_name='staff',
name='phone',
field=models.CharField(max_length=10, validators=[django.core.validators.RegexValidator('^\\+?1?\\d{9,15}$')]),
),
migrations.AlterField(
model_name='student',
name='father_phone_no',
field=models.CharField(max_length=10, validators=[django.core.validators.RegexValidator('^\\+?1?\\d{9,15}$')]),
),
migrations.AlterField(
model_name='student',
name='guardian_phone_no',
field=models.CharField(max_length=10, validators=[django.core.validators.RegexValidator('^\\+?1?\\d{9,15}$')]),
),
migrations.AlterField(
model_name='student',
name='mother_phone_no',
field=models.CharField(blank=True, max_length=10, null=True, validators=[django.core.validators.RegexValidator('^\\+?1?\\d{9,15}$')]),
),
migrations.AlterField(
model_name='student',
name='phone',
field=models.CharField(max_length=10, validators=[django.core.validators.RegexValidator('^\\+?1?\\d{9,15}$')]),
),
migrations.AlterField(
model_name='teacher',
name='phone',
field=models.CharField(max_length=10, validators=[django.core.validators.RegexValidator('^\\+?1?\\d{9,15}$')]),
),
]
@@ -1,53 +0,0 @@
# Generated by Django 5.1.4 on 2025-01-10 06:17
import django.db.models.deletion
import django.utils.timezone
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('app', '0002_alter_staff_phone_alter_student_father_phone_no_and_more'),
]
operations = [
migrations.AlterModelOptions(
name='certificate',
options={'verbose_name': 'Certificate', 'verbose_name_plural': 'Certificates'},
),
migrations.RemoveField(
model_name='certificate',
name='issue_date',
),
migrations.AddField(
model_name='certificate',
name='certificate_file',
field=models.FileField(blank=True, null=True, upload_to='certificates/'),
),
migrations.AddField(
model_name='certificate',
name='is_verified',
field=models.BooleanField(default=False),
),
migrations.AddField(
model_name='certificate',
name='issued_date',
field=models.DateField(default=django.utils.timezone.now),
),
migrations.AlterField(
model_name='certificate',
name='course',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='certificates', to='app.course'),
),
migrations.AlterField(
model_name='certificate',
name='id',
field=models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID'),
),
migrations.AlterField(
model_name='certificate',
name='student',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='certificates', to='app.student'),
),
]
@@ -1,31 +0,0 @@
# Generated by Django 5.1.4 on 2025-01-10 06:21
import django.db.models.deletion
import django.utils.timezone
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('app', '0003_alter_certificate_options_and_more'),
]
operations = [
migrations.CreateModel(
name='CharacterCertificate',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('issued_date', models.DateField(default=django.utils.timezone.now)),
('issued_by', models.CharField(max_length=255)),
('remarks', models.TextField()),
('is_verified', models.BooleanField(default=False)),
('certificate_file', models.FileField(blank=True, null=True, upload_to='character_certificates/')),
('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='character_certificates', to='app.student')),
],
options={
'verbose_name': 'Character Certificate',
'verbose_name_plural': 'Character Certificates',
},
),
]
@@ -1,23 +0,0 @@
# Generated by Django 5.1.4 on 2025-01-10 06:22
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('app', '0004_charactercertificate'),
]
operations = [
migrations.RemoveField(
model_name='charactercertificate',
name='student',
),
migrations.DeleteModel(
name='Certificate',
),
migrations.DeleteModel(
name='CharacterCertificate',
),
]
@@ -1,30 +0,0 @@
# Generated by Django 5.1.4 on 2025-01-10 06:49
import django.core.validators
from decimal import Decimal
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('app', '0005_remove_charactercertificate_student_and_more'),
]
operations = [
migrations.AlterField(
model_name='marksheet',
name='grade',
field=models.CharField(blank=True, choices=[('A+', 'A+'), ('A', 'A'), ('B+', 'B+'), ('B', 'B'), ('C+', 'C+'), ('C', 'C'), ('D', 'D'), ('E', 'E')], max_length=2, null=True),
),
migrations.AlterField(
model_name='marksheet',
name='obtained_marks',
field=models.PositiveIntegerField(default=Decimal('0.00'), validators=[django.core.validators.MinValueValidator(0)]),
),
migrations.AlterField(
model_name='marksheet',
name='total_marks',
field=models.PositiveIntegerField(default=Decimal('0.00'), validators=[django.core.validators.MinValueValidator(1)]),
),
]
@@ -1,19 +0,0 @@
# Generated by Django 5.1.4 on 2025-01-10 06:50
from decimal import Decimal
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('app', '0006_alter_marksheet_grade_alter_marksheet_obtained_marks_and_more'),
]
operations = [
migrations.AlterField(
model_name='subjectmark',
name='total_marks',
field=models.DecimalField(blank=True, decimal_places=2, default=Decimal('0.00'), max_digits=5, null=True),
),
]
@@ -1,25 +0,0 @@
# Generated by Django 5.1.4 on 2025-01-10 06:51
import django.core.validators
from decimal import Decimal
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('app', '0007_alter_subjectmark_total_marks'),
]
operations = [
migrations.AlterField(
model_name='marksheet',
name='total_marks',
field=models.PositiveIntegerField(blank=True, default=Decimal('0.00'), null=True, validators=[django.core.validators.MinValueValidator(1)]),
),
migrations.AlterField(
model_name='subjectmark',
name='total_marks',
field=models.DecimalField(decimal_places=2, default=Decimal('0.00'), max_digits=5),
),
]
@@ -1,20 +0,0 @@
# Generated by Django 5.1.4 on 2025-01-10 06:52
import django.core.validators
from decimal import Decimal
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('app', '0008_alter_marksheet_total_marks_and_more'),
]
operations = [
migrations.AlterField(
model_name='marksheet',
name='total_marks',
field=models.PositiveIntegerField(blank=True, default=Decimal('0.00'), null=True, validators=[django.core.validators.MinValueValidator(0)]),
),
]
View File
Whitespace-only changes.