/// <summary>
        /// Permite la búsqueda de Responsablees
        /// </summary>
        /// <param name="filtro">Filtro de búsqueda</param>
        /// <returns>Lista de Responsablees</returns>
        public ProcessResult <List <ResponsableResponse> > BuscarResponsable(ResponsableRequest filtro)
        {
            ProcessResult <List <ResponsableResponse> > resultado = new ProcessResult <List <ResponsableResponse> >();

            try
            {
                List <ResponsableLogic> listaResponsable = ResponsableLogicRepository.BuscarResponsable(
                    filtro.CodigoResponsable,
                    filtro.Nombres,
                    filtro.ApellidoPaterno,
                    filtro.ApellidoMaterno,
                    filtro.NombreCompleto,
                    filtro.CodigoGenero,
                    filtro.CodigoCargo,
                    filtro.CorreoElectronico,
                    filtro.CodigoTipoDocumento,
                    filtro.NumeroDocumento,
                    Guid.Parse(DatosConstantes.Empresa.CodigoElectroPeru),
                    Guid.Parse(DatosConstantes.Sistema.CodigoSGI),
                    filtro.CodigoIdioma,
                    filtro.EstadoRegistro,// = filtro.EstadoRegistroDescripcion == DatosConstantes.ParametrosEstadoRegistro.Activo ? DatosConstantes.EstadoRegistro.Activo : (filtro.EstadoRegistroDescripcion == DatosConstantes.ParametrosEstadoRegistro.Inactivo ? DatosConstantes.EstadoRegistro.Inactivo : null),
                    filtro.NumeroPagina,
                    filtro.RegistrosPagina);

                resultado.Result = new List <ResponsableResponse>();

                foreach (ResponsableLogic ResponsableLogic in listaResponsable)
                {
                    ResponsableResponse ResponsableResponse = ResponsableAdapter.ObtenerResponsablePaginado(ResponsableLogic);
                    resultado.Result.Add(ResponsableResponse);
                }
            }
            catch (Exception e)
            {
                resultado.IsSuccess = false;
                resultado.Exception = new ApplicationLayerException <ResponsableService>(e.Message);
            }

            return(resultado);
        }
        /// <summary>
        /// Realiza la adaptación de campos para la búsqueda
        /// </summary>
        /// <param name="ResponsableLogic">Entidad Lógica de Área</param>
        /// <returns>Objeto Área Response con los datos de búsqueda</returns>
        public static ResponsableResponse ObtenerResponsablePaginado(ResponsableLogic responsableLogic)
        {
            ResponsableResponse responsableResponse = new ResponsableResponse();

            responsableResponse.CodigoResponsable         = responsableLogic.CodigoResponsable;
            responsableResponse.Nombres                   = responsableLogic.Nombres;
            responsableResponse.ApellidoPaterno           = responsableLogic.ApellidoPaterno;
            responsableResponse.ApellidoMaterno           = responsableLogic.ApellidoMaterno;
            responsableResponse.NombreCompleto            = responsableLogic.NombreCompleto;
            responsableResponse.CodigoGenero              = responsableLogic.CodigoGenero;
            responsableResponse.NombreGenero              = responsableLogic.NombreGenero;
            responsableResponse.CodigoCargo               = responsableLogic.CodigoCargo;
            responsableResponse.NombreCargo               = responsableLogic.NombreCargo;
            responsableResponse.CorreoElectronico         = responsableLogic.CorreoElectronico;
            responsableResponse.CodigoTipoDocumento       = responsableLogic.CodigoTipoDocumento;
            responsableResponse.NombreTipoDocumento       = responsableLogic.NombreTipoDocumento;
            responsableResponse.NumeroDocumento           = responsableLogic.NumeroDocumento;
            responsableResponse.EstadoRegistroDescripcion = responsableLogic.EstadoRegistroDescripcion;
            responsableResponse.EstadoRegistro            = responsableLogic.EstadoRegistro;
            responsableResponse.NumeroFila                = responsableLogic.NumeroRegistro;
            responsableResponse.FilasTotal                = responsableLogic.TotalRegistro;

            return(responsableResponse);
        }