コード例 #1
0
        /// <summary>
        /// Consulta de naves
        /// La paginacion es el servicio
        /// </summary>
        /// <param name="filtros"></param>
        /// <returns></returns>
        public ActionResult ConsultaBandejaNotificacionIntegracion(RequestConsultaBandejaNotificacionIntegracionViewModel 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.ACUERDOCOMERCIAL.Resource.ResourceGrillas", Assembly.GetExecutingAssembly());
                    var idGrilla = rm.GetString("IdGrilla_ConsultaBandejaNotificacionIntegracion");
                    filtros = GR.Frameworks.Helper.ConvertirJsonAObjeto <RequestConsultaBandejaNotificacionIntegracionViewModel>(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 NotificacionIntegracionAgente().ListarBandejaNotificacionIntegracion(filtros);
                    listaRespuesta.NroPagina = 1;
                    actionResult             = HelperCtrl.ExportarExcel(listaRespuesta, listaRespuesta.ListaNotificacionIntegracion, filtros.paginacionDTO.IdGrilla, "CodigoNotificacion", Request.QueryString["export"], Response, "Lista_de_Notificaciones_");
                }
                else
                {
                    var listaNave = new NotificacionIntegracionAgente().ListarBandejaNotificacionIntegracion(filtros);
                    if (listaNave.Result.Satisfactorio && listaNave.ListaNotificacionIntegracion.Count > 0)
                    {
                        var totalPages = int.Parse("" + Math.Ceiling(Convert.ToDouble(listaNave.TotalRegistros) / filtros.paginacionDTO.GetNroFilas()));
                        var res        = Grid.toJSONFormat2(listaNave.ListaNotificacionIntegracion, filtros.paginacionDTO.GetNroPagina(), listaNave.TotalRegistros, totalPages, "CodigoNotificacion");
                        actionResult = Content(res);
                    }
                    else
                    {
                        actionResult = Content(Grid.toJSONFormat2(listaNave.ListaNotificacionIntegracion, 0, 0, 0, ""));
                    }
                }
            }
            catch (Exception ex)
            {
                HelperCtrl.GrabarLog(ex, "", PoliticaExcepcion.Win);
            }
            finally
            {
                manejadorLogEventos.RegistrarTiempoEjecucion("", HelperCtrl.ObtenerAtributosManejadorEventos(ControllerContext.ToString(), MethodBase.GetCurrentMethod().Name, HelperCtrl.ObtenerUsuario()));
            }
            return(actionResult);
        }
コード例 #2
0
        public ResponseConsultaBandejaNotificacionIntegracionViewModel ListarBandejaNotificacionIntegracion(RequestConsultaBandejaNotificacionIntegracionViewModel request)
        {
            var responseConsultaNotificacionIntegracion = new ResponseConsultaBandejaNotificacionIntegracionViewModel();

            try
            {
                var requestAgente = new ConsultaBandejaNotificacionIntegracionRequestDTO
                {
                    CodigoEstado          = request.filtro.CodigoEstado,
                    CodigoLinea           = request.filtro.CodigoLinea,
                    Nombre                = request.filtro.Nombre,
                    NroRegistrosPorPagina = request.paginacionDTO.rows,
                    OrdenCampo            = request.paginacionDTO.sidx,
                    OrdenOrientacion      = request.paginacionDTO.sord,
                    PaginaActual          = request.paginacionDTO.page
                };

                var listaNotificacionIntegracion = new TransmisionesProxyrest().ConsultarBandejaNotificacionIntegracion(requestAgente);

                var lstNotificacionIntegracion = listaNotificacionIntegracion.ListaBandejaNotificacionIntegracion.Select(item =>
                                                                                                                         new ListaBandejaNotificacionIntegracionViewModel
                {
                    CodigoEstado           = item.CodigoEstado,
                    Asunto                 = item.Asunto,
                    CodigoLinea            = item.CodigoLinea,
                    CodigoNotificacion     = item.CodigoNotificacion,
                    ConCopia               = item.ConCopia,
                    DescripcionEstado      = item.DescripcionEstado,
                    DescripcionLinea       = item.DescripcionLinea,
                    Destinatario           = item.Destinatario,
                    Nombre                 = item.Nombre,
                    FechaHoraActualizacion = string.Format("{0:dd/MM/yyyy H:mm:ss}", item.FechaHoraActualizacion),
                    FechaHoraCreacion      = string.Format("{0:dd/MM/yyyy H:mm:ss}", item.FechaHoraCreacion),
                    UsuarioActualizacion   = item.UsuarioActualizacion,
                    UsuarioCreacion        = item.UsuarioCreacion
                }).ToList();

                responseConsultaNotificacionIntegracion = new ResponseConsultaBandejaNotificacionIntegracionViewModel
                {
                    Result          = listaNotificacionIntegracion.Result,
                    TotalRegistros  = listaNotificacionIntegracion.TotalRegistros,
                    CantidadPaginas = listaNotificacionIntegracion.CantidadPaginas,
                    ListaNotificacionIntegracion = lstNotificacionIntegracion
                };
            }
            catch (Exception ex)
            {
                responseConsultaNotificacionIntegracion.Result = new Result {
                    Satisfactorio = false
                };
                ManejadorExcepciones.PublicarExcepcion(ex, PoliticaExcepcion.AgenteServicios);
            }
            return(responseConsultaNotificacionIntegracion);
        }