def update_actions_for_phase(cls, fase, piano, procedura_avvio, user): # Update Azioni Piano # - Complete Current Actions # - Update Action state accordingly ensure_fase(fase, Fase.ANAGRAFICA) _esito_cc = piano.getFirstAction( TipologiaAzione.esito_conferenza_copianificazione) if needs_execution(_esito_cc): chiudi_azione(_esito_cc, set_data=False) procedura_avvio.notifica_genio_civile = True procedura_avvio.save() now = get_now() _cc = ConferenzaCopianificazione.objects.get(piano=piano) _cc.data_chiusura_conferenza = now _cc.save() crea_azione( Azione( piano=piano, tipologia=TipologiaAzione.protocollo_genio_civile, qualifica_richiesta=QualificaRichiesta.GC, stato=StatoAzione.NECESSARIA, ))
def update_actions_for_phase(cls, fase, piano, procedura_vas, user): ensure_fase(fase, Fase.ANAGRAFICA) _epv = piano.getFirstAction( TipologiaAzione.emissione_provvedimento_verifica) if needs_execution(_epv): now = get_now() chiudi_azione(_epv, now) procedura_vas.data_assoggettamento = now procedura_vas.verifica_effettuata = True procedura_vas.save() crea_azione( Azione( piano=piano, tipologia=TipologiaAzione. pubblicazione_provvedimento_verifica_ac, qualifica_richiesta=QualificaRichiesta.AC, stato=StatoAzione.NECESSARIA, )) crea_azione( Azione( piano=piano, tipologia=TipologiaAzione. pubblicazione_provvedimento_verifica_ap, qualifica_richiesta=QualificaRichiesta.COMUNE, stato=StatoAzione.NECESSARIA, ))
def update_actions_for_phase(cls, fase, piano, procedura_adozione, user): ensure_fase(fase, Fase.AVVIO) pubblicazione_burt = piano.getFirstAction( TipologiaAzione.pubblicazione_burt) if needs_execution(pubblicazione_burt): chiudi_azione(pubblicazione_burt) now = get_now() crea_azione( Azione( piano=piano, tipologia=TipologiaAzione.osservazioni_enti, qualifica_richiesta=QualificaRichiesta.REGIONE, stato=StatoAzione.ATTESA, ).imposta_scadenza(( now, # ??? procedura_adozione.data_ricezione_osservazioni))) crea_azione( Azione( piano=piano, tipologia=TipologiaAzione.osservazioni_regione, qualifica_richiesta=QualificaRichiesta.REGIONE, stato=StatoAzione.ATTESA, ).imposta_scadenza(( now, # ??? procedura_adozione.data_ricezione_osservazioni))) crea_azione( Azione( piano=piano, tipologia=TipologiaAzione.upload_osservazioni_privati, qualifica_richiesta=QualificaRichiesta.COMUNE, stato=StatoAzione.ATTESA, ).imposta_scadenza(( now, # ??? procedura_adozione.data_ricezione_osservazioni))) if procedura_adozione.pubblicazione_burt_data and \ piano.procedura_vas.tipologia != TipologiaVAS.NON_NECESSARIA: _procedura_adozione_vas, created = ProceduraAdozioneVAS.objects.get_or_create( piano=piano) crea_azione( Azione( piano=piano, tipologia=TipologiaAzione.pareri_adozione_sca, qualifica_richiesta=QualificaRichiesta.SCA, stato=StatoAzione.ATTESA, ).imposta_scadenza( get_scadenza( procedura_adozione.pubblicazione_burt_data, TipoExpire.ADOZIONE_VAS_PARERI_SCA)))
def update_actions_for_phase(cls, fase, piano, procedura_vas, user): ensure_fase(fase, Fase.ANAGRAFICA) _pareri_verifica_vas = piano.getFirstAction( TipologiaAzione.trasmissione_dpv_vas) if needs_execution(_pareri_verifica_vas): now = get_now() chiudi_azione(_pareri_verifica_vas, now) crea_azione( Azione( piano=piano, tipologia=TipologiaAzione.pareri_verifica_sca, qualifica_richiesta=QualificaRichiesta.SCA, stato=StatoAzione.ATTESA, ).imposta_scadenza( get_scadenza(now, TipoExpire.PARERI_VERIFICA_SCA)))
def update_actions_for_phase(cls, fase, piano, procedura_avvio, user): ensure_fase(fase, Fase.ANAGRAFICA) _avvio_procedimento = piano.getFirstAction( TipologiaAzione.avvio_procedimento) if needs_execution(_avvio_procedimento): if not cls.autorita_ok(piano, [Qualifica.GC]): raise GraphQLError( "Genio Civile non trovato tra i soggetti operanti", code=400) if not cls.autorita_ok(piano, [Qualifica.OPREG]): raise GraphQLError( "Pianificazione o Urbanistica non trovato tra i soggetti operanti", code=400) if procedura_avvio.conferenza_copianificazione is None: raise GraphQLError("Conferenza copianificazione non impostata", code=400) chiudi_azione(_avvio_procedimento) crea_azione( Azione( piano=piano, tipologia=TipologiaAzione.contributi_tecnici, qualifica_richiesta=QualificaRichiesta.REGIONE, stato=StatoAzione.ATTESA, ).imposta_scadenza(( get_now(), # ?? procedura_avvio.data_scadenza_risposta))) crea_azione(Azione( piano=piano, tipologia=TipologiaAzione.selezione_tipologia_vas, qualifica_richiesta=QualificaRichiesta.COMUNE, stato=StatoAzione.ATTESA, ), send_mail=False) init_vas_procedure(piano, user)
def update_actions_for_phase(cls, fase, piano, procedura_avvio, user): ensure_fase(fase, Fase.ANAGRAFICA) # _avvio_procedimento = piano.getFirstAction(TIPOLOGIA_AZIONE.avvio_procedimento) # if isExecuted(_avvio_procedimento): if procedura_avvio.conferenza_copianificazione != TipologiaCopianificazione.POSTICIPATA: return GraphQLError( "Errore nello stato del piano - Tipologia copianificazione errata", code=400) _richiesta_cc = piano.getFirstAction( TipologiaAzione.richiesta_conferenza_copianificazione) if needs_execution(_richiesta_cc): chiudi_azione(_richiesta_cc, set_data=False) procedura_avvio.notifica_genio_civile = False procedura_avvio.save() _cc = ConferenzaCopianificazione.objects.get(piano=piano) _cc.data_richiesta_conferenza = get_now() _cc.data_scadenza_risposta = procedura_avvio.data_scadenza_risposta _cc.save() crea_azione( Azione(piano=piano, tipologia=TipologiaAzione.richiesta_integrazioni, qualifica_richiesta=QualificaRichiesta.REGIONE, stato=StatoAzione.ATTESA)) crea_azione( Azione( piano=piano, tipologia=TipologiaAzione. esito_conferenza_copianificazione, qualifica_richiesta=QualificaRichiesta.REGIONE, stato=StatoAzione.ATTESA, ))
def update_actions_for_phase(cls, fase, piano, procedura_adozione, user): ensure_fase(fase, Fase.AVVIO) _controdeduzioni = piano.getFirstAction( TipologiaAzione.controdeduzioni) if needs_execution(_controdeduzioni): now = get_now() chiudi_azione(_controdeduzioni, now) for tipo in [ TipologiaAzione.osservazioni_enti, TipologiaAzione.osservazioni_regione, TipologiaAzione.upload_osservazioni_privati ]: oss = piano.getFirstAction(tipo) if needs_execution(oss): chiudi_azione(oss, now) crea_azione( Azione(piano=piano, tipologia=TipologiaAzione.piano_controdedotto, qualifica_richiesta=QualificaRichiesta.COMUNE, stato=StatoAzione.ATTESA))
def update_actions_for_phase(cls, fase, piano, procedura_vas, user): ensure_fase(fase, Fase.ANAGRAFICA) _invio_doc_preliminare = piano.getFirstAction( TipologiaAzione.invio_doc_preliminare) if needs_execution(_invio_doc_preliminare): now = get_now() chiudi_azione(_invio_doc_preliminare, now) crea_azione( Azione( piano=piano, tipologia=TipologiaAzione.trasmissione_pareri_sca, qualifica_richiesta=QualificaRichiesta.SCA, stato=StatoAzione.ATTESA, ).imposta_scadenza( get_scadenza(now, TipoExpire.TRASMISSIONE_PARERI_SCA))) crea_azione( Azione(piano=piano, tipologia=TipologiaAzione.trasmissione_pareri_ac, qualifica_richiesta=QualificaRichiesta.AC, stato=StatoAzione.ATTESA))
def make_token_expiration(days=365): _expire_days = getattr(settings, 'TOKEN_EXPIRE_DAYS', days) _expire_time = get_now() _expire_delta = datetime.timedelta(days=_expire_days) return _expire_time + _expire_delta
def update_actions_for_phase(cls, fase, piano, procedura_avvio, user): ensure_fase(fase, Fase.ANAGRAFICA) _avvio_procedimento = piano.getFirstAction( TipologiaAzione.avvio_procedimento) _contributi_tecnici = piano.getFirstAction( TipologiaAzione.contributi_tecnici) if is_executed(_avvio_procedimento) and needs_execution( _contributi_tecnici): chiudi_azione(_contributi_tecnici) crea_azione( Azione(piano=piano, tipologia=TipologiaAzione.formazione_del_piano, qualifica_richiesta=QualificaRichiesta.COMUNE, stato=StatoAzione.NECESSARIA)) if procedura_avvio.conferenza_copianificazione == TipologiaCopianificazione.NECESSARIA: procedura_avvio.notifica_genio_civile = False procedura_avvio.save() _cc, created = ConferenzaCopianificazione.objects.get_or_create( piano=piano) _cc.data_richiesta_conferenza = get_now() _cc.data_scadenza_risposta = procedura_avvio.data_scadenza_risposta _cc.save() crea_azione( Azione(piano=piano, tipologia=TipologiaAzione.richiesta_integrazioni, qualifica_richiesta=QualificaRichiesta.REGIONE, stato=StatoAzione.ATTESA)) crea_azione( Azione(piano=piano, tipologia=TipologiaAzione. esito_conferenza_copianificazione, qualifica_richiesta=QualificaRichiesta.REGIONE, stato=StatoAzione.ATTESA)) elif procedura_avvio.conferenza_copianificazione == TipologiaCopianificazione.POSTICIPATA: procedura_avvio.notifica_genio_civile = False procedura_avvio.save() _cc, created = ConferenzaCopianificazione.objects.get_or_create( piano=piano) _cc.data_scadenza_risposta = procedura_avvio.data_scadenza_risposta _cc.save() crea_azione( Azione(piano=piano, tipologia=TipologiaAzione. richiesta_conferenza_copianificazione, qualifica_richiesta=QualificaRichiesta.COMUNE, stato=StatoAzione.ATTESA)) elif procedura_avvio.conferenza_copianificazione == TipologiaCopianificazione.NON_NECESSARIA: procedura_avvio.notifica_genio_civile = True procedura_avvio.save() crea_azione( Azione(piano=piano, tipologia=TipologiaAzione.protocollo_genio_civile, qualifica_richiesta=QualificaRichiesta.GC, stato=StatoAzione.NECESSARIA))
def init_vas_procedure(piano: Piano, utente: Utente): procedura_vas = piano.procedura_vas _selezione_tipologia_vas = piano.getFirstAction( TipologiaAzione.selezione_tipologia_vas) now = get_now() if needs_execution(_selezione_tipologia_vas): chiudi_azione(_selezione_tipologia_vas, now) else: raise GraphQLError("Stato inconsistente nell'inizializzazione VAS", code=500) if procedura_vas.tipologia == TipologiaVAS.NON_NECESSARIA: pass elif procedura_vas.tipologia == TipologiaVAS.PROCEDURA_ORDINARIA: crea_azione( Azione( piano=piano, tipologia=TipologiaAzione.invio_doc_preliminare, qualifica_richiesta=QualificaRichiesta.COMUNE, stato=StatoAzione.ATTESA, )) elif procedura_vas.tipologia == TipologiaVAS.VERIFICA: crea_azione( Azione( piano=piano, tipologia=TipologiaAzione.trasmissione_dpv_vas, qualifica_richiesta=QualificaRichiesta.AC, stato=StatoAzione.ATTESA, ).imposta_scadenza( get_scadenza(now, TipoExpire.TRASMISSIONE_DPV_VAS))) elif procedura_vas.tipologia == TipologiaVAS.VERIFICA_SEMPLIFICATA: crea_azione( Azione( piano=piano, tipologia=TipologiaAzione.emissione_provvedimento_verifica, qualifica_richiesta=QualificaRichiesta.AC, stato=StatoAzione.ATTESA, ).imposta_scadenza( get_scadenza(now, TipoExpire.EMISSIONE_PV_VERIFICASEMPLIFICATA))) elif procedura_vas.tipologia == TipologiaVAS.PROCEDIMENTO_SEMPLIFICATO: crea_azione( Azione( piano=piano, tipologia=TipologiaAzione.pareri_verifica_sca, qualifica_richiesta=QualificaRichiesta.SCA, stato=StatoAzione.ATTESA, ).imposta_scadenza( get_scadenza( now, TipoExpire.PARERI_VERIFICA_SCA_PROCEDIMENTOSEMPLIFICATO))) # AC deve essere notificato piano_phase_changed.send( message_type=TipoMail.trasmissione_dp_vas, sender=Piano, piano=piano, user=utente, )