예제 #1
0
        public List<entradassalidasDTO> Getultimas()
        {
            using (ctx = new tvEntities())
            {
                List<entradassalidasDTO> lrES = new List<entradassalidasDTO>();
                List<entradassalidas> lES = ctx.entradassalidas.OrderByDescending(t => t.Fecha).ToList();
                if (lES.Count() > 10)
                {
                    for (int i = 0; i <= 9; i++)
                    {
                        entradassalidasDTO Es = new entradassalidasDTO();
                        Mapper.Map(lES[i], Es);

                        Es.HoraEvento = Es.Fecha.TimeOfDay.ToString();
                        Es.FechaEvento = Es.Fecha.Day + "/" + Es.Fecha.Month + "/" + Es.Fecha.Year;
                        lrES.Add(Es);
                    }
                }
                else
                {
                    foreach (entradassalidas item in lES)
                    {
                        entradassalidasDTO Es = new entradassalidasDTO();
                        Mapper.Map(item, Es);

                        Es.HoraEvento = Es.Fecha.TimeOfDay.ToString();
                        Es.FechaEvento = Es.Fecha.Day + "/" + Es.Fecha.Month + "/" + Es.Fecha.Year;

                        lrES.Add(Es);
                    }
                }
                return lrES;
            }
        }
예제 #2
0
        public List<entradassalidasDTO> getDetallesRecorridos(DateTime fecha,int grupo,string placa)
        {
            fecha = fecha.Date;
               DateTime fechaFin = new DateTime(fecha.Year, fecha.Month, fecha.Day, 23, 59, 59);
               List<entradassalidasDTO> lEsDto = new List<entradassalidasDTO>();
               entradassalidasDTO eSDto;

               using (ctx = new tvEntities()) {

               List<entradassalidas> lEs = ctx.entradassalidas.OrderBy(t=>t.Fecha).Where(t => t.Fecha > fecha && t.Fecha < fechaFin && t.Placa == placa).ToList();
               //rutagrupo rG = ctx.rutagrupo.Where(t=> t.Grupo==grupo).FirstOrDefault().rutas;
               rutas ruta = ctx.rutagrupo.Where(t => t.Grupo == grupo).FirstOrDefault().rutas;

               eSDto = new entradassalidasDTO();
               foreach (entradassalidas eS in lEs)
               {
                   if (eS.Estado == "S")
                   {
                       eSDto.Fecha = eS.Fecha;
                       eSDto.HoraIni = (eS.Fecha.TimeOfDay).ToString();
                   }
                   else
                   {
                       eSDto.FechaFin = eS.Fecha;
                       eSDto.HoraFin = (eS.Fecha.TimeOfDay).ToString();
                       eSDto.Tiempo =Convert.ToInt32((eSDto.FechaFin - eSDto.Fecha).TotalMinutes);
                       eSDto.Coleo =(eSDto.Tiempo - Convert.ToInt32(ruta.TiempoRecorrido.Value));
                       lEsDto.Add(eSDto);

                       eSDto = new entradassalidasDTO();
                   }
               }

               return lEsDto;
               }
        }
        public List<historialmovimientoDTO> get(entradassalidasDTO eSDto)
        {
            //fecha = fecha.Date;
            //DateTime fechaFin = new DateTime(fecha.Year, fecha.Month, fecha.Day, 23, 59, 59);
            List<historialmovimientoDTO> lHmDto ;
            historialmovimientoDTO hMDto;

            using(ctx=new tvEntities()){
                List<historialmovimiento> lHm = ctx.historialmovimiento
                    .OrderBy(t => t.Fecha)
                    .Where(t => t.Fecha>=eSDto.Fecha && t.Fecha<=eSDto.FechaFin && t.Placa==eSDto.Placa)
                    .ToList();

                detallesplanilla dP = ctx.detallesplanilla
                    .Where(t => t.planillacontrol.Fecha == eSDto.Fecha.Date && t.PlacaBus == eSDto.Placa)
                    .FirstOrDefault();

                if (lHm.Count > 0)
                {
                    lHmDto = new List<historialmovimientoDTO>();
                    foreach (historialmovimiento hM in lHm)
                    {
                        hMDto = new historialmovimientoDTO();
                        Mapper.Map(hM, hMDto);
                        hMDto.Ruta = dP.Ruta;
                        lHmDto.Add(hMDto);
                    }

                    return lHmDto;
                }
                else
                {
                    return null;
                }
            }
        }
 public objRes Insert(entradassalidasDTO Reg)
 {
     mEntradasSalidas objES = new mEntradasSalidas();
     return objES.Insert(Reg);
 }
