def import_import_volontari(risultato): i = 0 for p in risultato: if _ha_errore(p): continue dati = _ottieni_dati(p) dati_persona = { x: y for x, y in dati.items() if x in [ "nome", "cognome", "codice_fiscale", "data_nascita", "comune_nascita", "provincia_nascita", "stato_nascita", "stato_residenza", "cap_residenza", "indirizzo_residenza", "comune_residenza", "email_contatto" ] } try: persona = Persona.objects.get( codice_fiscale__iexact=dati_persona['codice_fiscale']) except Persona.DoesNotExist: persona = Persona(**dati_persona) persona.save() if dati['telefono']: persona.aggiungi_numero_telefono(dati['telefono'], servizio=False) if dati['telefono_servizio']: persona.aggiungi_numero_telefono(dati['telefono_servizio'], servizio=True) for app in persona.appartenenze_attuali(): app.fine = poco_fa() app.save() # Cancella aspirante associato Aspirante.objects.filter(persona=persona).delete() app = Appartenenza( persona=persona, sede=dati['sede'], inizio=dati['data_ingresso'], membro=Appartenenza.VOLONTARIO, ) app.save() if dati['email'] and not Utenza.objects.filter( persona=persona).exists(): # Non ha utenza if not Utenza.objects.filter(email__iexact=dati['email']): # Non esiste, prova a creare u = Utenza(persona=persona, email=dati['email']) u.save() u.genera_credenziali() i += 1 return i
def test_permessi_attivita(self): fiumefreddo = Sede( nome="Comitato Locale di Fiumefreddo di Sicilia", tipo=Sede.COMITATO, estensione=LOCALE, ) fiumefreddo.save() mascali = Sede( nome="Comitato Locale di Mascali", tipo=Sede.COMITATO, estensione=LOCALE, ) mascali.save() area = Area( nome="6", obiettivo=6, sede=fiumefreddo, ) area.save() a = Attivita( stato=Attivita.VISIBILE, nome="Att 1", apertura=Attivita.APERTA, area=area, descrizione="1", sede=mascali, ) a.save() p = Persona(nome="Mario", cognome="Rossi", codice_fiscale="FRSSAKJNOKAJMI", data_nascita="1994-2-5") p.save() app = Appartenenza( persona=p, sede=fiumefreddo, membro=Appartenenza.VOLONTARIO, inizio="1980-12-10", ) app.save() t = Turno( attivita=a, prenotazione=datetime.datetime(2015, 11, 10), inizio=datetime.datetime(2015, 11, 10), fine=datetime.datetime(2015, 11, 30), minimo=1, massimo=6, ) t.save() delega = Delega( oggetto=a, persona=p, tipo=REFERENTE, inizio="2015-11-15", ) delega.save() self.assertTrue( p.calendario_turni(datetime.date(2015, 11, 1), datetime.date(2015, 11, 30)).filter(pk=t.pk).exists(), msg= "Il turno viene trovato nel calendario - attivita' creata dalla sede del volontario" )
def test_attivita_estesa(self): sicilia = Sede( nome="Comitato Regionale di Sicilia", tipo=Sede.COMITATO, estensione=LOCALE, ) sicilia.save() fiumefreddo = Sede( nome="Comitato Locale di Fiumefreddo di Sicilia", tipo=Sede.COMITATO, estensione=LOCALE, genitore=sicilia, ) fiumefreddo.save() mascali = Sede( nome="Comitato Locale di Mascali", tipo=Sede.COMITATO, estensione=LOCALE, genitore=sicilia, ) mascali.save() calabria = Sede( nome="Comitato Regionale di Calabria", tipo=Sede.COMITATO, estensione=LOCALE, ) calabria.save() area = Area( nome="6", obiettivo=6, sede=sicilia, ) area.save() a = Attivita( stato=Attivita.VISIBILE, nome="Att 1", apertura=Attivita.APERTA, area=area, descrizione="1", sede=sicilia, estensione=sicilia, ) a.save() a1 = Attivita( stato=Attivita.VISIBILE, nome="Att 1", apertura=Attivita.APERTA, area=area, descrizione="1", sede=fiumefreddo, estensione=sicilia, ) a1.save() t = Turno( attivita=a, prenotazione=datetime.datetime(2015, 11, 10), inizio=datetime.datetime(2015, 11, 10), fine=datetime.datetime(2015, 11, 30), minimo=1, massimo=6, ) t.save() t1 = Turno(attivita=a, prenotazione=datetime.datetime(2015, 11, 10), inizio=datetime.datetime(2015, 10, 10), fine=datetime.datetime(2015, 10, 30)) t1.save() t2 = Turno(attivita=a1, prenotazione=datetime.datetime(2015, 11, 10), inizio=datetime.datetime(2015, 11, 10), fine=datetime.datetime(2015, 11, 30)) t2.save() p = Persona(nome="Mario", cognome="Rossi", codice_fiscale="FRSSAKJSIKAJDO", data_nascita="1994-2-5") p.save() p1 = Persona(nome="Mario", cognome="Rossi", codice_fiscale="FRSSAKJSIRAJDO", data_nascita="1994-2-5") p1.save() p2 = Persona(nome="Mario", cognome="Rossi", codice_fiscale="FRSSAKJNOKAJDO", data_nascita="1994-2-5") p2.save() p3 = Persona(nome="Mario", cognome="Rossi", codice_fiscale="FRSSAKJNOKAJMI", data_nascita="1994-2-5") p3.save() app = Appartenenza( persona=p, sede=sicilia, membro=Appartenenza.VOLONTARIO, inizio="1980-12-10", ) app.save() app1 = Appartenenza( persona=p1, sede=fiumefreddo, membro=Appartenenza.VOLONTARIO, inizio="1980-12-10", ) app1.save() app2 = Appartenenza( persona=p2, sede=mascali, membro=Appartenenza.VOLONTARIO, inizio="1980-12-10", ) app2.save() app3 = Appartenenza( persona=p3, sede=calabria, membro=Appartenenza.VOLONTARIO, inizio="1980-12-10", ) app3.save() self.assertTrue( p2.calendario_turni(datetime.date(2015, 11, 1), datetime.date(2015, 11, 30)).filter(pk=t2.pk).exists(), msg= "Il turno viene trovato nel calendario - attivita' estesa al volontario" ) self.assertFalse( p3.calendario_turni(datetime.date(2015, 11, 1), datetime.date(2015, 11, 30)).filter(pk=t2.pk).exists(), msg= "Il turno non viene trovato nel calendario - attivita' estesa al volontario" )