Compare commits

...

3 Commits

Author SHA1 Message Date
Guido Longoni 6e8764108d mancava url dei contatti 2023-07-29 17:17:16 +02:00
Guido Longoni 8de88d1772 aggiornamento django autocomplete 2023-07-29 17:15:38 +02:00
Guido Longoni 0c9c4b3ba7 documentazione 2023-07-12 22:56:09 +02:00
4 changed files with 32 additions and 5 deletions

View File

@ -149,9 +149,9 @@ ddaf={
'reset_on_included': [], 'reset_on_included': [],
'reset_on_excluded': ['comune'], 'reset_on_excluded': ['comune'],
'reset_on_reset': [], 'reset_on_reset': [],
'autoupdate_on_reset': True, # TODO: semplice flag autoupdate che mette a true questi prossimi tre 'autoupdate_on_reset': True,
'autoupdate_on_empty': True, 'autoupdate_on_empty': True,
'autoselect_on_singleton': True, # TODO: semplice flag autoupdate che mette a true questi ultimi tre 'autoupdate_on_select': False,
'included_only': False, 'included_only': False,
}, },
'comune': { 'comune': {
@ -164,7 +164,7 @@ ddaf={
'reset_on_reset': [], 'reset_on_reset': [],
'autoupdate_on_reset': True, 'autoupdate_on_reset': True,
'autoupdate_on_empty': True, 'autoupdate_on_empty': True,
'autoselect_on_singleton': True, 'autoupdate_on_select': False,
'included_only': False, 'included_only': False,
} }
} }

View File

@ -2,9 +2,11 @@ from django.db import models
from polymorphic.models import PolymorphicModel from polymorphic.models import PolymorphicModel
from dati_geo_app.models import AbstractIndirizzo from dati_geo_app.models import AbstractIndirizzo
# --------------- FINE PREFISSO TEMPLATE ---------------
class SoggettoContattabile(PolymorphicModel): class SoggettoContattabile(PolymorphicModel):
"""
Questa è una classe padre astratta. È utilizzata come base per tutti i soggetti contattabili.
"""
class Meta: class Meta:
verbose_name = 'soggetto contattabile' verbose_name = 'soggetto contattabile'
verbose_name_plural = 'soggetti contattabili' verbose_name_plural = 'soggetti contattabili'
@ -14,6 +16,10 @@ class SoggettoContattabile(PolymorphicModel):
class Recapito(PolymorphicModel): class Recapito(PolymorphicModel):
"""
Questo modello rappresenta i recapiti di contatto di un SoggettoContattabile,
come telefoni, email, fax, ecc.
"""
class Meta: class Meta:
verbose_name = 'recapito' verbose_name = 'recapito'
verbose_name_plural = 'recapiti' verbose_name_plural = 'recapiti'
@ -22,6 +28,11 @@ class Recapito(PolymorphicModel):
blank=False, related_name="contatti") blank=False, related_name="contatti")
class PersonaFisica(SoggettoContattabile): class PersonaFisica(SoggettoContattabile):
"""
È child polimorfico, come PersonaGiuridica, di SoggettoContattabile e
rappresenta una persone giuridica. Ha, come PersonaGiuridica, campi specifici
per i dettagli dello specifico tipo di persona.
"""
class Meta: class Meta:
verbose_name = 'persona fisica' verbose_name = 'persona fisica'
verbose_name_plural = 'persone fisiche' verbose_name_plural = 'persone fisiche'
@ -48,6 +59,11 @@ class PersonaFisica(SoggettoContattabile):
class PersonaGiuridica(SoggettoContattabile): class PersonaGiuridica(SoggettoContattabile):
"""
È child polimorfico, come PersonaFisica, di SoggettoContattabile e
rappresenta una persona fisica. Ha, come PersonaFisica, campi specifici
per i dettagli dello specifico tipo di persona.
"""
class Meta: class Meta:
verbose_name = 'persona giuridica' verbose_name = 'persona giuridica'
verbose_name_plural = 'persone giuridiche' verbose_name_plural = 'persone giuridiche'
@ -126,11 +142,18 @@ class Fax(Recapito):
note = models.CharField(null=False,blank=True,default='', max_length=64) note = models.CharField(null=False,blank=True,default='', max_length=64)
class Indirizzo(Recapito, AbstractIndirizzo): class Indirizzo(Recapito, AbstractIndirizzo):
"""
Questo modello rappresenta un indirizzo fisico associato a un soggetto contattabile.
Implementa AbstractIndirizzo, lo schema di indirizzi di django_geo_app.
"""
class Meta(AbstractIndirizzo.Meta): class Meta(AbstractIndirizzo.Meta):
pass pass
class Sede(Indirizzo): class Sede(Indirizzo):
"""
Questo modello rappresenta una sede fisica di un'azienda.
"""
class Meta: class Meta:
verbose_name = 'sede' verbose_name = 'sede'
verbose_name_plural = 'sedi' verbose_name_plural = 'sedi'
@ -181,3 +204,6 @@ class ContattoAziendale(models.Model):
azienda = models.ForeignKey(Societa, on_delete=models.CASCADE, null=False, azienda = models.ForeignKey(Societa, on_delete=models.CASCADE, null=False,
blank=False, related_name='contatti_azienda') blank=False, related_name='contatti_azienda')
is_personale = models.BooleanField(null=False, blank=False, default=True) is_personale = models.BooleanField(null=False, blank=False, default=True)
# --------------- FINE PREFISSO TEMPLATE ---------------

@ -1 +1 @@
Subproject commit d7561beb097fad4e4ab9d4c12ae764d5f97a007f Subproject commit a6718059835118a8c77501a71b47ee65cd3bc60a

View File

@ -26,6 +26,7 @@ urlpatterns = [
path('is_authenticated/', views.is_authenticated, name='is_authenticated'), path('is_authenticated/', views.is_authenticated, name='is_authenticated'),
path('admin/', admin.site.urls), path('admin/', admin.site.urls),
path('sangue_app/', include('sangue_app.urls')), path('sangue_app/', include('sangue_app.urls')),
path('contatti_app/', include('contatti_app.urls')),
] ]
if settings.DEBUG_TOOLBAR: if settings.DEBUG_TOOLBAR:
import debug_toolbar import debug_toolbar