Advertisement
EulisAires

models view

Mar 20th, 2019
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.86 KB | None | 0 0
  1. # -*- coding: utf-8 -*-
  2. from __future__ import unicode_literals
  3.  
  4. import os
  5.  
  6. from django.db import models
  7. from django.core.validators import FileExtensionValidator, RegexValidator
  8.  
  9.  
  10. # Dynamic file path
  11. # https://docs.djangoproject.com/en/dev/ref/models/fields/#django.db.models.FileField.upload_to
  12.  
  13. def get_upload_path(instance, filename):
  14.     return os.path.join(
  15.       "Pareceres_%s" % instance.Nome_do_cliente, instance.Placa, filename)
  16.  
  17.  
  18. class Vistoria (models.Model):
  19.     alphanumeric = RegexValidator(r'^[a-zA-Z]{3}\d{1}[a-zA-Z]{1}\d{2}$', 'A placa deve estar no modelo MERCOSUL')
  20.  
  21.     # identificadores #
  22.     Data_de_Registro = models.DateField(auto_now= False)
  23.     Hora_de_Registro = models.TimeField(auto_now = False)
  24.     dataSys = models.DateField(auto_now = True)
  25.     horaSys = models.TimeField(auto_now = True)
  26.     Vendedor = models.ForeignKey('users.User',on_delete=models.CASCADE, related_name='vendedor')
  27.     Cidade = models.ForeignKey('Cidade',on_delete=models.CASCADE)
  28.     Valor_pago = models.FloatField()
  29.     Valor_devolvido = models.FloatField()
  30.     Quantidade_de_fotos = models.PositiveSmallIntegerField()
  31.     Setor = models.ForeignKey('Setor',on_delete=models.CASCADE)
  32.     Parecer = models.ForeignKey('Parecer',on_delete=models.CASCADE)
  33.     Modos_de_pagamento = models.ForeignKey('Modos_de_Pagamento',on_delete=models.CASCADE)
  34.     # identificadores #
  35.     #
  36.     # dados do carro #
  37.     Placa = models.CharField(max_length = 7, validators = [alphanumeric])
  38.     Chassi = models.CharField(max_length = 17)
  39.     Carro_modelo = models.CharField(max_length = 40)
  40.     Inspetor = models.CharField(max_length = 256, default = 1)
  41.     # dados do carro #
  42.     #
  43.     # grupo de concessionária #
  44.     Grupo_da_concessionaria = models.ForeignKey('Grupos_de_Concessionaria',on_delete=models.CASCADE)
  45.     Concessionaria = models.ForeignKey('Concessionaria',on_delete=models.CASCADE)
  46.     # grupos de concessionária #
  47.     #
  48.     # dados do cliente #
  49.     Nome_do_cliente = models.CharField(max_length = 256)
  50.     CPF_do_cliente = models.CharField(max_length = 11)
  51.     # dados do cliente #
  52.     Laudo1 = models.FileField(upload_to=get_upload_path, validators=[FileExtensionValidator(['pdf'], message="O arquivo 1 deve estar em formato 'pdf'.")])
  53.     Laudo2 = models.FileField(upload_to=get_upload_path, validators=[FileExtensionValidator(['pdf'], message="O arquivo 2 deve estar em formato 'pdf'.")])
  54.     class Meta:
  55.         verbose_name_plural = "Vistorias"
  56.     def __str__(self):
  57.         return self.Nome_do_cliente + " " + "-" +" "+ self.Placa
  58.  
  59. class Grupos_de_Concessionaria (models.Model):
  60.     Nome = models.CharField(max_length = 256, primary_key = True)
  61.     class Meta:
  62.         verbose_name_plural = "Grupos de Concessionária"
  63.     def __str__(self):
  64.         return self.Nome
  65.  
  66. class Concessionaria (models.Model):
  67.     Nome = models.CharField(max_length = 256, primary_key = True)
  68.     Grupo = models.ForeignKey('Grupos_de_Concessionaria',on_delete=models.CASCADE)
  69.     class Meta:
  70.         verbose_name_plural = "Concessionárias"
  71.     def __str__(self):
  72.         return self.Nome
  73.  
  74. class Modos_de_Pagamento (models.Model):
  75.     Modos = models.CharField(max_length = 30, primary_key = True)
  76.     class Meta:
  77.         verbose_name_plural = "Modos de Pagamento"
  78.     def __str__(self):
  79.         return self.Modos
  80.  
  81. class Parecer (models.Model):
  82.     Status = models.CharField(max_length = 30, primary_key = True)
  83.     class Meta:
  84.         verbose_name_plural = "Pareceres"
  85.     def __str__(self):
  86.         return self.Status
  87.  
  88. class Setor (models.Model):
  89.     Nome = models.CharField(max_length = 40, primary_key = True)
  90.     class Meta:
  91.         verbose_name_plural = "Setores"
  92.     def __str__(self):
  93.         return self.Nome
  94.  
  95. class Cidade (models.Model):
  96.     Nome_da_Cidade = models.CharField(max_length = 156)
  97.     def __str__(self):
  98.         return self.Nome_da_Cidade
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement