120 lines
5.2 KiB
Python
120 lines
5.2 KiB
Python
from django.db import models
|
|
|
|
# --------------- FINE PREFISSO TEMPLATE ---------------
|
|
class DestinatarioOfferta(models.Model):
|
|
class Meta:
|
|
verbose_name = 'destinatarioofferta'
|
|
verbose_name_plural = 'destinatarioofferta'
|
|
|
|
def __str__(self):
|
|
return f"DestinatarioOfferta (id: {self.id})"
|
|
|
|
destinazione = models.ForeignKey('contatti_app.Sede', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="DestinatarioOfferta_da_Sede_destinazione")
|
|
intestatario = models.ForeignKey('contatti_app.ContattoAziendale', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="DestinatarioOfferta_da_contatti_appContattoAziendale_intestatario")
|
|
|
|
|
|
class GruppoOfferte(models.Model):
|
|
class Meta:
|
|
verbose_name = 'gruppoofferte'
|
|
verbose_name_plural = 'gruppoofferte'
|
|
|
|
def __str__(self):
|
|
return f"GruppoOfferte (id: {self.id})"
|
|
|
|
destinatario = models.ForeignKey('DestinatarioOfferta', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="GruppoOfferte_da_DestinatarioOfferta_destinatario")
|
|
agente = models.ForeignKey('AgenteOfferta', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="GruppoOfferte_da_AgenteOfferta_agente")
|
|
tipo = models.ForeignKey('TipologiaOfferta', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="GruppoOfferte_da_TipologiaOfferta_tipo")
|
|
anno_1a_rev = models.IntegerField(null=True, blank=True)
|
|
numero = models.IntegerField(null=True, blank=True)
|
|
descrizione = models.CharField(null=True, max_length=4096)
|
|
|
|
|
|
class Offerta(models.Model):
|
|
class Meta:
|
|
verbose_name = 'offerta'
|
|
verbose_name_plural = 'offerta'
|
|
|
|
def __str__(self):
|
|
return f"Offerta (id: {self.id})"
|
|
|
|
gruppo = models.ForeignKey('GruppoOfferte', on_delete=models.CASCADE,
|
|
null=True, blank=True, related_name="Offerta_da_GruppoOfferte_gruppo")
|
|
data = models.DateField(null=True, blank=True)
|
|
revisione = models.IntegerField(null=True, blank=True)
|
|
documento = models.CharField(null=True, max_length=128)
|
|
codice_offerta = models.IntegerField(null=True, blank=True)
|
|
accettazione = models.DateField(null=True, blank=True)
|
|
|
|
|
|
class AgenteOfferta(models.Model):
|
|
class Meta:
|
|
verbose_name = 'agenteofferta'
|
|
verbose_name_plural = 'agenteofferta'
|
|
|
|
def __str__(self):
|
|
return f"AgenteOfferta (id: {self.id})"
|
|
|
|
codice = models.IntegerField(null=True, blank=True)
|
|
|
|
|
|
class ModalitaLavoro(models.Model):
|
|
class Meta:
|
|
verbose_name = 'modalitalavoro'
|
|
verbose_name_plural = 'modalitalavoro'
|
|
|
|
def __str__(self):
|
|
return f"ModalitaLavoro (id: {self.id})"
|
|
|
|
unita_misura_std = models.ForeignKey('fattura_elettronica_app.UnitaMisura', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="ModalitaLavoro_da_UnitaMisura_unita_misura_std")
|
|
descrizione = models.IntegerField(null=True, blank=True)
|
|
|
|
|
|
class AtomoFatturabile(models.Model):
|
|
class Meta:
|
|
verbose_name = 'AtomoFatturabile'
|
|
verbose_name_plural = 'AtomoFatturabile'
|
|
|
|
def __str__(self):
|
|
return f"AtomoFatturabile (id: {self.id})"
|
|
|
|
offerta_riferimento = models.ForeignKey('Offerta', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="DettaglioFatturabile_da_Offerta_offerta_riferimento")
|
|
modalita_lavoro = models.ForeignKey('ModalitaLavoro', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="DettaglioFatturabile_da_ModalitaLavoro_modalita_lavoro")
|
|
riferimento_oggetto_fattura = models.ForeignKey('fattura_elettronica_app.OggettoDaFatturare', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="DettaglioFatturabile_da_DatiEstesiDettaglioFatturabile_riferimento_oggetto_fattura")
|
|
# flusso_di_ricavi = models.ForeignKey('FlussoDiRicavi', on_delete=models.CASCADE, null=True,
|
|
# blank=True, related_name="DettaglioFatturabile_da_FlussoDiRicavi_flusso_di_ricavi")
|
|
|
|
class ParteEconomicaOfferta(models.Model):
|
|
class Meta:
|
|
verbose_name = 'parteeconomicaofferta'
|
|
verbose_name_plural = 'parteeconomicaofferta'
|
|
|
|
def __str__(self):
|
|
return f"ParteEconomicaOfferta (id: {self.id})"
|
|
|
|
revisione = models.ForeignKey('Offerta', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="ParteEconomicaOfferta_da_Offerta_revisione")
|
|
dettaglio_economico_offerto = models.ForeignKey('AtomoFatturabile', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="ParteEconomicaOfferta_da_DettaglioFatturabile_dettaglio_economico_offerto")
|
|
|
|
|
|
class TipologiaOfferta(models.Model):
|
|
class Meta:
|
|
verbose_name = 'tipologiaofferta'
|
|
verbose_name_plural = 'tipologiaofferta'
|
|
|
|
def __str__(self):
|
|
return f"TipologiaOfferta (id: {self.id})"
|
|
|
|
descrizione = models.CharField(null=True, max_length=1024)
|
|
|
|
|