Exemplo n.º 1
0
        /// <summary>
        /// this method modifies a route object into the database
        /// </summary>
        public void ModificarDatos(Ruta ruta)
        {
            var sql = "UPDATE rutas SET pais_origen = '" + ruta.Pais_Origen + "', pais_destino = '" + ruta.Pais_Destino + "', duracion = '" +
                      ruta.Duracion + "' WHERE id = '" + ruta.Identificador + "'";

            _dataAccessBase.ExecuteNonQuery(sql);
        }
Exemplo n.º 2
0
        public async Task <ActionResult> Modify(Ruta rutaInput)
        {
            Ruta ruta = null;

            try
            {
                ruta = await _repositoryRutes.Update(rutaInput);
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }

            if (rutaInput.idCim != null)
            {
                SendMessageToMicroserveiCims("addRuta", rutaInput.idCim);
            }

            if (rutaInput.idRefugi != null)
            {
                SendMessageToMicroServeiRefugis("addRuta", ruta.idRefugi, ruta.id);
            }

            return(CreatedAtAction("Search", new { id = ruta.id }, ruta));
        }
Exemplo n.º 3
0
        // GET: Ruta/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Ruta ruta = db.Ruta.Find(id);

            if (ruta == null)
            {
                return(HttpNotFound());
            }

            double axx = ruta.Ax;

            ViewBag.kordAx = axx;
            double ayy = ruta.Ay;

            ViewBag.kordAy = ayy;
            double bxx = ruta.Bx;

            ViewBag.kordBx = bxx;
            double byy = ruta.By;

            ViewBag.kordBy = byy;
            return(View(db.Ruta.ToList()));
        }
Exemplo n.º 4
0
        //Metodos para el mantenimiento de ruta
        public static void agregarruta()
        {
            try
            {
                Console.Clear();
                Ruta addrut = new Ruta();
                Console.Clear();
                Console.Write("Número de ruta: ");
                addrut.id_ruta = int.Parse(Console.ReadLine());
                Console.Write("Ciudad de origen: ");
                addrut.city_origin = Console.ReadLine();
                Console.Write("Ciudad de destino: ");
                addrut.city_destiny = Console.ReadLine();
                Console.Write("Costo de la ruta: ");
                addrut.cost = Convert.ToDouble(Console.ReadLine());
                ruta.Add(addrut);

                mainmenu();
            }
            catch (Exception mistake)
            {
                Console.WriteLine(mistake.Message);
                Console.ReadKey();
                mainmenu();
            }
        }
