Пример #1
0
        /// <summary>
        /// Metodo che restituisce la lista dei filtri applicabili nella ricerca dei corrispondenti
        /// </summary>
        /// <param name="request"></param>
        /// <returns>Response</returns>
        public Services.AddressBook.GetCorrespondentFilters.GetCorrespondentFiltersResponse GetCorrespondentFilters(Services.AddressBook.GetCorrespondentFilters.GetCorrespondentFiltersRequest request)
        {
            logger.Info("BEGIN");
            Services.AddressBook.GetCorrespondentFilters.GetCorrespondentFiltersResponse response = Manager.AddressBookManager.GetCorrespondentFilters(request);

            Utils.CheckFaultException(response);
            logger.Info("END");

            return(response);
        }
Пример #2
0
        public static Services.AddressBook.GetCorrespondentFilters.GetCorrespondentFiltersResponse GetCorrespondentFilters(Services.AddressBook.GetCorrespondentFilters.GetCorrespondentFiltersRequest request)
        {
            Services.AddressBook.GetCorrespondentFilters.GetCorrespondentFiltersResponse response = new Services.AddressBook.GetCorrespondentFilters.GetCorrespondentFiltersResponse();

            try
            {
                DocsPaVO.utente.Utente     utente     = null;
                DocsPaVO.utente.InfoUtente infoUtente = null;

                //Inizio controllo autenticazione utente
                infoUtente = Utils.CheckAuthentication(request, "GetCorrespondentFilters");

                utente = BusinessLogic.Utenti.UserManager.getUtenteById(infoUtente.idPeople);
                if (utente == null)
                {
                    //Utente non trovato
                    throw new PisException("USER_NO_EXIST");
                }
                //Fine controllo autenticazione utente

                List <Domain.Filter> listaFiltri = new List <Domain.Filter>();

                listaFiltri.Add(new Domain.Filter()
                {
                    Name = "TYPE", Description = "Filtro utilizzato per reperire il tipo di corrispondente. Inserire il valore “INTERNAL” per gli interni, “EXTERNAL” per gli esterni, “GLOBAL” per tutti i corrispondenti", Type = Domain.FilterTypeEnum.String
                });
                listaFiltri.Add(new Domain.Filter()
                {
                    Name = "OFFICES", Description = "Filtro utilizzato per reperire i corrispondenti di tipo UO con valore “true”", Type = Domain.FilterTypeEnum.Bool
                });
                listaFiltri.Add(new Domain.Filter()
                {
                    Name = "USERS", Description = "Filtro utilizzato per reperire i corrispondenti di tipo Persona con valore “true”", Type = Domain.FilterTypeEnum.Bool
                });
                listaFiltri.Add(new Domain.Filter()
                {
                    Name = "ROLES", Description = "Filtro utilizzato per reperire i corrispondenti di tipo Ruoli con valore “true”", Type = Domain.FilterTypeEnum.Bool
                });
                listaFiltri.Add(new Domain.Filter()
                {
                    Name = "COMMON_ADDRESSBOOK", Description = "Filtro utilizzato per reperire i corrispondenti anche in rubrica comune con valore “true”", Type = Domain.FilterTypeEnum.Bool
                });
                listaFiltri.Add(new Domain.Filter()
                {
                    Name = "RF", Description = "Filtro utilizzato per reperire i corrispondenti anche di RF con valore “true”", Type = Domain.FilterTypeEnum.Bool
                });
                listaFiltri.Add(new Domain.Filter()
                {
                    Name = "CODE", Description = "Filtro utilizzato per la ricerca di corrispondenti dato il codice rubrica o parte di esso", Type = Domain.FilterTypeEnum.String
                });
                listaFiltri.Add(new Domain.Filter()
                {
                    Name = "EXACT_CODE", Description = "Filtro utilizzato per la ricerca di corrispondenti dato il codice rubrica esatto", Type = Domain.FilterTypeEnum.String
                });
                listaFiltri.Add(new Domain.Filter()
                {
                    Name = "DESCRIPTION", Description = "Filtro utilizzato per la ricerca di corrispondenti data la descrizione", Type = Domain.FilterTypeEnum.String
                });
                listaFiltri.Add(new Domain.Filter()
                {
                    Name = "CITY", Description = "Filtro utilizzato per la ricerca di corrispondenti data la città", Type = Domain.FilterTypeEnum.String
                });
                listaFiltri.Add(new Domain.Filter()
                {
                    Name = "LOCALITY", Description = "Filtro utilizzato per la ricerca di corrispondenti indicata al località", Type = Domain.FilterTypeEnum.String
                });
                listaFiltri.Add(new Domain.Filter()
                {
                    Name = "REGISTRY_OR_RF", Description = "Filtro utilizzato per la ricerca di corrispondenti soltanto in un determinato Registro/RF dato il codice del Registro/RF", Type = Domain.FilterTypeEnum.String
                });
                listaFiltri.Add(new Domain.Filter()
                {
                    Name = "MAIL", Description = "Filtro utilizzato per la ricerca di corrispondenti indicando l’indirizzo mail", Type = Domain.FilterTypeEnum.String
                });
                // Modifica 23-01-2013: In seguito alla distinzione dei valori di codice fiscale e partita iva, la ricerca va fatta sui due campi separatamente.
                // Quindi devono essere creati dei filtri distinti.
                //listaFiltri.Add(new Domain.Filter() { Name = "NAT", Description = "Filtro utilizzato per la ricerca di corrispondenti indicando il codice fiscale/p.iva", Type = Domain.FilterTypeEnum.String });
                listaFiltri.Add(new Domain.Filter()
                {
                    Name = "NATIONAL_IDENTIFICATION_NUMBER", Description = "Filtro utilizzato per la ricerca di corrispondenti indicando il codice fiscale", Type = Domain.FilterTypeEnum.String
                });
                listaFiltri.Add(new Domain.Filter()
                {
                    Name = "VAT_NUMBER", Description = "Filtro utilizzato per la ricerca di corrispondenti indicando la partita iva", Type = Domain.FilterTypeEnum.String
                });
                response.Filters = listaFiltri.ToArray();

                response.Success = true;
            }
            catch (PisException pisEx)
            {
                logger.ErrorFormat("PISException: {0}, {1}", pisEx.ErrorCode, pisEx.Description);
                response.Error = new Services.ResponseError
                {
                    Code        = pisEx.ErrorCode,
                    Description = pisEx.Description
                };

                response.Success = false;
            }
            catch (Exception ex)
            {
                logger.ErrorFormat("Eccezione Generica: APPLICATION_ERROR, {0}", ex.Message);
                response.Error = new Services.ResponseError
                {
                    Code        = "APPLICATION_ERROR",
                    Description = ex.Message
                };

                response.Success = false;
            }

            return(response);
        }