Esempio n. 1
0
 public void DeleteDetalle(int index)
 {
     if (index >= 0 && index < Detalles.Count)
     {
         Detalles.RemoveAt(index);
     }
 }
Esempio n. 2
0
 private void Removerbutton_Click(object sender, EventArgs e)
 {
     if (MydataGridView.Rows.Count > 0 && MydataGridView.CurrentRow != null)
     {
         Detalles.RemoveAt(MydataGridView.CurrentRow.Index);
         CargarGrid();
     }
 }
Esempio n. 3
0
        public virtual void AgregarBaseFinal()
        {
            for (var i = 1; i < Detalles.Count; i++)
            {
                if (Detalles[i].Descripcion.Equals(Detalles[0].Descripcion))
                {
                    Detalles.RemoveAt(i);
                }
            }

            var baseFinal = new EntregaDistribucion()
            {
                Linea       = Detalles[0].Linea,
                Descripcion = Detalles[0].Descripcion,
                Estado      = EntregaDistribucion.Estados.Pendiente,
                Orden       = Detalles.Count,
                Viaje       = Detalles[0].Viaje
            };

            var ultimo     = Detalles.Last().ReferenciaGeografica;
            var origen     = new LatLon(ultimo.Latitude, ultimo.Longitude);
            var destino    = new LatLon(baseFinal.ReferenciaGeografica.Latitude, baseFinal.ReferenciaGeografica.Longitude);
            var directions = GoogleDirections.GetDirections(origen, destino, GoogleDirections.Modes.Driving, string.Empty, null);

            if (directions != null)
            {
                var distancia = directions.Distance / 1000.0;
                var duracion  = directions.Duration;
                var fecha     = Detalles.Last().Programado.Add(duracion);

                baseFinal.Programado      = fecha;
                baseFinal.ProgramadoHasta = fecha;
                baseFinal.KmCalculado     = distancia;
            }

            Detalles.Add(baseFinal);
        }