示例#1
0
        private void SetInitialFilterValues()
        {
            GetQueryStringParameters();

            dtDesde.SelectedDate   = InitialDate.ToDisplayDateTime();
            dtHasta.SelectedDate   = FinalDate.ToDisplayDateTime();
            tpStopped.SelectedTime = Stopped;
            npDistance.Number      = Distance;
            npStoppedEvent.Number  = StoppedEvent;
        }
示例#2
0
        protected void BtnPosicionarTicketClick(object sender, EventArgs e)
        {
            if (lstTicket.SelectedValue.Equals(""))
            {
                infoLabel1.Text = "No se ha seleccionado ningún Ticket.";
                return;
            }

            var split   = lstTicket.SelectedValue.Split('-');
            var prefijo = split[0];
            var id      = Convert.ToInt32((string)split[1]);

            switch (prefijo)
            {
            case "T":
                var ticket = DAOFactory.TicketDAO.FindById(id);

                var detalles = ticket.Detalles.Cast <DetalleTicket>()
                               .Where(d => d.Automatico.HasValue)
                               .OrderBy(t => t.Automatico.Value);

                var primerDetalle = detalles.FirstOrDefault();
                var ultimoDetalle = detalles.LastOrDefault();

                InitialDate = primerDetalle != null ? primerDetalle.Automatico.Value : DateTime.UtcNow.Date.ToDataBaseDateTime();

                if (ticket.Estado == Logictracker.Types.BusinessObjects.Tickets.Ticket.Estados.EnCurso)
                {
                    FinalDate = DateTime.UtcNow;
                }
                else
                {
                    FinalDate = ultimoDetalle != null ? ultimoDetalle.Automatico.Value : DateTime.UtcNow.Date.AddHours(23).AddMinutes(59).ToDataBaseDateTime();
                }

                dtDesde.SelectedDate = InitialDate.ToDisplayDateTime();
                dtHasta.SelectedDate = FinalDate.ToDisplayDateTime();

                if (ticket.Vehiculo != null)
                {
                    Mobile = ticket.Vehiculo.Id;
                }
                break;

            case "V":
                var viaje = DAOFactory.ViajeDistribucionDAO.FindById(id);
                InitialDate = viaje.InicioReal.HasValue
                                     ? viaje.InicioReal.Value
                                     : viaje.Inicio;
                FinalDate = viaje.Fin;

                dtDesde.SelectedDate = InitialDate.ToDisplayDateTime();
                dtHasta.SelectedDate = FinalDate.ToDisplayDateTime();

                if (viaje.Vehiculo != null)
                {
                    Mobile = viaje.Vehiculo.Id;
                }
                break;
            }

            var mensajes = DAOFactory.MensajeDAO.FindAll().Where(m => m.TipoMensaje != null && m.TipoMensaje.DeEstadoLogistico).ToList();
            var msj      = DAOFactory.MensajeDAO.FindAll().Where(m => m.Codigo == MessageCode.EstadoLogisticoCumplido.GetMessageCode() ||
                                                                 m.Codigo == MessageCode.EstadoLogisticoCumplidoEntrada.GetMessageCode() ||
                                                                 m.Codigo == MessageCode.EstadoLogisticoCumplidoManual.GetMessageCode() ||
                                                                 m.Codigo == MessageCode.EstadoLogisticoCumplidoManualRealizado.GetMessageCode() ||
                                                                 m.Codigo == MessageCode.EstadoLogisticoCumplidoManualNoRealizado.GetMessageCode() ||
                                                                 m.Codigo == MessageCode.EstadoLogisticoCumplidoSalida.GetMessageCode() ||
                                                                 m.Codigo == MessageCode.CicloLogisticoIniciado.GetMessageCode() ||
                                                                 m.Codigo == MessageCode.CicloLogisticoCerrado.GetMessageCode()).ToList();

            mensajes.AddRange(msj);

            lbMessages.SetSelectedValues(mensajes.Select(m => m.Codigo));

            Distrito     = ddlDistrito.Selected;
            Location     = ddlPlanta.Selected;
            Stopped      = tpStopped.SelectedTime;
            Distance     = npDistance.Number;
            StoppedEvent = npStoppedEvent.Number;
            MessageType  = ddlTipo.Selected;
            PoisTypesIds = lbPuntosDeInteres.SelectedValues;
            MessagesIds  = lbMessages.SelectedStringValues;

            SearchPositions();
        }