Calcolo generale
Creazione automatica delle FibPorts
La creazione delle porte su nodi e splitter è stata completamente delegata alla nuova funzionalità descritta in ChangePortsOfEntity.
Il metodo createAutomaticFibPorts esegue semplicemente l'istruzione a seguire su tutti i nodi interessati dal calcolo.
changePortsOnEntity.process(new ChangePortOnEntityDTO(pcabNode));
Workflow precedente al Refactor (solo per le porte)
(createAutomaticFibPorts)
-
Recupera la lista di nodi (PcabNodes) interessati nel calcolo fibre (CalcFibLogicalSupport).
-
Per ogni nodo, chiama
insertPortsOfNode, gestendo eventuali errori tramite un report.
Recupero delle porte disponibili per una giunzione
(getFibPortToJointByPkFibPorts)
-
Estrae le porte disponibili con numero superiore a una data porta (pkPort).
-
Opzionalmente filtra le porte già giuntate dal risultato (rmJointed).
-
Se l'applicativo è di tipo AB o GP, rimuove ulteriori porte specifiche.
Inserimento di porte in un cassetto ottico
(insertFibPortsOutByFibOpticalDrawer)
-
Itera fino al numero massimo di porte (S_NUMER_PORTS) e le inserisce se non sono già esistenti.
Impostazione e rimozione della chiave esterna di una porta
(setFkPort, setNullFkPorts)
-
setFkPort: Associa una porta a un cassetto ottico (pkFibOpticalDrawer). -
setNullFkPorts: Rende nulla la chiave esterna delle porte associate a un cassetto ottico, utile in fase di eliminazione.
Inserimento ed eliminazione delle porte
(insertFibPortIn, insertFibPortOut, deleteFibPortsByFibOpticalDrawer)
-
Determina se la porta deve essere associata a un nodo PCN (fkPcn).
-
Inserisce una nuova porta nel sistema con parametri specifici.
-
Recupera ed elimina tutte le porte legate a un cassetto ottico.
Verifica e gestione degli splitter
(isFibPortInsertSkippable, addRemoveFibPortsSplitter, getFibPortsOfSplitter, insertFibPortsSplitter, deleteFibPortsBySplitter, deleteFibPortsInOrOutBySplitter)
-
Controlla se una porta da inserire è già presente.
-
Recupera e aggiorna le porte associate a uno splitter.
-
Gestisce inserimento ed eliminazione delle porte di splitter primari e secondari.
-
Rimuove selettivamente le porte in ingresso o uscita di uno splitter.
Recupero dati di progetto e conteggi
(getListPortsOfProject, getNumberFibersOfCassettoWithJoints, getListPortFreeSplitterSecondario)
-
Recupera tutte le porte associate a un drawing, inclusi sottoprogetti.
-
Conta le fibre con giunzioni per un nodo (pkPcabNodes).
-
Restituisce le porte libere in uno splitter secondario, escludendo quelle già occupate.
Impostazione dei parametri per l'associazione delle porte
(setParametersForPortAssociation)
-
Verifica eventuali "guasti" o "progetti interni" e imposta i parametri per la gestione dei nodi e delle porte.
Creazione delle Giunzioni Cavo-Cavo e Porta-Cavo
createAutomaticFibJoints
Gestisce la creazione automatica di giunzioni (fib_joints) in una rete di fibra ottica.
Flusso della Funzionalità
-
Recupero Dati di Input:
-
Selezione di nodi (PcabNodes), giunzioni (FibJoints), sezioni di fibra (FibPcabSection) e porte (FibPorts).
-
-
Filtraggio dei Nodi:
-
Per progetti AB, vengono rimossi i nodi considerati "rotti".
-
Se richiesto, vengono selezionati solo i nodi da aggiornare.
-
-
Creazione dello Stato della Giunzione:
-
Creazione di
CreateJunctionState, contenente modalità di giunzione, nodi, sezioni di fibra e porte. -
Recupero dei nodi di backhauling solo per Grecia.
-
-
Creazione delle Giunzioni:
-
Controllo se il nodo è l'ultimo nodo GC, solo per Grecia l'ultimo GC viene gestito in maniera differente.
-
Verifica delle potenzialità di giunzione.
-
Creazione delle giunzioni tra cavi e nodi, evitando duplicazioni.
-
-
Gestione degli Errori:
-
Degli errori e delle eccezioni vengono registrati con il nome e l'ID del nodo coinvolto.
-
Funzioni Ausiliarie
-
getListFibJointsOfProjects: Recupera tutte le giunzioni esistenti nel progetto. -
generateAutoJointedNodeList: Genera la lista di nodi esclusi dalla giunzione automatica. -
createAutomaticFibJointsCards: Crea e numerizza le fib_joints cards per i nodi.
Gestione dei Nodi di Backhauling
-
Per progetti GP, i nodi di backhauling vengono recuperati tramite
getBackhaulingNodes.
createFibJoints
-
checkIsLastPCP: Verifica se il nodo è l'ultimo nodo GC. -
startNodeChecks: Esegue i controlli iniziali sui nodi. -
checkNodeJointPotentiality: Controlla se il nodo è idoneo alla giunzione.
Errori e Report
-
Gli errori sono catturati ed inseriti in un report con ID del nodo e dettagli del problema.
Creazione delle Cartoline di Giunzione
-
createAutomaticFibJointsCards: Associa un numero progressivo alle fib_joints cards, gestendo errori di assegnazione. Queste giunzioni vengono create solo cui CNO di CD. Viene creata una cartolina per ogni fibra di tipo SPLITTER, BU spare4cards o POI passante per quel CNO verso la rete di primaria. Di base sono giunzioni cavo cavo con un nome progressivo associato.
Vedi anche Lezione 5 - calcolo Giunzioni
No Comments