Beispiel #1
0
        /// <summary>
        ///   Query che estrae tutti i parametri iniziali della Home Page
        /// </summary>
        /// <param name="query">Filtri utilizzati per l'estrazione</param>
        /// <returns>Tutti i parametri iniziali della Home Page</returns>
        public WelcomeResult Handle(WelcomeQuery query)
        {
            Log.Debug("Inizio elaborazione Welcome Handler");

            var listaSediAlberate = _getAlberaturaUnitaOperative.ListaSediAlberata();

            var pinNodi = new List <PinNodo>();
            var pinNodiNoDistaccamenti = new List <PinNodo>();

            foreach (var sede in query.CodiceSede)
            {
                pinNodi.Add(new PinNodo(sede, true));
                pinNodiNoDistaccamenti.Add(new PinNodo(sede, true));
            }

            foreach (var figlio in listaSediAlberate.GetSottoAlbero(pinNodi))
            {
                pinNodi.Add(new PinNodo(figlio.Codice, true));
            }

            FiltroRicercaRichiesteAssistenza filtro = new FiltroRicercaRichiesteAssistenza
            {
                SearchKey      = "0",
                idOperatore    = query.idOperatore,
                UnitaOperative = pinNodi.ToHashSet()
            };

            var sintesiRichiesteAssistenzaQuery = new SintesiRichiesteAssistenzaQuery()
            {
                CodiciSede = query.CodiceSede,
                Filtro     = filtro
            };

            var filtri = _filtriHandler.Get();

            if (query.CodiceSede[0].Equals("CON"))
            {
                filtri.Distaccamenti = _getDistaccamenti.GetListaDistaccamenti(pinNodi.ToHashSet().ToList());
            }
            else
            {
                filtri.Distaccamenti = _getDistaccamenti.GetListaDistaccamenti(pinNodiNoDistaccamenti);
            }

            var rubrica = Task.Factory.StartNew(() => _rubricaQueryHandler.Handle(new RubricaQuery()
            {
                IdOperatore = query.idOperatore, IdSede = query.CodiceSede, Filters = new FiltriRubrica()
                {
                    Search = ""
                }, Pagination = default
            }).DataArray);
Beispiel #2
0
        /// <summary>
        ///   Metodo di esecuzione della query
        /// </summary>
        /// <param name="query">Il DTO di ingresso della query</param>
        /// <returns>Il DTO di uscita della query</returns>
        public FiltriResult Handle(FiltriQuery query)
        {
            Log.Debug("Inizio elaborazione Lista Filtri Handler");

            Classi.Filtri.Filtri filtri = _ifiltri.Get();

            filtri.Distaccamenti = _getDistaccamenti.GetListaDistaccamenti(query.Filtro.UnitaOperative.ToList());

            Log.Debug("Fine elaborazione Lista Filtri Handler");

            return(new FiltriResult()
            {
                Filtri = filtri
            });
        }
Beispiel #3
0
        /// <summary>
        ///   Query che estrae tutti i parametri iniziali della Home Page
        /// </summary>
        /// <param name="query">Filtri utilizzati per l'estrazione</param>
        /// <returns>Tutti i parametri iniziali della Home Page</returns>
        public WelcomeResult Handle(WelcomeQuery query)
        {
            Log.Debug("Inizio elaborazione Welcome Handler");

            var listaSediAlberate = _getAlberaturaUnitaOperative.ListaSediAlberata();

            var pinNodi = new List <PinNodo>();
            var pinNodiNoDistaccamenti = new List <PinNodo>();

            foreach (var sede in query.CodiceSede)
            {
                pinNodi.Add(new PinNodo(sede, true));
                pinNodiNoDistaccamenti.Add(new PinNodo(sede, true));
            }

            foreach (var figlio in listaSediAlberate.GetSottoAlbero(pinNodi))
            {
                pinNodi.Add(new PinNodo(figlio.Codice, true));
            }

            FiltroRicercaRichiesteAssistenza filtro = new FiltroRicercaRichiesteAssistenza
            {
                SearchKey      = "0",
                idOperatore    = query.idOperatore,
                UnitaOperative = pinNodi.ToHashSet()
            };

            var sintesiRichiesteAssistenzaQuery = new SintesiRichiesteAssistenzaQuery()
            {
                CodiciSede = query.CodiceSede,
                Filtro     = filtro
            };

            var filtri = _filtriHandler.Get();

            filtri.Distaccamenti = _getDistaccamenti.GetListaDistaccamenti(pinNodiNoDistaccamenti);

            try
            {
                var boxListaInterventi   = _boxRichiesteHandler.Get(pinNodi.ToHashSet());
                var boxListaMezzi        = _boxMezziHandler.Get(query.CodiceSede);
                var boxListaPersonale    = _boxPersonaleHandler.Get(query.CodiceSede);
                var listaChiamateInCorso = _listaChiamateInCorsoMarkerHandler.Get(pinNodi);
                var listaSintesi         = _sintesiRichiesteAssistenzaHandler.Handle(sintesiRichiesteAssistenzaQuery);
                var centroMappaMarker    = _centroMappaMarkerHandler.GetCentroMappaMarker(query.CodiceSede[0]);
                var listaFiltri          = filtri;
                var infoNue   = _getConteggioSchedeHandler.GetConteggio(query.CodiceSede);
                var tipologie = _tipologieQueryHandler.Get();

                var welcome = new SO115App.Models.Classi.Condivise.Welcome()
                {
                    BoxListaInterventi   = boxListaInterventi,
                    BoxListaMezzi        = boxListaMezzi,
                    BoxListaPersonale    = boxListaPersonale,
                    ListaChiamateInCorso = listaChiamateInCorso,
                    ListaSintesi         = listaSintesi,
                    CentroMappaMarker    = centroMappaMarker,
                    ListaFiltri          = listaFiltri,
                    InfoNue   = infoNue,
                    Tipologie = tipologie
                };

                Log.Debug("Fine elaborazione Welcome Handler");

                return(new WelcomeResult()
                {
                    WelcomeRes = welcome
                });
            }
            catch (System.Exception ex)
            {
                throw;
            }
        }