diff options
Diffstat (limited to 'client')
-rw-r--r-- | client/migrations/0007_personaldata_avs_number.py | 18 | ||||
-rw-r--r-- | client/migrations/0008_usercode_avs_number.py | 18 | ||||
-rw-r--r-- | client/migrations/0009_merge_20210723_1805.py | 14 | ||||
-rw-r--r-- | client/models.py | 236 | ||||
-rw-r--r-- | client/templates/client/index.html | 6 | ||||
-rw-r--r-- | client/views.py | 4 |
6 files changed, 176 insertions, 120 deletions
diff --git a/client/migrations/0007_personaldata_avs_number.py b/client/migrations/0007_personaldata_avs_number.py new file mode 100644 index 0000000..cd2a67c --- /dev/null +++ b/client/migrations/0007_personaldata_avs_number.py @@ -0,0 +1,18 @@ +# Generated by Django 3.1.4 on 2021-06-20 10:06 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('client', '0006_documenttype_max_instances'), + ] + + operations = [ + migrations.AddField( + model_name='personaldata', + name='avs_number', + field=models.CharField(default='', max_length=250), + ), + ] diff --git a/client/migrations/0008_usercode_avs_number.py b/client/migrations/0008_usercode_avs_number.py new file mode 100644 index 0000000..365aaad --- /dev/null +++ b/client/migrations/0008_usercode_avs_number.py @@ -0,0 +1,18 @@ +# Generated by Django 3.1.4 on 2021-06-20 10:10 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('client', '0007_personaldata_avs_number'), + ] + + operations = [ + migrations.AddField( + model_name='usercode', + name='avs_number', + field=models.CharField(default='', max_length=250), + ), + ] diff --git a/client/migrations/0009_merge_20210723_1805.py b/client/migrations/0009_merge_20210723_1805.py new file mode 100644 index 0000000..014ac28 --- /dev/null +++ b/client/migrations/0009_merge_20210723_1805.py @@ -0,0 +1,14 @@ +# Generated by Django 3.1.4 on 2021-07-23 16:05 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('client', '0007_groupsettings'), + ('client', '0008_usercode_avs_number'), + ] + + operations = [ + ] diff --git a/client/models.py b/client/models.py index 5b5db6a..db31194 100644 --- a/client/models.py +++ b/client/models.py @@ -1,117 +1,119 @@ -from django.db import models -from django.contrib.auth.models import User, Group -from datetime import datetime - -# Create your models here. - - -class DocumentType(models.Model): - enabled = models.BooleanField(default=False) - auto_sign = models.BooleanField(default=False) - group_private = models.BooleanField(default=False) - group = models.ForeignKey(Group, default=None, on_delete=models.CASCADE) - custom_group = models.BooleanField(default=False) - personal_data = models.BooleanField(default=False) - medical_data = models.BooleanField(default=False) - custom_data = models.BooleanField(default=False) - custom_message = models.BooleanField(default=False) - custom_message_text = models.CharField(default="", max_length=250) - staff_only = models.BooleanField(default=False) - max_instances = models.IntegerField(default=0) - name = models.CharField(default="", max_length=250) - - -class PersonalData(models.Model): - parent_name = models.CharField(default="", max_length=250) - via = models.CharField(default="", max_length=250) - cap = models.CharField(default="", max_length=250) - country = models.CharField(default="", max_length=250) - nationality = models.CharField(default="", max_length=250) - born_date = models.DateField(null=True, default=datetime.fromtimestamp(0)) - home_phone = models.CharField(default="", max_length=250) - phone = models.CharField(default="", max_length=250) - email = models.CharField(default="", max_length=250) - school = models.CharField(default="", max_length=250) - year = models.IntegerField(default=0) - - -class MedicalData(models.Model): - emer_name = models.CharField(default="", max_length=250) - emer_relative = models.CharField(default="", max_length=250) - cell_phone = models.CharField(default="", max_length=250) - address = models.CharField(default="", max_length=250) - emer_phone = models.CharField(default="", max_length=250) - health_care = models.CharField(default="", max_length=250) - injuries = models.CharField(default="", max_length=250) - rc = models.CharField(default="", max_length=250) - rega = models.BooleanField(default=False) - medic_name = models.CharField(default="", max_length=250) - medic_phone = models.CharField(default="", max_length=250) - medic_address = models.CharField(default="", max_length=250) - sickness = models.CharField(default="", max_length=250) - vaccine = models.CharField(default="", max_length=250) - tetanus_date = models.DateField(null=True, default=datetime.fromtimestamp(0)) - allergy = models.CharField(default="", max_length=250) - drugs_bool = models.BooleanField(default=False) - drugs = models.CharField(default="", max_length=250) - misc_bool = models.BooleanField(default=False) - misc = models.CharField(default="", max_length=250) - vac_certificate = models.FileField(upload_to='documents/', null=True) - health_care_certificate = models.FileField(default=None, upload_to='documents/', null=True) - - -class Document(models.Model): - user = models.ForeignKey(User, default=None, on_delete=models.CASCADE) - group = models.ForeignKey(Group, default=None, on_delete=models.CASCADE) - code = models.IntegerField(default=0) - compilation_date = models.DateTimeField(auto_now_add=True) - status = models.CharField(default="", max_length=50) - document_type = models.ForeignKey( - DocumentType, default=None, on_delete=models.PROTECT) - - personal_data = models.ForeignKey( - PersonalData, default=None, on_delete=models.PROTECT, null=True) - - medical_data = models.ForeignKey( - MedicalData, default=None, on_delete=models.SET_NULL, null=True) - - signed_doc = models.FileField(default=None, upload_to='documents/', null=True) - - class Meta: - permissions = [ - ("approved", "The user is approved"), - ("staff", "The user is staff of the non primary group") - ] - - -class KeyVal(models.Model): - container = models.ForeignKey( - Document, db_index=True, on_delete=models.CASCADE) - key = models.CharField(max_length=240, db_index=True) - value = models.CharField(max_length=240, db_index=True) - - -class Keys(models.Model): - container = models.ForeignKey( - DocumentType, db_index=True, on_delete=models.CASCADE) - key = models.CharField(max_length=240, db_index=True) - - -class UserCode(models.Model): - user = models.ForeignKey(User, default=None, on_delete=models.CASCADE) - medic = models.ForeignKey(MedicalData, default=None, on_delete=models.PROTECT) - code = models.IntegerField(default=0) - parent_name = models.CharField(default="", max_length=250) - via = models.CharField(default="", max_length=250) - cap = models.CharField(default="", max_length=250) - country = models.CharField(default="", max_length=250) - nationality = models.CharField(default="", max_length=250) - born_date = models.DateField(null=True, default=datetime.fromtimestamp(0)) - home_phone = models.CharField(default="", max_length=250) - phone = models.CharField(default="", max_length=250) - school = models.CharField(default="", max_length=250) - year = models.IntegerField(default=0) - -class GroupSettings(models.Model): - group = models.ForeignKey(Group, default=None, on_delete=models.CASCADE) - view_documents = models.BooleanField(default=False)
\ No newline at end of file +from django.db import models
+from django.contrib.auth.models import User, Group
+from datetime import datetime
+
+# Create your models here.
+
+
+class DocumentType(models.Model):
+ enabled = models.BooleanField(default=False)
+ auto_sign = models.BooleanField(default=False)
+ group_private = models.BooleanField(default=False)
+ group = models.ForeignKey(Group, default=None, on_delete=models.CASCADE)
+ custom_group = models.BooleanField(default=False)
+ personal_data = models.BooleanField(default=False)
+ medical_data = models.BooleanField(default=False)
+ custom_data = models.BooleanField(default=False)
+ custom_message = models.BooleanField(default=False)
+ custom_message_text = models.CharField(default="", max_length=250)
+ staff_only = models.BooleanField(default=False)
+ max_instances = models.IntegerField(default=0)
+ name = models.CharField(default="", max_length=250)
+
+
+class PersonalData(models.Model):
+ parent_name = models.CharField(default="", max_length=250)
+ via = models.CharField(default="", max_length=250)
+ cap = models.CharField(default="", max_length=250)
+ country = models.CharField(default="", max_length=250)
+ nationality = models.CharField(default="", max_length=250)
+ born_date = models.DateField(null=True, default=datetime.fromtimestamp(0))
+ home_phone = models.CharField(default="", max_length=250)
+ phone = models.CharField(default="", max_length=250)
+ email = models.CharField(default="", max_length=250)
+ school = models.CharField(default="", max_length=250)
+ year = models.IntegerField(default=0)
+ avs_number = models.CharField(default="", max_length=250)
+
+
+class MedicalData(models.Model):
+ emer_name = models.CharField(default="", max_length=250)
+ emer_relative = models.CharField(default="", max_length=250)
+ cell_phone = models.CharField(default="", max_length=250)
+ address = models.CharField(default="", max_length=250)
+ emer_phone = models.CharField(default="", max_length=250)
+ health_care = models.CharField(default="", max_length=250)
+ injuries = models.CharField(default="", max_length=250)
+ rc = models.CharField(default="", max_length=250)
+ rega = models.BooleanField(default=False)
+ medic_name = models.CharField(default="", max_length=250)
+ medic_phone = models.CharField(default="", max_length=250)
+ medic_address = models.CharField(default="", max_length=250)
+ sickness = models.CharField(default="", max_length=250)
+ vaccine = models.CharField(default="", max_length=250)
+ tetanus_date = models.DateField(null=True, default=datetime.fromtimestamp(0))
+ allergy = models.CharField(default="", max_length=250)
+ drugs_bool = models.BooleanField(default=False)
+ drugs = models.CharField(default="", max_length=250)
+ misc_bool = models.BooleanField(default=False)
+ misc = models.CharField(default="", max_length=250)
+ vac_certificate = models.FileField(upload_to='documents/', null=True)
+ health_care_certificate = models.FileField(default=None, upload_to='documents/', null=True)
+
+
+class Document(models.Model):
+ user = models.ForeignKey(User, default=None, on_delete=models.CASCADE)
+ group = models.ForeignKey(Group, default=None, on_delete=models.CASCADE)
+ code = models.IntegerField(default=0)
+ compilation_date = models.DateTimeField(auto_now_add=True)
+ status = models.CharField(default="", max_length=50)
+ document_type = models.ForeignKey(
+ DocumentType, default=None, on_delete=models.PROTECT)
+
+ personal_data = models.ForeignKey(
+ PersonalData, default=None, on_delete=models.PROTECT, null=True)
+
+ medical_data = models.ForeignKey(
+ MedicalData, default=None, on_delete=models.SET_NULL, null=True)
+
+ signed_doc = models.FileField(default=None, upload_to='documents/', null=True)
+
+ class Meta:
+ permissions = [
+ ("approved", "The user is approved"),
+ ("staff", "The user is staff of the non primary group")
+ ]
+
+
+class KeyVal(models.Model):
+ container = models.ForeignKey(
+ Document, db_index=True, on_delete=models.CASCADE)
+ key = models.CharField(max_length=240, db_index=True)
+ value = models.CharField(max_length=240, db_index=True)
+
+
+class Keys(models.Model):
+ container = models.ForeignKey(
+ DocumentType, db_index=True, on_delete=models.CASCADE)
+ key = models.CharField(max_length=240, db_index=True)
+
+
+class UserCode(models.Model):
+ user = models.ForeignKey(User, default=None, on_delete=models.CASCADE)
+ medic = models.ForeignKey(MedicalData, default=None, on_delete=models.PROTECT)
+ code = models.IntegerField(default=0)
+ parent_name = models.CharField(default="", max_length=250)
+ via = models.CharField(default="", max_length=250)
+ cap = models.CharField(default="", max_length=250)
+ country = models.CharField(default="", max_length=250)
+ nationality = models.CharField(default="", max_length=250)
+ born_date = models.DateField(null=True, default=datetime.fromtimestamp(0))
+ home_phone = models.CharField(default="", max_length=250)
+ phone = models.CharField(default="", max_length=250)
+ school = models.CharField(default="", max_length=250)
+ year = models.IntegerField(default=0)
+ avs_number = models.CharField(default="", max_length=250)
+
+class GroupSettings(models.Model):
+ group = models.ForeignKey(Group, default=None, on_delete=models.CASCADE)
+ view_documents = models.BooleanField(default=False)
diff --git a/client/templates/client/index.html b/client/templates/client/index.html index 7d001ec..1fc6c73 100644 --- a/client/templates/client/index.html +++ b/client/templates/client/index.html @@ -121,10 +121,14 @@ <input disabled value="{{doc.4}}" id="branca" type="text"> <label for="branca">Branca</label> </div> - <div class="input-field col l8 s12"> + <div class="input-field col l4 s12"> <input disabled value="{{doc.2.parent_name}}" id="parent_name" type="text" > <label for="parent_name">Nome dei genitori</label> </div> + <div class="input-field col l4 s12"> + <input disabled value="{{doc.2.avs_number}}" id="avs_number" type="text"> + <label for="avs_number">Numero AVS</label> + </div> <div class="input-field col l12 s12"> <input value="{{doc.2.via}}" disabled id="via" type="text" > <label for="via">Via e numero</label> diff --git a/client/views.py b/client/views.py index 6fdd3f2..73a252a 100644 --- a/client/views.py +++ b/client/views.py @@ -236,7 +236,7 @@ def create(request): # copy personal data and medical data if document_type.personal_data: personal_data = PersonalData(email=request.user.email, parent_name=usercode.parent_name, via=usercode.via, cap=usercode.cap, country=usercode.country, - nationality=usercode.nationality, born_date=usercode.born_date, home_phone=usercode.home_phone, phone=usercode.phone, school=usercode.school, year=usercode.year) + nationality=usercode.nationality, born_date=usercode.born_date, home_phone=usercode.home_phone, phone=usercode.phone, school=usercode.school, year=usercode.year, avs_number=usercode.avs_number) personal_data.save() if document_type.medical_data: @@ -296,7 +296,7 @@ def edit_wrapper(request, context): if document.document_type.personal_data: personal_data = PersonalData(email=request.user.email, parent_name=usercode.parent_name, via=usercode.via, cap=usercode.cap, country=usercode.country, - nationality=usercode.nationality, born_date=usercode.born_date, home_phone=usercode.home_phone, phone=usercode.phone, school=usercode.school, year=usercode.year) + nationality=usercode.nationality, born_date=usercode.born_date, home_phone=usercode.home_phone, phone=usercode.phone, school=usercode.school, year=usercode.year, avs_number=usercode.avs_number) personal_data.save() old_data = document.personal_data document.personal_data = personal_data |