def update_actions_for_phase(cls, fase, piano, procedura_approvazione, user): # Update Azioni Piano # - Complete Current Actions # - Update Action state accordingly ensure_fase(fase, Fase.ADOZIONE) _pubblicazione_approvazione = piano.getFirstAction( TipologiaAzione.pubblicazione_approvazione) if needs_execution(_pubblicazione_approvazione): chiudi_azione(_pubblicazione_approvazione) _trasmissione_approvazione = piano.getFirstAction( TipologiaAzione.trasmissione_approvazione) crea_azione( Azione( piano=piano, tipologia=TipologiaAzione.attribuzione_conformita_pit, qualifica_richiesta=QualificaRichiesta.REGIONE, stato=StatoAzione.ATTESA, ).imposta_scadenza( get_scadenza(_trasmissione_approvazione.data, TipoExpire.ATTRIBUZIONE_CONFORMITA_PIT)))
def update_actions_for_phase(cls, fase, piano, procedura_vas, user): ensure_fase(fase, Fase.ANAGRAFICA) if procedura_vas.tipologia == TipologiaVAS.VERIFICA: exp = TipoExpire.EMISSIONE_PV_VERIFICA elif procedura_vas.tipologia == TipologiaVAS.PROCEDIMENTO_SEMPLIFICATO: exp = TipoExpire.EMISSIONE_PV_PROCEDIMENTOSEMPLIFICATO else: raise GraphQLError("Tipo procedura VAS inaspettata: {}".format( procedura_vas.tipologia), code=403) _pareri_verifica_vas = piano.getFirstAction( TipologiaAzione.pareri_verifica_sca) if needs_execution(_pareri_verifica_vas): chiudi_azione(_pareri_verifica_vas) _azione_start_vas = piano.getFirstAction( TipologiaAzione.selezione_tipologia_vas) _data_start_vas = _azione_start_vas.data crea_azione( Azione( piano=piano, tipologia=TipologiaAzione.emissione_provvedimento_verifica, qualifica_richiesta=QualificaRichiesta.AC, stato=StatoAzione.ATTESA, ).imposta_scadenza(get_scadenza(_data_start_vas, exp)))
def update_actions_for_phase(cls, fase, piano, procedura_adozione, user): # Update Azioni Piano # - Complete Current Actions # - Update Action state accordingly ensure_fase(fase, Fase.AVVIO) if not piano.procedura_vas or (piano.procedura_vas and piano.procedura_vas.tipologia == TipologiaVAS.NON_NECESSARIA): raise Exception( "Tipologia VAS incongruente con l'azione richiesta") # TODO: controllare se possibile usare --> _pareri_sca = piano.getFirstAction(TIPOLOGIA_AZIONE.pareri_adozione_sca) _pareri_sca_list = piano.azioni( tipologia_azione=TipologiaAzione.pareri_adozione_sca) _pareri_sca = next((x for x in _pareri_sca_list if needs_execution(x)), None) if _pareri_sca: chiudi_azione(_pareri_sca) crea_azione( Azione( piano=piano, tipologia=TipologiaAzione.parere_motivato_ac, qualifica_richiesta=QualificaRichiesta.AC, stato=StatoAzione.ATTESA, ).imposta_scadenza( get_scadenza(procedura_adozione.pubblicazione_burt_data, TipoExpire.ADOZIONE_VAS_PARERE_MOTIVATO_AC)))
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_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 resolve_scadenza_pareri_adozione_sca(self, info, **args): if self.pubblicazione_burt_data: start, end = get_scadenza(self.pubblicazione_burt_data, TipoExpire.ADOZIONE_VAS_PARERI_SCA) return end
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, )