from django.db import models from django.contrib.auth.models import User from users.models import Agency from django.utils import timezone from django_cryptography.fields import encrypt # HISTORY from simple_history.models import HistoricalRecords from django_encrypted_filefield.fields import ( EncryptedFileField, EncryptedImageField ) # PATH FOR AGENCYPIC def rd_path_agency(instance, filename): # file will be uploaded to MEDIA_URL/agency_// return 'agencydata/agency_{0}/rd/{1}'.format(instance.agency.pk, filename) # Create your models here. class PersLetter(models.Model): agency = models.ForeignKey(Agency, on_delete=models.CASCADE) user = models.ForeignKey(User, on_delete=models.SET_NULL, blank=True, null=True) text = encrypt(models.CharField(max_length=100000, blank=True, default="", null=True)) history = HistoricalRecords() # Notfallhilfe Datenfelder # Handlungsleitfaden class Handlungsleitfaden(models.Model): agency = models.ForeignKey(Agency, on_delete=models.CASCADE, null=True) rd_main = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) rd_prename = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) rd_postname = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) rd_street = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) rd_plz = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) rd_city = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) rd_tel = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) rd_mail = encrypt(models.EmailField(max_length=500, blank=True, default="", null=True)) bvk_number = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) rv_name = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) rv_number = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) rv_tel_1 = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) rv_tel_2 = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) history = HistoricalRecords() # Contacts class RDContact(models.Model): agency = models.ForeignKey(Agency, on_delete=models.CASCADE, null=True) rd_prename = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) rd_postname = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) rd_rel = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) rd_adresse = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) rd_tel = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) history = HistoricalRecords() class RDTrustPerson(models.Model): agency = models.ForeignKey(Agency, on_delete=models.CASCADE, null=True) rd_prename = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) rd_postname = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) rd_company = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) rd_adresse = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) rd_tel = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) history = HistoricalRecords() class Documents(models.Model): agency = models.ForeignKey(Agency, on_delete=models.CASCADE, null=True) area = models.IntegerField(default=0) document_desc = encrypt(models.CharField(max_length=500, blank=True, default="", null=True)) document_name = encrypt(models.CharField(max_length=500, blank=False, default="", null=False)) document_date = encrypt(models.DateField(default=timezone.now, blank=True, null=True)) document = EncryptedFileField(upload_to=rd_path_agency, blank=True) history = HistoricalRecords()