Calcolo Fibre per Area
La procedura calcolaFibreAreaCopertura è un endpoint POST che consente di avviare il calcolo delle fibre ottiche in una determinata area di copertura. Accetta vari parametri per configurare il calcolo e utilizza servizi interni per eseguire le operazioni necessarie.
Endpoint
-
URL:
calcolaFibreAreaCopertura -
Metodo: POST
-
Produzione:
application/json
Parametri
| Parametro | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| gwClassName | String | Sì | Nome della classe di progetto |
| gwProjectsName | String | Sì | Nome del progetto |
| allItemSelected | Boolean | No (Default: false) |
Indica se tutti gli elementi sono selezionati |
| cleaningJunction | Boolean | Sì | Indica se deve essere effettuata una pulizia delle giunzioni |
| calcGreyArea | Boolean | No (Default: false) |
Indica se l'area grigia deve essere calcolata |
| rules | String | No (Default: S2023) |
Regole da applicare al calcolo |
| formdata | FormData | Sì | Dati del form contenenti i parametri necessari per il calcolo |
Logica di Calcolo
-
Creazione DTO di configurazione: viene creato un oggetto
CalcFibersLogicalDTOcontenente i parametri ricevuti. -
Recupero dell'area di copertura: tramite
getAreaPfs, vengono recuperate le aree di copertura interessate. -
Verifica nodi nella copertura: il metodo
checkPcabNodesInAreaCoperturaverifica la presenza di nodi nella copertura e gestisce eventuali errori. Al termine ritorna i nodi contenuti nella geometria dell'area. -
Recupero cavi: si estraggono i cavi associati ai nodi individuati.
-
Avvio del calcolo: il metodo
startCalcFibersavvia l'elaborazione vera e propria basata sui dati raccolti. -
Esecuzione del calcolo dettagliato: il metodo
startCalcFibersLogicalesegue il calcolo dettagliato attraversorunCorrectCalcFibersBean.
Gestione delle Eccezioni
-
GisfoException: Eccezione generica in caso di errore durante il calcolo. -
CalcAreaFibersException: Lanciata se un nodo è già presente in un'area bloccata per modifiche tramite tablet.
Metodi della procedura
-
tryToCalcFibersOfArea(List<Long> listPk, CalcFibersLogicalDTO calcFibersLogicalDTO)-
Imposta il drawing e l'operatore.
-
Avvia il calcolo con
calcolaFibreAreaCopertura. -
Restituisce un oggetto
JsonServerResponsecon l'esito dell'operazione.
-
-
calcolaFibreAreaCopertura(List<Long> listPk, CalcFibersLogicalDTO calcFibersLogicalDTO)-
Recupera le aree di copertura.
-
Controlla i nodi associati e i cavi.
-
Avvia il calcolo delle fibre con
startCalcFibers.
-
-
startCalcFibers(CalcFibersLogicalDTO calcFibersLogicalDTO, List<AreaPfs> listAreeCopertura, List<PcabNodes> pcabNodesInAreaCopertura, List<PcabCables> pcabCablesInAreaCopertura)-
Configura l'oggetto
CalcFibersLogicalConfig. -
Inizializza le mappe e gli elementi selezionati.
-
Chiama
startCalcFibersLogicalper eseguire il calcolo.
-
-
checkPcabNodesInAreaCopertura(List<AreaPfs> listAreaCopertura, CalcFibersLogicalDTO calcFibersLogicalDTO)-
Recupera i nodi geometricamente e verifica se sono bloccati.
-
Lancia un'eccezione se un nodo è presente in un'area già reclamata su tablet.
-
-
startCalcFibersLogical(CalcFibersLogicalConfig config)-
Esegue controlli preliminari con
doChecks. -
Esegue il calcolo con
runCorrectCalcFibersBean. -
Restituisce il report generato.
-
-
runCorrectCalcFibersBean(CalcFibersLogicalConfig calcFibersLogicalConfig)-
Seleziona e inizializza il bean corretto per il calcolo.
-
Effettua la validazione dei progetti.
-
Esegue il calcolo effettivo delle fibre.
-
Output
L'output dell'operazione è un oggetto JsonServerResponse contenente:
-
Successo (
true/false) -
Messaggio informativo o di errore
No Comments