Exemplo n.º 5
0
        public async Task <IActionResult> PutRuta([FromRoute] int id, [FromBody] Ruta ruta)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != ruta.id_ruta)
            {
                return(BadRequest());
            }

            _context.Entry(ruta).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!RutaExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
        public async Task <IActionResult> Edit(int id, [Bind("ID,nazivRute")] Ruta ruta)
        {
            if (id != ruta.ID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(ruta);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!RutaExists(ruta.ID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(ruta));
        }
Exemplo n.º 7
0
        public void Update(Ruta ruta)
        {
            try
            {
                var rutaDb = _crudRuta.Retrieve <Ruta>(ruta);
                if (rutaDb == null)
                {
                    throw new BusinessException(213);
                }

                if (ruta.Estado == null)
                {
                    ruta.Estado = rutaDb.Estado;
                }

                _crudRuta.Update(ruta);

                _crudHorario.Delete(new Horario {
                    RutaId = ruta.Id
                });

                foreach (var horario in ruta.Horarios)
                {
                    horario.RutaId = ruta.Id;
                    _crudHorario.Create(horario);
                }
            }
            catch (Exception e)
            {
                ExceptionManager.GetInstance().Process(e);
            }
        }
Exemplo n.º 8
0
            public static List <Ruta> ObtenerRutas(int IdCelula)
            {
                List <Ruta>   listaRuta  = new List <Ruta>();
                SqlConnection cnnSigamet = null;

                try
                {
                    cnnSigamet = SigaMetClasses.DataLayer.Conexion;
                    cnnSigamet.Open();
                    SqlCommand cmd = cnnSigamet.CreateCommand();
                    cmd.CommandText = "spSTObtenerRutasPorCelula";
                    cmd.CommandType = System.Data.CommandType.StoredProcedure;
                    cmd.Parameters.Add("@IdCelula", SqlDbType.Int).Value = IdCelula;

                    SqlDataReader reader = cmd.ExecuteReader();
                    while (reader.Read())
                    {
                        Ruta ruta = new Ruta();
                        ruta.IdRuta      = int.Parse(reader["Ruta"].ToString());
                        ruta.Descripcion = reader["Descripcion"].ToString();
                        listaRuta.Add(ruta);
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Error al consultar Rutas:" + ex.Message);
                }
                finally
                {
                    cnnSigamet.Close();
                }
                return(listaRuta);
            }
        public Operacion DesAsociarAcuerdoComercialDeRuta(Ruta ruta)
        {
            Operacion op;

            try
            {
                DbParameter[] parameters =
                {
                    new OAParameter
                    {
                        ParameterName = "@CODE_ROUTE",
                        Value         = ruta.CODE_ROUTE
                    }
                };
                op = BaseDeDatosServicio.ExecuteQuery <Operacion>("SWIFT_SP_DISASSOCIATE_ROUTE_FROM_TRADE_AGREEMENT", CommandType.StoredProcedure, false, parameters)[0];
                BaseDeDatosServicio.Commit();
            }
            catch (Exception ex)
            {
                BaseDeDatosServicio.Rollback();
                op = new Operacion
                {
                    Resultado = Tipos.ResultadoOperacionTipo.Error,
                    Mensaje   = ex.Message
                };
            }

            return(op);
        }
Exemplo n.º 10
0
        // GET: Rutas/Details/5
        public ActionResult Details(int?id, int?page)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Ruta ruta = db.Rutas.Find(id);

            if (ruta == null)
            {
                return(HttpNotFound());
            }
            //return View(ruta);

            var clientes = from c in ruta.Clientes select c;

            clientes = clientes.OrderBy(c => c.Codigo);

            int pageSize   = 10;
            int pageNumber = (page ?? 1); //if null... set 1

            ViewBag.Ruta       = ruta.Nombre;
            ViewBag.RutaId     = id;
            ViewBag.NoClientes = clientes.Count();
            return(View(ruta.Clientes.ToPagedList(pageNumber, pageSize)));
        }
Exemplo n.º 11
0
        public void GenerateRecorrido(Ruta ruta, TimeSpan hora)
        {
            try
            {
                Console.WriteLine($"Terminal: {_config.Terminal} -> " + $"Ruta {ruta.RutaName} : recorrido: {new DateTime(hora.Ticks).ToString("HH:mm")}");
                var buses    = _busList.Where(b => b.EmpresaId == ruta.EmpresaId).ToList();
                var choferes = _choferList.Where(c => c.Empresa == ruta.EmpresaId).ToList();

                var recorrido = new Recorrido
                {
                    RutaId       = ruta.Id,
                    Horario      = hora,
                    ChoferCedula = choferes[new Random().Next(choferes.Count)].Cedula,
                    BusPlaca     = buses[new Random().Next(buses.Count)].Id
                };
                ThreadPool.QueueUserWorkItem(_ => RunRecorrido(ruta, recorrido));
            }
            catch (Exception e)
            {
                Console.WriteLine($"Terminal: {_config.Terminal} -> GenRecorrido: " + e.Message);
            }
            finally
            {
                _resetEvent.Set();
            }
        }
Exemplo n.º 12
0
        public void ModificarRuta(Ruta Ruta, string Conexion, ref int verificador)
        {
            try
            {
                CapaDatos.CD_Datos CapaDatos = new CapaDatos.CD_Datos(Conexion);

                string[] Parametros =
                {
                    "@Id_Emp",
                    "@Id_Cd",
                    "@Id_Rut",
                    "@Id_Rut_Ant",
                    "@Rut_Descripcion",
                    "@Rut_Activo"
                };
                object[] Valores =
                {
                    Ruta.Id_Emp,
                    Ruta.Id_Cd,
                    Ruta.Id_Rut,
                    Ruta.Id_Rut_Ant,
                    Ruta.Rut_Descripcion,
                    Ruta.Rut_Activo
                };

                SqlCommand sqlcmd = CapaDatos.GenerarSqlCommand("spCatRutas_Modificar", ref verificador, Parametros, Valores);
                CapaDatos.LimpiarSqlcommand(ref sqlcmd);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Exemplo n.º 13
0
        private void buttonGuardar_Click(object sender, EventArgs e)
        {
            if (UtilidadesFormularios.Validar(new List <TextBox>()
            {
                textBoxLugar
            }, null, new List <ComboBox>()
            {
                comboBoxDias
            }))
            {
                int id = 0;
                int.TryParse(maskedTextBoxId.Text, out id);
                Ruta ruta = new Ruta(id, textBoxLugar.Text, comboBoxDias.SelectedIndex);

                using (var db = new Repositorio <Ruta>())
                {
                    if (RutasBLL.Guardar(ruta))
                    {
                        LlenarFormulario(RutasBLL.rutaReturned);
                    }
                }
            }
            else
            {
                toolStripLabelHaciendo.Text = "Datos incorrectos";
            }
        }
Exemplo n.º 14
0
        public static string Parse(string path, Ruta RutaObj)
        {
            Ruta ruta = RutaObj;

            string content = File.ReadAllText(path)
                             .Replace("{{customer}}", ruta.codigo)
                             .Replace("{{address}}", ruta.codigovendedor)
                             .Replace("{{email}}", ruta.desdedos)
                             .Replace("{{numberInvoice}}", ruta.hastados)
                             .Replace("{{date}}", ruta.nombre)
                             .Replace("{{dueDate}}", ruta.vendedor.nombre);

            StringBuilder sb = new StringBuilder();

            /*foreach (var invoiceItem in invoice.InvoiceDetails)
             * {
             *  sb.Append("<tr>");
             *  sb.Append($"<td class='no'>{invoiceItem.InvoiceNumber}</td>");
             *  sb.Append($"<td class='desc'><h3>{invoiceItem.Product}</h3>{invoiceItem.Description}</td>");
             *  sb.Append($"<td class='unit'>${invoiceItem.Price}</td>");
             *  sb.Append($"<td class='qty'>{invoiceItem.Quantity}</td>");
             *  sb.Append($"<td class='total'>${invoiceItem.Total}</td>");
             *  sb.Append("</tr>");
             * }*/

            /*content = content.Replace("{{invoiceDetails}}", sb.ToString())
             *  .Replace("{{subTotal}}", invoice.SubTotal.ToString("C"))
             *  .Replace("{{tax}}", invoice.Tax.ToString())
             *  .Replace("{{total}}", invoice.Total.ToString("C"));*/

            return(content);
        }
Exemplo n.º 15
0
        public IHttpActionResult PutRuta(int id, Ruta ruta)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != ruta.Id)
            {
                return(BadRequest());
            }

            db.Entry(ruta).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!RutaExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Exemplo n.º 16
0
        public async Task <ActionResult> Add(RutaPostInput rutaInput)
        {
            Ruta ruta = null;

            try
            {
                ruta = await _repositoryRutes.Add(rutaInput);
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }

            if (rutaInput.IdCim != null)
            {
                SendMessageToMicroserveiCims("addRuta", rutaInput.IdCim);
            }

            if (rutaInput.IdRefugi != null)
            {
                SendMessageToMicroServeiRefugis("addRuta", ruta.idRefugi, ruta.id);
            }

            return(Ok(ruta));
        }
Exemplo n.º 17
0
        /// <summary>
        /// Allows registering a new Route
        /// </summary>
        /// <param name="u">Object type Ruta</param>
        public void registrarRuta(Ruta u)
        {
            if (exiteRuta(u) != true)
            {
                string path = Path.GetFullPath("Rutas.txt");//para agregar carpetas afuera agrego ..\\
                if (!File.Exists(path))
                {
                    // Create a file to write to.
                    using (StreamWriter sw = File.CreateText(path))
                    {
                        sw.WriteLine(u.ToString());
                    }
                }
                else
                {
                    using (StreamWriter file = new StreamWriter(path, true))
                    {
                        file.WriteLine(u.ToString()); //se agrega información al documento

                        file.Close();
                    }
                }
            }
            else
            {
                throw new Exception("Ya existe la ruta");
            }
            //this.Controls.OfType<TextBox>().ToList().ForEach(o => o.Text = "");
            //StreamWriter fichero;

            //fichero = File.AppendText("prueba.txt");
            //fichero.WriteLine(bv.ToString());
            //fichero.Close();
            //MessageBox.Show(bv.ToString(), "No registrado", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
        }
Exemplo n.º 18
0
        /*
         * El metodo pinta en el mapa de la ventana principal la ruta.
         *  -Input: Ruta selec: Ruta que se va a pintar
         * */
        public void pintarRutaMapa(Ruta selec)
        {
            var overlayUbicacion = formInicio.mapa.Overlays.First();

            formInicio.mapa.Overlays.Clear();
            formInicio.mapa.Overlays.Add(overlayUbicacion);

            if (selec != null)
            {
                GMapOverlay        rutas  = new GMapOverlay("rutas");
                List <PointLatLng> points = new List <PointLatLng>();
                points.Add(new PointLatLng(selec.Inicio.Item1, selec.Inicio.Item2));
                foreach (Tuple <double, double> t in selec.Puntos)
                {
                    points.Add(new PointLatLng(t.Item1, t.Item2));
                }
                points.Add(new PointLatLng(selec.Fin.Item1, selec.Fin.Item2));
                GMapRoute route = new GMapRoute(points, "Cali");
                route.Stroke = new Pen(Color.Red, 3);
                //Agrega un marcador para el inicio de la ruta
                GMarkerGoogle markerInicio = new GMarkerGoogle(new PointLatLng(selec.Inicio.Item1, selec.Inicio.Item2), GMarkerGoogleType.green);
                markerInicio.ToolTipMode = MarkerTooltipMode.Always;
                rutas.Markers.Add(markerInicio);
                //Agrega un marcador con para el fin de la ruta
                GMarkerGoogle markerFin = new GMarkerGoogle(new PointLatLng(selec.Fin.Item1, selec.Fin.Item2), GMarkerGoogleType.red);
                markerInicio.ToolTipMode = MarkerTooltipMode.Always;
                rutas.Markers.Add(markerFin);

                //Agrega la ruta

                rutas.Routes.Add(route);
                formInicio.mapa.Overlays.Add(rutas);
                formInicio.mapa.ZoomAndCenterRoutes("rutas");
            }
        }
Exemplo n.º 19
0
        public async Task UpdatePosition(Ruta ruta)
        {
            try
            {
                var rutajson = new Rutav2 {
                    Latitud = ruta.Latitud, Longitud = ruta.Longitud
                };
                var json   = JsonConvert.SerializeObject(rutajson);
                var client = new HttpClient();
                var msg    = new HttpRequestMessage(new HttpMethod("PATCH"), Constants.FirebaseURI + Settings.IdFireBase + ".json");
                msg.Headers.Add("user-agent", Constants.USER_AGENT);
                if (json != null)
                {
                    msg.Content = new StringContent(
                        json,
                        UnicodeEncoding.UTF8,
                        "application/json");
                }

                await client.SendAsync(msg);
            }
            catch (Exception ex)
            {
                Debug.Write(ex.Message);
                throw;
            }
        }
 public Boolean UploadFile(ref string error, HttpContext contexto, int cotizacionId, UsuarioDto usuario)
 {
     try
     {
         ServicioArchivo _servicioArchivo = new ServicioArchivo(this._logger);
         var             _cotizacion      = GetId(cotizacionId);
         Ruta            _ruta            = new Ruta(contexto, _cotizacion);
         var             _archivo         = contexto.Request.Files[0];
         _servicioArchivo.CrearCarpeta(_ruta.RutaCarpetaCotizacionesClientes);
         _archivo.SaveAs(Path.Combine(_ruta.RutaCarpetaCotizacionesArchivosClientes, _archivo.FileName));
         _cotizacion.Archivos.Add(new CotizacionTieneArchivo()
         {
             CotizacionId    = _cotizacion.Id,
             NombreFisico    = _archivo.FileName,
             NombreHistorico = _archivo.FileName,
             UsuarioId       = usuario.Id
         });
         _contexto.Entry(_cotizacion).State = EntityState.Modified;
         _contexto.SaveChanges();
         return(true);
     }
     catch (Exception e)
     {
         this._logger.EscribirError(e.ToString());
         error = "Ocurrio un error al subir archivo.";
         return(false);
     }
 }
Exemplo n.º 21
0
        public void TestAgregarRecorridoExcepciones()
        {
            setup2();
            double   tarifa = 0.0;
            DateTime fecha  = DateTime.Now;
            Vehiculo v      = sist.darUsuario("3015584448").darVehiculoPorPlaca("GFB469");
            Ruta     r      = sist.darUsuario("3015584448").Rutas[0];


            try
            {
                tarifa = 0.0;
                v      = null;
                r      = sist.darUsuario("3015584448").Rutas[0];
                sist.darUsuario("3015584448").registrarRecorrido(tarifa, 2, fecha, v, r);
                Assert.Fail("Se debe generar una excepcion por no asignar placa");
            }
            catch (Exception e)
            {
                Assert.IsInstanceOfType(e, typeof(AgregarRecorridoExcepcion), "Excepcion esperada");
            }

            try
            {
                tarifa = 0.0;
                v      = sist.darUsuario("3015584448").darVehiculoPorPlaca("GFB469");
                r      = null;
                sist.darUsuario("3015584448").registrarRecorrido(tarifa, 4, fecha, v, r);
                Assert.Fail("Se debe generar una excepcion por no asignar placa");
            }
            catch (Exception e)
            {
                Assert.IsInstanceOfType(e, typeof(AgregarRecorridoExcepcion), "Excepcion esperada");
            }
        }
        public FileStream GetFile(ref string error, ref string nombre, ref Cotizacion cotizacion, int archivoId, HttpContext contexto)
        {
            cotizacion = GetId(cotizacion.Id);
            Ruta _ruta    = new Ruta(contexto, cotizacion);
            var  _archivo = cotizacion.Archivos.Where(ca => ca.Id == archivoId).FirstOrDefault();

            if (_archivo == null)
            {
                error = "No existe archivo.";
                return(null);
            }
            FileStream _archivoRespuesta = null;
            var        _rutaArchivo      = Path.Combine(_ruta.RutaCarpetaCotizacionesArchivosClientes, _archivo.NombreFisico);

            if (File.Exists(_rutaArchivo))
            {
                nombre            = _archivo.NombreFisico;
                _archivoRespuesta = new FileStream(_rutaArchivo, FileMode.Open, FileAccess.Read);
                return(_archivoRespuesta);
            }
            else
            {
                error = "No existe archivo.";
                return(null);
            }
        }
        public void Delete(Ruta entity)
        {
            using (IDbConnection connection = database.CreateOpenConnection())
            {
                IDbTransaction tran = connection.BeginTransaction();

                using (IDbCommand command = database.CreateStoredProcCommand("DeleteRoute", connection))
                {
                    try
                    {
                        command.Connection  = connection;
                        command.Transaction = tran;
                        //@pIme nvarchar(50), @pPrezime nvarchar(50), @pBrojMobitela nvarchar(50),@pSerijskiBrojVozacke nvarchar(8)
                        command.Parameters.Add(database.CreateParameter("pID", entity.IDRuta));

                        command.ExecuteNonQuery();
                        tran.Commit();
                    }
                    catch (Exception ex)
                    {
                        try
                        {
                            tran.Rollback();
                        }
                        catch (Exception ex2)
                        {
                            throw;
                        }
                    }
                }
            }
        }
Exemplo n.º 24
0
        public JsonResult AddProduct(int id)
        {
            var rutaActual = _bl.GetActiva(GetUser <Usuario>().pkUsuario);

            if (rutaActual == null)
            {
                var i = _bl.GetAll(GetUser <Usuario>().pkUsuario).Count;
                rutaActual = new Ruta
                {
                    fkUsuario     = GetUser <Usuario>().pkUsuario,
                    cRuta         = "Ruta #" + (i + 1),
                    bActivo       = true,
                    fkUsuarioCrea = GetUser <Usuario>().pkUsuario
                };

                _bl.CreateRuta(rutaActual);

                rutaActual = _bl.GetActiva(GetUser <Usuario>().pkUsuario);
            }

            return(Json(_bl.AddProduct(new RutaProducto
            {
                fkProducto = id,
                fkRuta = rutaActual.pkRuta
            }), JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 25
0
        public void Create(Ruta ruta)
        {
            try
            {
                var rutaDb = _crudRuta.Retrieve <Ruta>(ruta);
                if (rutaDb != null)
                {
                    throw new BusinessException(214);
                }

                if (ruta.Estado == null)
                {
                    ruta.Estado = "Activo";
                }

                ruta.Id = _crudRuta.CreateId(ruta);

                if (ruta.Id < 1)
                {
                    throw new BusinessException(215);
                }

                foreach (var horario in ruta.Horarios)
                {
                    horario.RutaId = ruta.Id;
                    _crudHorario.Create(horario);
                }
            }
            catch (Exception e)
            {
                ExceptionManager.GetInstance().Process(e);
            }
        }
Exemplo n.º 26
0
 private void ProcessRuta(Ruta ruta)
 {
     try
     {
         Console.WriteLine($"Terminal: {_config.Terminal} -> " + $"Ruta {ruta.RutaName} iniciada.");
         var day = ((int)DateTime.Now.DayOfWeek == 0) ? 7 : (int)DateTime.Now.DayOfWeek;
         while (true)
         {
             Thread.Sleep(60000); //wait 1 minute between iterations
             var time = DateTime.Now.TimeOfDay;
             Console.WriteLine($"Terminal: {_config.Terminal} -> " + $"Ruta {ruta.RutaName} : check {new DateTime(time.Ticks).ToString("HH:mm")}");
             var hora = ruta.Horarios.FirstOrDefault(h => h.Dia == day && (Convert.ToInt32(h.Hora.TotalMinutes) == Convert.ToInt32(time.TotalMinutes)));
             if (hora != null) //No existe el horario indicado.
             {
                 ThreadPool.QueueUserWorkItem(_ => GenerateRecorrido(ruta, hora.Hora));
             }
         }
     }
     catch (Exception e)
     {
         Console.WriteLine($"Terminal: {_config.Terminal} -> " + e.Message);
     }
     finally
     {
         _resetEvent.Set();
     }
 }
        public void confirmar_click(Object sender, EventArgs e)
        {
            DateTime fecha = new DateTime(registroRecorrido.dateTimePicker2.Value.Year,
                                          registroRecorrido.dateTimePicker2.Value.Month,
                                          registroRecorrido.dateTimePicker2.Value.Day,
                                          registroRecorrido.dateTimePicker1.Value.Hour,
                                          registroRecorrido.dateTimePicker2.Value.Minute,
                                          registroRecorrido.dateTimePicker2.Value.Second);
            int      cupo   = 0;
            double   tarifa = -1;
            Vehiculo vehi   = usuario.Vehiculos[registroRecorrido.comboBoxVehiculo.SelectedIndex];
            Ruta     ruta   = usuario.Rutas[registroRecorrido.comboBoxRuta.SelectedIndex];

            try { cupo = int.Parse(registroRecorrido.txbCupos.Text); } catch { MessageBox.Show("El numero de cupos debe ser un valor numerico"); }
            if (!registroRecorrido.txbTarifa.Text.SequenceEqual(""))
            {
                try { tarifa = double.Parse(registroRecorrido.txbTarifa.Text); } catch { MessageBox.Show("La tarifa debe ser un valor numerico"); }
            }
            try
            {
                usuario.registrarRecorrido(tarifa, cupo, fecha, vehi, ruta);
                if (eventoAgregar != null)
                {
                    eventoAgregar.Invoke(this);
                }
            }
            catch (AgregarRecorridoExcepcion ex)
            {
                bool[] campos = ex.CamposF;
                registroRecorrido.errorFecha.Visible  = campos[2];
                registroRecorrido.errorHora.Visible   = campos[2];
                registroRecorrido.errorCupo.Visible   = campos[3];
                registroRecorrido.errorTarifa.Visible = campos[4];
            }
        }
Exemplo n.º 28
0
        public sealed override void CrearDato()
        {
            Ruta nuevaRuta = new Ruta(Id, Origen, Destino, Km, Precio);

            if (!Listas.CiudadesDisponibles.Count.Equals(0))
            {
                foreach (var ciudad in Listas.CiudadesDisponibles)
                {
                    if (nuevaRuta.Origen.Equals(ciudad.Id))
                    {
                        nuevaRuta.Ciudad1 = ciudad;
                    }

                    if (nuevaRuta.Destino.Equals(ciudad.Id))
                    {
                        nuevaRuta.Ciudad = ciudad;
                    }
                }
            }

            if (!Listas.RutasDisponibles.Exists(c => c.Id.Equals(nuevaRuta.Id)))
            {
                Listas.RutasDisponibles.Add(nuevaRuta);
            }
        }
Exemplo n.º 29
0
 protected void ddlNombreCuenta_SelectedIndexChanged(object sender, EventArgs e)
 {
     this.ddlFechas.Items.Clear();
     this.ddlConsecutivo.Items.Clear();
     this.ddlConsecutivo.Enabled = false;
     this.btnGenerar.Enabled     = false;
     if (ddlNombreCuenta.SelectedIndex == 0)
     {
         this.ddlFechas.Enabled     = this.txbArchivoSalida.Enabled = false;
         this.txbArchivoSalida.Text = String.Empty;
     }
     else
     {
         this.ddlFechas.Enabled  = this.txbArchivoSalida.Enabled = true;
         ddlFechas.DataSource    = new HistorialArchivosSalidaLN().consultarFechasXBanco(this.ddlNombreCuenta.Text, this.ddlTipoArchivo.Text);
         ddlFechas.DataTextField = "FECHA";
         ddlFechas.DataBind();
         UtilidadesWeb.agregarSeleccioneDDL(ddlFechas);
         String rutaSalida = new BancoLN().consultarRutaSalida(this.ddlNombreCuenta.SelectedValue, ddlTipoArchivo.SelectedValue);
         RutaLN objRutaLN  = new RutaLN();
         Ruta   objRuta    = new Ruta();
         objRuta.pOid = Convert.ToInt32(rutaSalida);
         this.txbArchivoSalida.Text = objRutaLN.consultar(objRuta)[0].pRuta;
     }
 }
        public FileStream GetFile(ref string nombre, ref Modelo.Factura factura, int opcion, int facturaId, HttpContext contexto)
        {
            factura = GetId(facturaId);
            ServicioXml _servicio = new ServicioXml(this._logger);
            FileStream  _archivo  = null;
            string      _error    = string.Empty;
            Ruta        _ruta     = new Ruta(contexto, factura);

            new ServicioArchivo(_logger).CrearCarpeta(_ruta.RutaCarpetaFacturasClientes);
            switch (opcion)
            {
            case 1:
                if (!File.Exists(_ruta.RutaGuardadoXML))
                {
                    _servicio.RecuperarXML(factura.Sucursal.Rfc, factura.FolioFiscal, _ruta.RutaGuardadoXML);
                }
                _archivo = new FileStream(_ruta.RutaGuardadoXML, FileMode.Open, FileAccess.Read);
                nombre   = _ruta.NombreArchivoCompletoXml;
                break;

            case 2:
                if (!File.Exists(_ruta.RutaPDF))
                {
                    _servicio.GeneraCBB(ref _error, factura.Sucursal.Rfc, factura.Cliente.Rfc, factura.FolioFiscal, factura.Total, _ruta.RutaCBB);
                    GenerarPDF(factura, _ruta);
                }
                nombre = _ruta.NombreArchivoCompletoPDF;
                if (File.Exists(_ruta.RutaPDF))
                {
                    _archivo = new FileStream(_ruta.RutaPDF, FileMode.Open, FileAccess.Read);
                }
                break;
            }
            return(_archivo);
        }
        public FrmABMRutaAltasModificaciones(Ruta ruta)
        {
            InitializeComponent();

            //Si no se le pasa ninguna ruta por parámetro (NULL) se considera que esta trabajando en modo alta
            modoModificacion = !(ruta == null);

            if (modoModificacion)
                RutaActual = ruta;
        }
Exemplo n.º 32
0
        public static int[] SetSwitches(Ruta ruta, Autopilot autopilot,int screen, bool cam)
        {
            byte sw = (byte)(screen & 0x3);
            sw |= (byte)(((int)autopilot) << 2);
            sw |= (byte)(((int)ruta) << 4);

            if (!cam)
                sw |= 0x40;

            return build_packet((byte)REGS.Switches, new byte[] { sw });
        }
Exemplo n.º 33
0
 public Modificacion(Ruta seleccionado)
 {
     InitializeComponent();
     ciudadesActivas = new List<Ciudad>();
     servicios = new List<Servicio>();
     cargarCombos();
     id = seleccionado.Id;
     txt_codigo.Text = seleccionado.Codigo.ToString();
     txt_pbkg.Text = seleccionado.Precio_baseKG.ToString();
     txt_pbp.Text = seleccionado.Precio_basePasaje.ToString();
     cb_origen.Text = seleccionado.Origen.Nombre.ToString();
     cb_destino.Text = seleccionado.Destino.Nombre.ToString();
     cmb_servicio.SelectedIndex = seleccionado.Tipo_servicio.Id - 1;
 }
Exemplo n.º 34
0
        public void AñadirRuta(int Id, DateTime Fecha_creacion, String descripcion, Boolean estado)
        {
            using (EntitiesModel dbContext = new EntitiesModel())
            {

                Ruta ruta = new Ruta();
                ruta.Id = Id;
                ruta.Fecha_creacion = Fecha_creacion;
                ruta.Descripcion = descripcion;
                ruta.Estado = estado;

                dbContext.Add(ruta);
                dbContext.SaveChanges();

            }
        }
Exemplo n.º 35
0
        private void btn_modificar_Click_1(object sender, EventArgs e)
        {
            Ruta ruta_seleccionada = new Ruta();
            ruta_seleccionada.Id = id;
            ruta_seleccionada.Codigo = Convert.ToInt32(txt_codigo.Text);
            ruta_seleccionada.Precio_baseKG = Convert.ToDouble(txt_pbkg.Text);
            ruta_seleccionada.Precio_basePasaje = Convert.ToDouble(txt_pbp.Text);
            ruta_seleccionada.Origen = new CiudadDAO().Ciudad_FindByNombre(cb_origen.Text);
            ruta_seleccionada.Destino = new CiudadDAO().Ciudad_FindByNombre(cb_destino.Text);
            Servicio servicio = (Servicio)cmb_servicio.SelectedItem;
            ruta_seleccionada.Tipo_servicio = servicio;

            new RutaDAO().guardar(ruta_seleccionada);
            Abm_Ruta.Form1 form = new Abm_Ruta.Form1();
            this.Close();
            form.Show();
        }
Exemplo n.º 36
0
        public void EditarProgramacion(Bu bus, Ruta ruta, Empleado empleado, DateTime fecha, String horario)
        {
            using (EntitiesModel dbContext = new EntitiesModel())
            {

                //se supone que debemos hacer el update pidiendo el ID.....falta implementarlo

                Programacion programaParaEditar = dbContext.Programacions.First();

                programaParaEditar.Bu= bus;
                programaParaEditar.Rutum= ruta;
                programaParaEditar.Empleado= empleado;
                programaParaEditar.Fecha = fecha;
                programaParaEditar.Horario= horario;

                dbContext.SaveChanges();

            }
        }
        public CargarRutaForm(Ruta ruta)
        {
            InitializeComponent();

            // TODO: esta línea de código carga datos en la tabla 'gD2C2015DataSet.Rutas' Puede moverla o quitarla según sea necesario.
            this.rutasTableAdapter1.Fill(this.gD2C2015DataSet.Rutas);
            // TODO: esta línea de código carga datos en la tabla 'gD2C2015DataSet.Tipos_Servicio' Puede moverla o quitarla según sea necesario.
            this.tipos_ServicioTableAdapter.Fill(this.gD2C2015DataSet.Tipos_Servicio);
            // TODO: esta línea de código carga datos en la tabla 'gD2C2015DataSet.Ciudades' Puede moverla o quitarla según sea necesario.
            this.ciudadesTableAdapter.Fill(this.gD2C2015DataSet.Ciudades);

            this.ciudadDestino.Refresh();
            this.ciudadOrigen.Refresh();

            List<Tipo_Servicio> tipos_servicios = Tipo_Servicio.getTipos_Servicio();
            foreach (Tipo_Servicio f in tipos_servicios)
            {
                this.checkedListBox1.Items.Insert(f.Id - 1, f.Descripcion);
            }
            this.checkedListBox1.Refresh();

            if (ruta != null)
            {
                this.ruta = ruta;
                this.activo.Checked = ruta.Activo;
                this.precioKg.Text = ruta.PrecioKg.ToString();
                this.precioBase.Text = ruta.PrecioBase.ToString();
                this.ciudadOrigen.SelectedValue = ruta.CiudadOrigen;
                this.ciudadDestino.SelectedValue = ruta.CiudadDestino;

                List<Tipo_Servicio> tiposDeServicio = ruta.buscarTiposServicio(ruta.Id);
                foreach (Tipo_Servicio ts in tiposDeServicio)
                {
                        this.checkedListBox1.SetItemChecked(ts.Id - 1, true);
                }

            }
            else
            {
                this.activo.Visible = false;
            }
        }
        public void cargarRuta(Ruta r)
        {
            txtCodigo.Text = r.idRuta.ToString();
            txtCOrigen.Text = r.ciudad_Origen;
            txtCDestino.Text = r.ciudad_Destino;
            txtPrecioPasaje.Text = r.precio_base_por_pasaje;
            txtPregiokg.Text = r.precio_base_por_KG;

              for (int i = 0; i <= (chkListaServicios.Items.Count - 1); i++) {

                  if (r.servicios.Contains(chkListaServicios.Items[i].ToString()))
               {
                      chkListaServicios.SetItemCheckState(i, CheckState.Checked);
               }
                  else
                  {
                     chkListaServicios.SetItemCheckState(i, CheckState.Unchecked);
                  }
              }
        }
Exemplo n.º 39
0
    public virtual void Engancharse(string nombreRuta, int puntoParaEngancharse)
    {
        foreach(Ruta ruta in scriptRutas.rutas)
        {
            if(ruta.nombre == nombreRuta)
            {
                rutaSeleccionada = ruta;
                rutaEncontrada = true;
            }
        }
        if (!rutaEncontrada)
        {
            Debug.LogError("Ruta con nombre " + nombreRuta + " no encontrada");
        }
        rutaEncontrada = false;
        puntoActual = puntoParaEngancharse;

        IrAPunto(rutaSeleccionada.puntos[rutaSeleccionada.orden[puntoActual]].position);
        //transform.LookAt(rutaSeleccionada.puntos[rutaSeleccionada.orden[puntoActual]]);
        Rotar(rutaSeleccionada.puntos[rutaSeleccionada.orden[puntoActual]]);
    }
Exemplo n.º 40
0
        private void button5_Click(object sender, EventArgs e)
        {
            Ruta ruta_seleccionada = new Ruta();

            //Chequeo que hayan ingresado algo, en caso de que no. Clavo un -1
            long codigo;
            double precio_baseKg;
            double precio_basePasaje;
            Ciudad ciudad_origen = new Ciudad();
            ciudad_origen.Id = -1;
            ciudad_origen.Nombre = "";
            Ciudad ciudad_destino = new Ciudad();
            ciudad_destino.Id = -1;
            ciudad_destino.Nombre = "";
            Servicio servicio = new Servicio();
            servicio.Id = -1;
            servicio.Nombre = "";

            if (long.TryParse(txt_codigo.Text, out codigo))
                ruta_seleccionada.Codigo = codigo;
            else
                ruta_seleccionada.Codigo = -1;
            if (Double.TryParse(txt_precio_baseKg.Text, out precio_baseKg))
                ruta_seleccionada.Precio_baseKG = precio_baseKg;
            else
                ruta_seleccionada.Precio_baseKG = -1;
            if (Double.TryParse(txt_precio_basePasaje.Text, out precio_basePasaje))
                ruta_seleccionada.Precio_basePasaje = precio_basePasaje;
            else
                ruta_seleccionada.Precio_basePasaje = -1;
            if (cb_origen.Text == "")
            {
                ruta_seleccionada.Origen = ciudad_origen;
            }
            else
                ruta_seleccionada.Origen = new CiudadDAO().Ciudad_FindByNombre(cb_origen.Text);
            if (cb_destino.Text == "")
            {
                ruta_seleccionada.Destino = ciudad_destino;
            }
            else
            ruta_seleccionada.Destino = new CiudadDAO().Ciudad_FindByNombre(cb_destino.Text);

            if (cmb_servicio.Text == ""){
                ruta_seleccionada.Tipo_servicio = servicio;
            }else{
                 Servicio servicio1 = (Servicio)cmb_servicio.SelectedItem;
                ruta_seleccionada.Tipo_servicio = servicio1;
            }

            //dataGridView1.DataSource = new RutaDAO().Filtrar(ruta_seleccionada); comentado por las du
            dataGridView1.DataSource = DominioDataSet.Ruta_DataSet(new RutaDAO().Filtrar(ruta_seleccionada)).Tables[0];

            //oculto las columnas que no quiero que se muestren
            //cuando hago click en una celda, se selecciona toda la fila
            dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
            dataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;
        }
        private void completar(DataGridView dataGridView2)
        {
            string codigo_ruta = dataGridView2[0, dataGridView2.CurrentCell.RowIndex].Value.ToString();

            ConexionSQL conn = new ConexionSQL();
            string qEstaEnviaje = "select * from dbas.viajes where habilitado_viaje = 1 AND codigo_ruta = "+codigo_ruta;
            DataTable dviaje = conn.cargarTablaSQL(qEstaEnviaje);
            if(dviaje.Rows.Count != 0 && tipoDeForm!=3){
                MessageBox.Show("No se puede modificar la ruta "+codigo_ruta+", se encuentra en viaje/s");
                return;
            }

            string ciudad_Origen = dataGridView2[1, dataGridView2.CurrentCell.RowIndex].Value.ToString();
            string ciudad_Destino = dataGridView2[2, dataGridView2.CurrentCell.RowIndex].Value.ToString();
            string tipo_servicio = dataGridView2[5, dataGridView2.CurrentCell.RowIndex].Value.ToString();
            string precio_base_por_KG = dataGridView2[4, dataGridView2.CurrentCell.RowIndex].Value.ToString();
            string precio_base_por_pasaje = dataGridView2[3, dataGridView2.CurrentCell.RowIndex].Value.ToString();
            string porcentaje_arancel = dataGridView2[4, dataGridView2.CurrentCell.RowIndex].Value.ToString();

            string query = "select tipo_servicio FROM DBAS.caracteristicasRutas WHERE codigo_ruta = "+codigo_ruta ;

            precio_base_por_KG = sacarComaMeterPunto(precio_base_por_KG);
            precio_base_por_pasaje = sacarComaMeterPunto(precio_base_por_pasaje);

            DataTable dt = conn.cargarTablaSQL(query);

               List<string> servicios = new List<string>();

               for (int i = 0; i <= (dt.Rows.Count- 1); i++)
               {
               servicios.Add(dt.Rows[i][ 0].ToString());
               }

            Ruta aModificar = new Ruta(Convert.ToInt32(codigo_ruta), ciudad_Origen, ciudad_Destino, precio_base_por_pasaje, precio_base_por_KG, tipo_servicio, porcentaje_arancel,servicios);

            this.inicializar();
            this.Hide();

            if(tipoDeForm==1){
              crearRutaForm modify =new crearRutaForm(1);
                            modify.cargarRuta(aModificar);
                            modify.Show();
                }
            if(tipoDeForm==3){
                formAuxiliar.cargarRuta(aModificar);
            }
        }
        private void modificar_Click(object sender, EventArgs e)
        {
            Ruta ruta = new Ruta();
            ruta.Id = Convert.ToInt32(data.Rows[data.CurrentRow.Index].Cells[0].Value);
            ruta.CiudadOrigen = Convert.ToInt32(data.Rows[data.CurrentRow.Index].Cells[2].Value);
            ruta.CiudadDestino = Convert.ToInt32(data.Rows[data.CurrentRow.Index].Cells[4].Value);
            ruta.PrecioKg = Convert.ToDecimal(data.Rows[data.CurrentRow.Index].Cells[6].Value);
            ruta.PrecioBase = Convert.ToDecimal(data.Rows[data.CurrentRow.Index].Cells[7].Value);
            ruta.Activo = Convert.ToBoolean(data.Rows[data.CurrentRow.Index].Cells[8].Value);
            new CargarRutaForm(ruta).ShowDialog();

            this.rutasTableAdapter.Fill(this.gD2C2015DataSet.Rutas);
        }
        private void button1_Click(object sender, EventArgs e)
        {
            if (this.valido())
            {
                rutasTableAdapter.Connection.Open();
                SqlTransaction transaccion = rutasTableAdapter.Connection.BeginTransaction();
                tipos_servicio_RutasTableAdapter.Connection = rutasTableAdapter.Connection;
                rutasTableAdapter.Transaction = transaccion;
                tipos_servicio_RutasTableAdapter.Transaction = transaccion;
                try
                {
                    if (ruta != null)
                    {
                        // update
                        this.rutasTableAdapter.rutaModificar(Convert.ToInt32(this.ciudadDestino.SelectedValue), Convert.ToInt32(this.ciudadOrigen.SelectedValue), Convert.ToDecimal(this.precioKg.Text), Convert.ToDecimal(this.precioBase.Text), Convert.ToBoolean(this.activo.Checked), this.ruta.Id);
                        this.tipos_servicio_RutasTableAdapter.tipos_Servicio_RutasBorrar(this.ruta.Id);
                    }
                    else
                    {
                        // insert
                        rutasTableAdapter.Fill(gD2C2015DataSet.Rutas);
                        GD2C2015DataSet.RutasRow[] rows = (GD2C2015DataSet.RutasRow[]) gD2C2015DataSet.Rutas.Select("ciudad_origen_id='" + this.ciudadOrigen.SelectedValue + "' AND ciudad_destino_id='" + this.ciudadDestino.SelectedValue + "'");

                        if (rows.Length > 0)
                        {
                            MessageBox.Show("Ya exista una ruta con esa ciudad de origen y destino\n");
                            return;
                        }

                        this.ruta = new Ruta();
                        this.ruta.Id = Convert.ToInt32(this.rutasTableAdapter.rutaInsertar(Convert.ToInt32(this.ciudadOrigen.SelectedValue), Convert.ToInt32(this.ciudadDestino.SelectedValue), Convert.ToDecimal(this.precioKg.Text), Convert.ToDecimal(this.precioBase.Text)));
                    }

                    foreach (object itemChecked in this.checkedListBox1.CheckedItems)
                    {
                        int tipo_servicio_id = this.checkedListBox1.Items.IndexOf(itemChecked) + 1;
                        if (tipo_servicio_id != 0)
                        {
                            this.tipos_servicio_RutasTableAdapter.tipo_Servicio_RutaInsertar(tipo_servicio_id, this.ruta.Id);
                        }
                    }
                    this.rutasTableAdapter.Fill(this.dataSet.Rutas);
                    this.tipos_servicio_RutasTableAdapter.Fill(this.dataSet.Tipos_Servicio_Rutas);
                    transaccion.Commit();
                }
                catch (System.Exception ex)
                {
                    transaccion.Rollback();
                    MessageBox.Show(ex.Message);
                    MessageBox.Show("Ha ocurrido un error al intentar guardar la ruta.\nSi el problema persiste póngase en contacto con el administrador.");
                    ruta = null;
                    return;
                }
                finally
                {
                    rutasTableAdapter.Connection.Close();
                }
                MessageBox.Show("La ruta ha sido guardado correctamente");
                this.Close();
            }
        }
        public bool validarRuta()
        {
            string matricula = ((Aeronave)cmbMatricula.SelectedItem).matricula;
            bool ruta_correcta = false;
            DAOVuelo daoVuelo = new DAOVuelo();
            List<Vuelo> LsVuelos = new List<Vuelo>();
            Ruta ruta = new Ruta();
            string origen = ((Ciudad)cmbAOrigen.SelectedItem).nombre;
            string destino = ((Ciudad)cmbASalia.SelectedItem).nombre;

            LsVuelos = daoVuelo.search(DAOAeronave.getAeronaveFromMatricula(matricula).id);

            int ruta_elex = ruta.getRuta(origen, destino);

            foreach (Vuelo velo in LsVuelos)
            {
                if (velo.ruta.Equals(ruta_elex)) { ruta_correcta = true; }

            }

            return ruta_correcta;
        }
        private void BtnGuardar_Click(object sender, EventArgs e)
        {
            try
            {
                #region Validaciones

                var exceptionMessage = string.Empty;

                if (string.IsNullOrEmpty(TxtCodigo.Text))
                    exceptionMessage += "El código de la ruta no puede ser vacío.";

                if (string.IsNullOrEmpty(TxtBaseKg.Text))
                    exceptionMessage += Environment.NewLine + "Debe ingresar un precio base por Kg.";

                if (string.IsNullOrEmpty(TxtBasePasaje.Text))
                    exceptionMessage += Environment.NewLine + "Debe ingresar un precio base por pasaje";

                if (!string.IsNullOrEmpty(exceptionMessage))
                    throw new Exception(exceptionMessage);

                #endregion

                if (!modoModificacion)
                {
                    #region Valido que no exista una ruta con la descripcion informada
                    var filtro = new RutaFiltros();
                    filtro.Codigo = Int32.Parse(TxtCodigo.Text);
                    filtro.CiudadOrigen = CmbCiudadOrigen.Text;
                    filtro.CiudadDestino = CmbCiudadDestino.Text;
                    filtro.TipoServicio = CmbTipoServicio.Text;
                    filtro.PrecioDesdeKg = double.Parse(TxtBaseKg.Text);
                    filtro.PrecioHastaKg = double.Parse(TxtBaseKg.Text);
                    filtro.PrecioDesdePasaje = double.Parse(TxtBasePasaje.Text);
                    filtro.PrecioHastaPasaje = double.Parse(TxtBasePasaje.Text);

                    var rutas = RutaPersistencia.ObtenerRutasPorParametros(filtro);
                    var mensajeExcepcion = string.Empty;

                    if (rutas.Count!=0)
                        throw new Exception("Ya existe una ruta con los datos ingresados");

                    #endregion

                    if (filtro.CiudadOrigen == filtro.CiudadDestino)
                        mensajeExcepcion += "No puede crear una ruta con la misma ciudad de origen y destino";

                    if(!(ValidadorDeTipos.IsNumeric(TxtCodigo.Text)))
                        mensajeExcepcion += Environment.NewLine + "El código de ruta debe ser un número";

                    if (!(ValidadorDeTipos.IsNumeric(TxtBaseKg.Text)))
                        mensajeExcepcion += Environment.NewLine + "El precio base del KG debe ser un número";

                    if (!(ValidadorDeTipos.IsNumeric(TxtBasePasaje.Text)))
                        mensajeExcepcion += Environment.NewLine + "El precio base del pasaje debe ser un número";

                    if (!ValidadorDeTipos.IsEmpty(mensajeExcepcion))
                        throw new Exception(mensajeExcepcion);

                    //TODO Por qué no me muestra el mensaje de error que le dije??

                    #region Inserto una nueva ruta

                    var ruta = new Ruta();
                    ruta.Codigo_Ruta = (int)(filtro.Codigo);
                    ruta.ID_Ciudad_Origen = CiudadPersistencia.ObtenerIDPorNombreDeCiudad(filtro.CiudadOrigen);
                    ruta.ID_Ciudad_Destino = CiudadPersistencia.ObtenerIDPorNombreDeCiudad(filtro.CiudadDestino);
                    ruta.ID_Servicio = ServicioPersistencia.ObtenerIDPorNombreDeServicio(filtro.TipoServicio);
                    ruta.Precio_Base_KG = (double)filtro.PrecioDesdeKg;   //ES INDISTINTO PONER DESDE O HASTA PORQUE EN ESTE CASO SON IGUALES
                    ruta.Precio_Base_Pasaje = (double)filtro.PrecioDesdePasaje;  //ES INDISTINTO PONER DESDE O HASTA PORQUE EN ESTE CASO SON IGUALES
                    ruta.Habilitado = !(ChkInhabilitado.Checked);

                    var dialogAnswer = MessageBox.Show("Esta seguro que quiere insertar la nueva ruta?", "Atencion", MessageBoxButtons.YesNo);
                    if (dialogAnswer == DialogResult.Yes)
                    {
                        //Impacto en la base
                        RutaPersistencia.InsertarRuta(ruta);
                        AccionCompleta = true;
                        Close();
                    }

                    #endregion

                }
                else
                {
                    #region Modifico una ruta existente

                    var rutaAModificar = RutaActual;
                    RutaActual.Codigo_Ruta = Int32.Parse(TxtCodigo.Text);
                    RutaActual.ID_Ciudad_Origen = CiudadPersistencia.ObtenerIDPorNombreDeCiudad(CmbCiudadOrigen.Text);
                    RutaActual.ID_Ciudad_Destino = CiudadPersistencia.ObtenerIDPorNombreDeCiudad(CmbCiudadDestino.Text);
                    RutaActual.ID_Servicio = ServicioPersistencia.ObtenerIDPorNombreDeServicio(CmbTipoServicio.Text);
                    RutaActual.Precio_Base_KG = double.Parse(TxtBaseKg.Text);   //ES INDISTINTO PONER DESDE O HASTA PORQUE EN ESTE CASO SON IGUALES
                    RutaActual.Precio_Base_Pasaje = double.Parse(TxtBasePasaje.Text);  //ES INDISTINTO PONER DESDE O HASTA PORQUE EN ESTE CASO SON IGUALES
                    RutaActual.Habilitado = !(ChkInhabilitado.Checked);

                    var dialogAnswer = MessageBox.Show(string.Format("Esta seguro que quiere modificar la ruta {0} de {1} a {2}?", rutaAModificar.Codigo_Ruta, RutaPersistencia.ObtenerCiudadPorID(rutaAModificar.ID_Ciudad_Origen), RutaPersistencia.ObtenerCiudadPorID(rutaAModificar.ID_Ciudad_Destino)), "Atención", MessageBoxButtons.YesNo);
                    if (dialogAnswer == DialogResult.Yes)
                    {
                        //Impacto en la base
                        RutaPersistencia.ModificarRuta(RutaActual);
                        AccionCompleta = true;
                        Close();
                    }

                    #endregion
                }

            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Atención");
            }
        }