Calcolo generale
Creazione giunzioniporte alledei portenodi
-
Creazione automatica delle porte in fibra (
createAutomaticFibPorts)-
Recupera la lista di nodi (
PcabNodes) da un calcolo di fibra (CalcFibLogicalSupport). -
Per ogni nodo, chiama
insertPortsOfNode, gestendo eventuali errori con un report.
-
-
Recupero delle porte disponibili per una giunzione (
getFibPortToJointByPkFibPorts)-
Estrae le porte disponibili con numero superiore a una data porta (
pkPort). -
Opzionalmente rimuove le porte già giuntate (
rmJointed). -
Se il sistema è di tipo
ABoGP, 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 della chiave esterna di una porta (
setFkPort)-
Associa una porta a un cassetto ottico (
pkFibOpticalDrawer) aggiornandone la chiave esterna.
-
-
Rimozione delle chiavi esterne delle porte (
setNullFkPorts)-
Rende null la chiave esterna delle porte associate a un cassetto ottico, utile in fase di eliminazione.
-
-
Inserimento di porte in ingresso e uscita (
insertFibPortIneinsertFibPortOut)-
Determina se la porta deve essere associata a un nodo PCN (
fkPcn). -
Inserisce una nuova porta nel sistema con i parametri specificati.
-
-
Eliminazione delle porte associate a un cassetto ottico (
deleteFibPortsByFibOpticalDrawer)-
Recupera tutte le porte legate a un cassetto ottico e le elimina.
-
-
Verifica se l'inserimento di una porta è evitabile (
isFibPortInsertSkippable)-
Controlla se la porta da inserire è già presente nella lista delle porte esistenti.
-
-
Gestione delle porte associate agli splitter (
addRemoveFibPortsSplitter)-
Recupera le porte in ingresso e uscita associate a uno splitter e le aggiorna in base alla configurazione richiesta.
-
-
Recupero delle porte associate a uno splitter (
getFibPortsOfSplitter)-
Recupera la lista di porte in base al tipo di splitter (
PrimariooSecondario).
-
-
Inserimento di nuove porte in uno splitter (
insertFibPortsSplitter)-
Crea e associa nuove porte a uno splitter (
PrimariooSecondario), salvandole nel database.
-
-
Eliminazione delle porte associate a uno splitter (
deleteFibPortsBySplitter)-
Recupera ed elimina le porte legate a uno splitter.
-
-
Eliminazione selettiva delle porte in ingresso o uscita di uno splitter (
deleteFibPortsInOrOutBySplitter)-
Rimuove solo le porte in ingresso o in uscita, a seconda del parametro
isIn.
-
-
Recupero delle porte di un progetto (
getListPortsOfProject)-
Recupera tutte le porte associate a un disegno (
drawing), includendo eventuali sottoprogetti.
-
-
Conteggio delle fibre con giunzioni di un cassetto (
getNumberFibersOfCassettoWithJoints)-
Conta il numero di fibre di un nodo (
pkPcabNodes) che hanno giunzioni.
-
-
Recupero delle porte disponibili in uno splitter secondario (
getListPortFreeSplitterSecondario)-
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
La funzionalità createAutomaticFibJoints è progettata per automatizzare la creazione di giunzioni (fib_joints) per una rete di fibra ottica in base ai dati di progetto, configurazioni e nodi. Di seguito trovi una documentazione dettagliata per ogni parte di questa funzionalità:
Descrizione generale
La funzione createAutomaticFibJoints gestisce la creazione di giunzioni tra nodi di una rete di fibra ottica, considerando vari fattori come il tipo di progetto (AB o GP), lo stato dei nodi, la configurazione dei giunti e le porte disponibili. Inoltre, gestisce i nodi di backhauling e verifica le potenzialità di giunzione in base alle specifiche del progetto.
Flusso della funzionalità
-
Recupero Dati di Input:
-
La funzione inizia recuperando diverse informazioni relative ai nodi, alle giunzioni, alle sezioni e alle porte del progetto.
-
Queste informazioni vengono raccolte tramite chiamate a vari servizi e mapper, che estraggono i dati relativi alla fibra ottica, come i nodi (
PcabNodes), le giunzioni (FibJoints), le sezioni di fibra (FibPcabSection), e le porte di fibra (FibPorts).
-
-
Filtraggio dei Nodi:
-
Se il progetto è di tipo "AB" (Application AB), vengono rimossi i nodi che risultano rotti tramite il metodo
removeIf. -
Inoltre, se è richiesta la creazione di giunzioni per "AB" o "GP" e sono presenti nodi primari da aggiornare, viene applicato un filtro ai nodi per selezionare solo quelli da aggiornare.
-
-
Creazione Stato della Giunzione:
-
Viene creato un oggetto
CreateJunctionStateche contiene tutte le informazioni necessarie per creare le giunzioni. Questo include la modalità di giunzione automatica, la lista dei nodi da considerare, le giunzioni esistenti nel progetto, le sezioni di fibra, e le porte della fibra. -
Inoltre, vengono recuperati i nodi di backhauling tramite il metodo
getBackhaulingNodes.
-
-
Creazione delle Giunzioni:
-
Per ogni nodo nella lista
listPcabNodes, vengono eseguiti vari controlli e verifiche:-
Controllo se è l'ultimo nodo PCP: Se il nodo è l'ultimo in una determinata configurazione, il sistema lo segna come "ultimo nodo PCP".
-
Verifica della potenzialità di giunzione: Se il nodo è in uno stato che consente di eseguire giunzioni, viene verificato se si superano i limiti di giunzione.
-
Creazione delle Giunzioni: Si procede con la creazione delle giunzioni tra cavi e nodi, e cavi e porte, a meno che il nodo non sia già stato giuntato automaticamente.
-
-
-
Gestione degli Errori:
-
Se durante il processo si verifica un errore, viene catturato e registrato un messaggio di errore, con il nome e l'ID del nodo coinvolto.
-
-
Funzioni Ausiliarie:
-
getListFibJointsOfProjects: Recupera tutte le giunzioni già esistenti nel progetto. -
generateAutoJointedNodeList: Genera una lista di nodi che non devono essere considerati per la creazione di giunzioni automatiche (gestiti dagli splitter). -
createAutomaticFibJointsCards: Gestisce la creazione di "fib_joints cards" per i nodi. Le carte sono numerate e associate a ciascuna giunzione.
-
Funzione createAutomaticFibJoints - Parametri
-
calcFibLogicalSupport: Un oggetto contenente informazioni di supporto per la logica della fibra, tra cui il tipo di progetto, i nodi da aggiornare, e la configurazione della giunzione.
Gestione dei Nodi di Backhauling
-
Per il tipo di applicazione "GP", i nodi di backhauling vengono recuperati utilizzando il metodo
getBackhaulingNodes, che restituisce i nodi di tipo backhauling dal database.
Funzione createFibJoints - Processi Dettagliati
-
checkIsLastPCP: Verifica se il nodo è l'ultimo nodo PCP. -
startNodeChecks: Esegue i controlli iniziali sui nodi prima di creare le giunzioni. -
checkNodeJointPotentiality: Controlla se il nodo è idoneo a creare giunzioni, in particolare per applicazioni AB.
Errori e Report
-
Se si verifica un errore durante la creazione delle giunzioni, il sistema cattura l'eccezione e registra l'errore nel report, indicando l'ID del nodo e il messaggio di errore.
Funzione createAutomaticFibJointsCards
Questa funzione crea le "fib_joints cards" per i nodi specificati nel disegno, associando un numero progressivo alle carte. Il processo prevede la numerazione delle carte e la gestione degli errori per ciascuna giunzione.