예제 #5
0
        public objRes Insert(entradassalidasDTO Reg)
        {
            using (ctx = new tvEntities())
            {
                objRes Respuesta = new objRes();
                try
                {
                    buses Bus = ctx.buses.Where(t => t.Placa == Reg.Placa).FirstOrDefault();
                    if (Bus != null)
                    {
                        entradassalidas ESOld = ctx.entradassalidas.Where(t => t.Placa == Reg.Placa).OrderByDescending(t => t.Fecha).FirstOrDefault();
                        if (ESOld == null)
                        {
                            entradassalidas ES = new entradassalidas();
                            ES.Fecha = DateTime.Now;
                            ES.Estado = "S";
                            ES.Placa = Reg.Placa;
                            ctx.entradassalidas.Add(ES);
                            ctx.SaveChanges();
                            Respuesta.Error = false;
                            Respuesta.Mensaje = "Operacion realizada satisfactoriamente!!!";
                            return Respuesta;
                        }
                        else
                        {
                            DateTime FechaActual = DateTime.Now;
                            TimeSpan Diferencia = FechaActual - ESOld.Fecha;
                            if (Diferencia.TotalMinutes < 10)
                            {
                                Respuesta.Error = true;
                                Respuesta.Mensaje = "Este bus ya tiene un evento registrado en menos de 10 minutos, por favor verifique o espere!!!";
                                return Respuesta;
                            }
                            else
                            {
                                entradassalidas ES = new entradassalidas();
                                ES.Fecha = FechaActual;
                                if (ESOld.Estado == "E") ES.Estado = "S";
                                else ES.Estado = "E";
                                ES.Placa = Reg.Placa;
                                ctx.entradassalidas.Add(ES);
                                ctx.SaveChanges();
                                Respuesta.Error = false;
                                Respuesta.Mensaje = "Operacion realizada satisfactoriamente!!!";
                                return Respuesta;
                            }

                        }
                    }
                    else
                    {
                        Respuesta.Error = true;
                        Respuesta.Mensaje = "No existe un bus registrado con placa: " + Reg.Placa;
                        return Respuesta;
                    }
                }
                catch (Exception e)
                {
                    Respuesta.Error = true;
                    Respuesta.Mensaje = e.Message;
                    return Respuesta;
                }
            }
        }
        public List<entradassalidasDTO> getDetallesRecorridos(DateTime fecha, string Vial)
        {
            fecha = fecha.Date;
            DateTime fechaFin = new DateTime(fecha.Year, fecha.Month, fecha.Day, 23, 59, 59);
            List<entradassalidasDTO> lEsDto;
            entradassalidasDTO eSDto;

            using (ctx = new tvEntities())
            {

                List<entradassalidas> lEs = ctx.entradassalidas
                    .OrderBy(t => t.Fecha)
                    .Where(t => t.Fecha > fecha && t.Fecha < fechaFin && t.buses.Vial == Vial)
                    .ToList();

                if (lEs.Count > 0)
                {
                    lEsDto = new List<entradassalidasDTO>();
                    eSDto = new entradassalidasDTO();

                    foreach (entradassalidas eS in lEs)
                    {
                        if (eS.Estado == "S")
                        {
                            eSDto.Fecha = eS.Fecha;
                        }
                        else
                        {
                            eSDto.Placa = eS.Placa;
                            eSDto.FechaFin = eS.Fecha;
                            lEsDto.Add(eSDto);
                            eSDto = new entradassalidasDTO();
                        }
                    }

                    return lEsDto;
                }
                else
                {
                    return null;
                }

            }
        }
 public List<historialmovimientoDTO> get(entradassalidasDTO eSDto)
 {
     return (new mHistorialMovimiento()).get(eSDto);
 }