327 lines
12 KiB
Python
327 lines
12 KiB
Python
from django.db import models
|
|
from polymorphic.models import PolymorphicModel
|
|
|
|
# --------------- FINE PREFISSO TEMPLATE ---------------
|
|
|
|
|
|
class Progetto(models.Model):
|
|
class Meta:
|
|
verbose_name = 'progetto'
|
|
verbose_name_plural = 'progetto'
|
|
|
|
def __str__(self):
|
|
return f"Progetto (id: {self.id})"
|
|
|
|
progetto_padre = models.ForeignKey('Progetto', on_delete=models.CASCADE,
|
|
null=True, blank=True, related_name="Progetto_da_Progetto_progetto_padre")
|
|
stato = models.IntegerField(null=True, blank=True)
|
|
nome = models.CharField(null=True, max_length=4096)
|
|
descrizione = models.TextField(null=True)
|
|
|
|
|
|
class ValorizzazioneEconomicaProgetto(models.Model):
|
|
class Meta:
|
|
verbose_name = 'valorizzazioneeconomicaprogetto'
|
|
verbose_name_plural = 'valorizzazioneeconomicaprogetto'
|
|
|
|
def __str__(self):
|
|
return f"ValorizzazioneEconomicaProgetto (id: {self.id})"
|
|
|
|
progetto = models.ForeignKey('Progetto', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="ValorizzazioneEconomicaProgetto_da_Progetto_progetto")
|
|
dato_economico = models.ForeignKey('offerte_app.AtomoFatturabile', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="ValorizzazioneEconomicaProgetto_da_DettaglioFatturabile_dato_economico")
|
|
fase_target = models.IntegerField(null=True, blank=True)
|
|
|
|
|
|
class Repository(models.Model):
|
|
class Meta:
|
|
verbose_name = 'repository'
|
|
verbose_name_plural = 'repository'
|
|
|
|
def __str__(self):
|
|
return f"Repository (id: {self.id})"
|
|
|
|
url = models.CharField(null=True, max_length=1024)
|
|
descrizione = models.CharField(null=True, max_length=4096)
|
|
|
|
|
|
class TipoRelazione(models.Model):
|
|
class Meta:
|
|
verbose_name = 'tiporelazione'
|
|
verbose_name_plural = 'tiporelazione'
|
|
|
|
def __str__(self):
|
|
return f"TipoRelazione (id: {self.id})"
|
|
|
|
descrizione = models.CharField(null=True, max_length=4096)
|
|
|
|
|
|
class Attivita(models.Model):
|
|
class Meta:
|
|
verbose_name = 'attivita'
|
|
verbose_name_plural = 'attivita'
|
|
|
|
def __str__(self):
|
|
return f"Attivita (id: {self.id})"
|
|
|
|
attivita_generica = models.ForeignKey('Attivita', on_delete=models.CASCADE,
|
|
null=True, blank=True, related_name="Attivita_da_Attivita_attivita_generica")
|
|
tipo = models.ForeignKey('TipoAttivita', on_delete=models.CASCADE,
|
|
null=True, blank=True, related_name="Attivita_da_TipoAttivita_tipo")
|
|
descrizione = models.CharField(null=True, max_length=4096)
|
|
|
|
|
|
class RisorsaChiave(models.Model):
|
|
class Meta:
|
|
verbose_name = 'risorsachiave'
|
|
verbose_name_plural = 'risorsachiave'
|
|
|
|
def __str__(self):
|
|
return f"RisorsaChiave (id: {self.id})"
|
|
|
|
risorsa_generica = models.ForeignKey('RisorsaChiave', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="RisorsaChiave_da_RisorsaChiave_risorsa_generica")
|
|
descrizione = models.CharField(null=True, max_length=4096)
|
|
|
|
|
|
class PropostaDiValore(models.Model):
|
|
class Meta:
|
|
verbose_name = 'propostadivalore'
|
|
verbose_name_plural = 'propostadivalore'
|
|
|
|
def __str__(self):
|
|
return f"PropostaDiValore (id: {self.id})"
|
|
|
|
proposta_valore_generica = models.ForeignKey('PropostaDiValore', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="PropostaDiValore_da_PropostaDiValore_proposta_valore_generica")
|
|
descrizione = models.CharField(null=True, max_length=4096)
|
|
|
|
|
|
class CanaleDiDistribuzione(models.Model):
|
|
class Meta:
|
|
verbose_name = 'canaledidistribuzione'
|
|
verbose_name_plural = 'canaledidistribuzione'
|
|
|
|
def __str__(self):
|
|
return f"CanaleDiDistribuzione (id: {self.id})"
|
|
|
|
descrizione = models.CharField(null=True, max_length=4096)
|
|
|
|
|
|
class SettoreDiMercato(models.Model):
|
|
class Meta:
|
|
verbose_name = 'settoredimercato'
|
|
verbose_name_plural = 'settoredimercato'
|
|
|
|
def __str__(self):
|
|
return f"SettoreDiMercato (id: {self.id})"
|
|
|
|
descrizione = models.CharField(null=True, max_length=4096)
|
|
|
|
|
|
class FlussoDiRicavi(models.Model):
|
|
class Meta:
|
|
verbose_name = 'flussodiricavi'
|
|
verbose_name_plural = 'flussodiricavi'
|
|
|
|
def __str__(self):
|
|
return f"FlussoDiRicavi (id: {self.id})"
|
|
|
|
flusso_ricavi_generico = models.ForeignKey('FlussoDiRicavi', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="FlussoDiRicavi_da_FlussoDiRicavi_flusso_ricavi_generico")
|
|
descrizione = models.CharField(null=True, max_length=4096)
|
|
|
|
|
|
class StrutturaDeiCosti(models.Model):
|
|
class Meta:
|
|
verbose_name = 'strutturadeicosti'
|
|
verbose_name_plural = 'strutturadeicosti'
|
|
|
|
def __str__(self):
|
|
return f"StrutturaDeiCosti (id: {self.id})"
|
|
|
|
|
|
class SettoreAzienda(models.Model):
|
|
class Meta:
|
|
verbose_name = 'settoreazienda'
|
|
verbose_name_plural = 'settoreazienda'
|
|
|
|
def __str__(self):
|
|
return f"SettoreAzienda (id: {self.id})"
|
|
|
|
settore_generico = models.ForeignKey('SettoreAzienda', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="SettoreAzienda_da_SettoreAzienda_settore_generico")
|
|
azienda = models.ForeignKey('fattura_elettronica_app.SoggettoFiscale', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="SettoreAzienda_da_SoggettoFiscale_azienda")
|
|
settore_di_mercato = models.ForeignKey('SettoreDiMercato', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="SettoreAzienda_da_SettoreDiMercato_settore_di_mercato")
|
|
|
|
|
|
class RelazioneConAzienda(models.Model):
|
|
class Meta:
|
|
verbose_name = 'relazioneconazienda'
|
|
verbose_name_plural = 'relazioneconazienda'
|
|
|
|
def __str__(self):
|
|
return f"RelazioneConAzienda (id: {self.id})"
|
|
|
|
relazione_generica = models.ForeignKey('RelazioneConAzienda', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="RelazioneConAzienda_da_RelazioneConAzienda_relazione_generica")
|
|
azienda = models.ForeignKey('fattura_elettronica_app.SoggettoFiscale', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="RelazioneConAzienda_da_SoggettoFiscale_azienda")
|
|
tipo_relazione = models.ForeignKey('TipoRelazione', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="RelazioneConAzienda_da_TipoRelazione_tipo_relazione")
|
|
|
|
|
|
class TipoAttivita(models.Model):
|
|
class Meta:
|
|
verbose_name = 'tipoattivita'
|
|
verbose_name_plural = 'tipoattivita'
|
|
|
|
def __str__(self):
|
|
return f"TipoAttivita (id: {self.id})"
|
|
|
|
descrizione = models.CharField(null=True, max_length=4096)
|
|
|
|
|
|
class ValoreDelProgetto(models.Model):
|
|
class Meta:
|
|
verbose_name = 'valoredelprogetto'
|
|
verbose_name_plural = 'valoredelprogetto'
|
|
|
|
def __str__(self):
|
|
return f"ValoreDelProgetto (id: {self.id})"
|
|
|
|
progetto = models.ForeignKey('Progetto', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="ValoreDelProgetto_da_Progetto_progetto")
|
|
proposta_di_valore = models.ForeignKey('PropostaDiValore', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="ValoreDelProgetto_da_PropostaDiValore_proposta_di_valore")
|
|
|
|
|
|
class AttivitaDelProgetto(models.Model):
|
|
class Meta:
|
|
verbose_name = 'attivitadelprogetto'
|
|
verbose_name_plural = 'attivitadelprogetto'
|
|
|
|
def __str__(self):
|
|
return f"AttivitaDelProgetto (id: {self.id})"
|
|
|
|
progetto = models.ForeignKey('Progetto', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="AttivitaDelProgetto_da_Progetto_progetto")
|
|
attivita = models.ForeignKey('Attivita', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="AttivitaDelProgetto_da_Attivita_attivita")
|
|
|
|
|
|
class AssetDelProgetto(models.Model):
|
|
class Meta:
|
|
verbose_name = 'assetdelprogetto'
|
|
verbose_name_plural = 'assetdelprogetto'
|
|
|
|
def __str__(self):
|
|
return f"AssetDelProgetto (id: {self.id})"
|
|
|
|
progetto = models.ForeignKey('Progetto', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="AssetDelProgetto_da_Progetto_progetto")
|
|
asset = models.ForeignKey('RisorsaChiave', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="AssetDelProgetto_da_RisorsaChiave_asset")
|
|
|
|
|
|
class RisorsaPersonale(models.Model):
|
|
class Meta:
|
|
verbose_name = 'risorsapersonale'
|
|
verbose_name_plural = 'risorsapersonale'
|
|
|
|
def __str__(self):
|
|
return f"RisorsaPersonale (id: {self.id})"
|
|
|
|
persona = models.IntegerField(null=True, blank=True)
|
|
|
|
|
|
class RisorsaFisica(models.Model):
|
|
class Meta:
|
|
verbose_name = 'risorsafisica'
|
|
verbose_name_plural = 'risorsafisica'
|
|
|
|
def __str__(self):
|
|
return f"RisorsaFisica (id: {self.id})"
|
|
|
|
descrizione = models.CharField(null=True, max_length=4096)
|
|
|
|
|
|
class RisorsaFinanziaria(models.Model):
|
|
class Meta:
|
|
verbose_name = 'risorsafinanziaria'
|
|
verbose_name_plural = 'risorsafinanziaria'
|
|
|
|
def __str__(self):
|
|
return f"RisorsaFinanziaria (id: {self.id})"
|
|
|
|
descrizione = models.CharField(null=True, max_length=4096)
|
|
|
|
|
|
class ValoreDellAttivita(models.Model):
|
|
class Meta:
|
|
verbose_name = 'valoredellattivita'
|
|
verbose_name_plural = 'valoredellattivita'
|
|
|
|
def __str__(self):
|
|
return f"ValoreDellAttivita (id: {self.id})"
|
|
|
|
attivita = models.ForeignKey('Attivita', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="ValoreDellAttivita_da_Attivita_attivita")
|
|
proposta_di_valore = models.ForeignKey('PropostaDiValore', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="ValoreDellAttivita_da_PropostaDiValore_proposta_di_valore")
|
|
|
|
|
|
class ValorizzazioneEconomicaAttivita(models.Model):
|
|
class Meta:
|
|
verbose_name = 'valorizzazioneeconomicaattivita'
|
|
verbose_name_plural = 'valorizzazioneeconomicaattivita'
|
|
|
|
def __str__(self):
|
|
return f"ValorizzazioneEconomicaAttivita (id: {self.id})"
|
|
|
|
attivita_del_progetto = models.ForeignKey('AttivitaDelProgetto', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="ValorizzazioneEconomicaAttivita_da_AttivitaDelProgetto_attivita_del_progetto")
|
|
dato_economico = models.ForeignKey('offerte_app.AtomoFatturabile', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="ValorizzazioneEconomicaAttivita_da_DettaglioFatturabile_dato_economico")
|
|
|
|
|
|
class AssetDaAttivita(models.Model):
|
|
class Meta:
|
|
verbose_name = 'assetdaattivita'
|
|
verbose_name_plural = 'assetdaattivita'
|
|
|
|
def __str__(self):
|
|
return f"AssetDaAttivita (id: {self.id})"
|
|
|
|
attivita = models.ForeignKey('Attivita', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="AssetDaAttivita_da_Attivita_attivita")
|
|
asset = models.ForeignKey('RisorsaChiave', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="AssetDaAttivita_da_RisorsaChiave_asset")
|
|
|
|
|
|
class ArchivioFiles(models.Model):
|
|
class Meta:
|
|
verbose_name = 'archiviofiles'
|
|
verbose_name_plural = 'archiviofiles'
|
|
|
|
def __str__(self):
|
|
return f"ArchivioFiles (id: {self.id})"
|
|
|
|
url = models.CharField(null=True, max_length=1024)
|
|
descrizione = models.CharField(null=True, max_length=4096)
|
|
|
|
|
|
class CanaleDistribuzioneIndiretto(models.Model):
|
|
class Meta:
|
|
verbose_name = 'canaledistribuzioneindiretto'
|
|
verbose_name_plural = 'canaledistribuzioneindiretto'
|
|
|
|
def __str__(self):
|
|
return f"CanaleDistribuzioneIndiretto (id: {self.id})"
|
|
|
|
partnership_distribuzione = models.ForeignKey('RelazioneConAzienda', on_delete=models.CASCADE, null=True,
|
|
blank=True, related_name="CanaleDistribuzioneIndiretto_da_RelazioneConAzienda_partnership_distribuzione")
|