public ActionResult BusquedaPersona(RequestBusquedaPersonaViewModel filtros, string requestExportar)
        {
            ActionResult actionResult        = null;
            var          manejadorLogEventos = new ManejadorLogEventos();

            try
            {
                if (ModelState.IsValid)
                {
                    if (!string.IsNullOrEmpty(Request.QueryString["export"]))
                    {
                        var rm       = new ResourceManager("TRAMARSA.AGMA.Persona.Resource.ResourceGrillas", Assembly.GetExecutingAssembly());
                        var idGrilla = rm.GetString("IdGrilla_ConsultaPersona");
                        filtros = GR.Frameworks.Helper.ConvertirJsonAObjeto <RequestBusquedaPersonaViewModel>(requestExportar);
                        if (idGrilla != null)
                        {
                            filtros.paginacionDTO.IdGrilla = new Guid(idGrilla);
                        }
                        filtros.paginacionDTO.sord = new HelperDataScriptor().ObtenerCampoOrdenDefault(filtros.paginacionDTO.IdGrilla);
                        filtros.paginacionDTO.rows = 9999;
                        filtros.paginacionDTO.page = 1;
                        var listaRespuesta = new PersonaAgente().BusquedaPersona(filtros);
                        listaRespuesta.NroPagina = 1;
                        actionResult             = HelperCtrl.ExportarExcel(listaRespuesta, listaRespuesta.ListaPersona, filtros.paginacionDTO.IdGrilla, "CodigoPersona", Request.QueryString["export"], Response, "Lista_de_persona");
                    }
                    else
                    {
                        var listaPersona = new PersonaAgente().BusquedaPersona(filtros);
                        if (listaPersona.Result.Satisfactorio)
                        {
                            var totalPages = int.Parse("" + Math.Ceiling(Convert.ToDouble(listaPersona.TotalRegistros) / filtros.paginacionDTO.GetNroFilas()));
                            var res        = Grid.toJSONFormat2(listaPersona.ListaPersona, filtros.paginacionDTO.GetNroPagina(), listaPersona.TotalRegistros, totalPages, "CodigoPersona");
                            actionResult = Content(res);
                        }
                        else
                        {
                            actionResult = Content(Grid.toJSONFormat2(listaPersona.ListaPersona, 0, 0, 0));
                        }
                    }
                }
                else
                {
                    var cadena  = string.Empty;
                    var objetos = GR.Frameworks.Helper.GetErrorsFromModelState(ref cadena, ModelState);
                    actionResult = Content(Grid.emptyStrJSON(cadena, objetos));
                }
            }
            catch (Exception ex)
            {
                HelperCtrl.GrabarLog(ex, "", PoliticaExcepcion.Win);
            }
            finally
            {
                manejadorLogEventos.RegistrarTiempoEjecucion("",
                                                             HelperCtrl.ObtenerAtributosManejadorEventos(ControllerContext.ToString(),
                                                                                                         MethodBase.GetCurrentMethod().Name, HelperCtrl.ObtenerUsuario()));
            }
            return(actionResult);
        }
Esempio n. 2
0
        public ResponseBusquedaPersonaViewModel BusquedaPersona(RequestBusquedaPersonaViewModel request)
        {
            var responseViewModel = new ResponseBusquedaPersonaViewModel();

            try
            {
                var requestAgente = new RequestBusquedaPersona
                {
                    //CodigoPersona = request.filtro.CodigoPersona != null ? Convert.ToInt64(request.filtro.CodigoPersona) : 0,
                    CodigoPersona          = request.filtro.CodigoPersona,
                    RazonSocialPersona     = request.filtro.RazonSocialPersona,
                    NumeroDocumentoPersona = request.filtro.NumeroDocumentoPersona,
                    NroRegistrosPorPagina  = request.paginacionDTO.rows,
                    OrdenCampo             = request.paginacionDTO.sidx,
                    OrdenOrientacion       = request.paginacionDTO.sord,
                    PaginaActual           = request.paginacionDTO.page
                };

                var listaPersona = new TransmisionesProxyrest().BusquedaPersona(requestAgente);
                if (listaPersona.ListaPersona.Count > 0)
                {
                    responseViewModel.CantidadPaginas = listaPersona.CantidadPaginas;
                    responseViewModel.TotalRegistros  = listaPersona.TotalRegistros;
                    responseViewModel.NroPagina       = listaPersona.NroPagina;
                    responseViewModel.Result          = listaPersona.Result;
                    foreach (var item in listaPersona.ListaPersona)
                    {
                        var objet = new ListaPersonaViewModel();
                        objet.CodigoPersona          = item.CodigoPersona;
                        objet.RazonSocialPersona     = item.RazonSocialPersona;
                        objet.NumeroDocumentoPersona = item.NumeroDocumentoPersona;
                        objet.NombreTipoDocumento    = item.NombreTipoDocumento;
                        objet.NombrePais             = item.NombrePais;
                        objet.FechaHoraCreacion      = string.Format("{0:dd/MM/yyyy hh:mm tt}", item.FechaHoraCreacion);
                        objet.UsuarioCreacion        = item.UsuarioCreacion;
                        objet.FechaHoraActualizacion = string.Format("{0:dd/MM/yyyy hh:mm tt}", item.FechaHoraActualizacion);
                        objet.UsuarioActualizacion   = item.UsuarioActualizacion;
                        responseViewModel.ListaPersona.Add(objet);
                    }
                }
            }
            catch (Exception ex)
            {
                responseViewModel.Result = new Result {
                    Satisfactorio = false
                };
                ManejadorExcepciones.PublicarExcepcion(ex, PoliticaExcepcion.AgenteServicios);
            }
            return(responseViewModel);
        }