public void TestMethodIngresarVenta()
        {
            var gestorDAO = new GestorDAOSql();
            var ventaDAO = new VentaDAOSql(gestorDAO);

            var empleado = new Empleado();
            empleado.ID = 2;

            var pasajero = new Pasajero();
            pasajero.ID = 3;

            var bus = new Bus();
            bus.ID = 3;

            var conductor = new Conductor();
            conductor.ID = 2;

            var ruta = new Ruta();
            ruta.ID = 1;

            var itinerario = new Itinerario("19/11/2015", "23:30:00", 20, bus, conductor, ruta);
            itinerario.ID = 22;

            var venta = new Venta("23", "1234324", "S99930", itinerario, empleado, pasajero, 30.5m);

            Assert.AreEqual(true, ventaDAO.Ingresar(venta));
        }
        public void TestMethodIngresarConductor()
        {
            var gestorDAO = new GestorDAOSql();
            var conductorDAO = new ConductorDAOSql(gestorDAO);

            var conductor = new Conductor("Victor Arturo", "León", "Touzet", "56743589", "11/05/1997", "P34151712");

            Assert.AreEqual(true, conductorDAO.Ingresar(conductor));
        }
 public Itinerario(string FechaSalida, string HoraSalida, decimal Precio, Bus Bus, Conductor Conductor, Ruta Ruta)
 {
     this.FechaSalida = FechaSalida;
     this.HoraSalida = HoraSalida;
     this.Precio = Precio;
     this.Bus = Bus;
     this.Conductor = Conductor;
     this.Ruta = Ruta;
     Estado = true;
 }
        public void TestMethodModificarConductor()
        {
            var gestorDAO = new GestorDAOSql();
            var conductorDAO = new ConductorDAOSql(gestorDAO);

            var conductor = new Conductor("Victor", "León", "Soto", "56743589", "11/05/1997", "P34151713");
            conductor.ID = 10;

            Assert.AreEqual(true, conductorDAO.Modificar(conductor));
        }
        public bool Ingresar(Itinerario itinerario)
        {
            var gestorDAO = new FabricaDAOSql().CrearGestorDAO();
            var itinerarioDAO = new FabricaDAOSql().CrearItinerarioDAO(gestorDAO);
            var conductor = new Conductor();
            conductor.Itinerarios = itinerarioDAO.Listar();

            itinerarioDAO.Ingresar(itinerario);
            return true;
               /* if (conductor.ValidarItinerario(itinerario))
            {
            }*/

            //return false;
        }
        public void TestMethodIngresarItinerario()
        {
            var gestorDAO = new GestorDAOSql();
            var itinerarioDAO = new ItinerarioDAOSql(gestorDAO);

            var bus = new Bus();
            bus.ID = 2;

            var conductor = new Conductor();
            conductor.ID = 1;

            var ruta = new Ruta();
            ruta.ID = 3;

            var itinerario = new Itinerario("13/11/2015", "21:30:00", 20, bus, conductor, ruta);

            Assert.AreEqual(true, itinerarioDAO.Ingresar(itinerario));
        }
        public void TestMethodIngresarItinerario()
        {
            var gestorDAO = new GestorDAOSql();
            var itinerarioDAO = new FabricaDAOSql().CrearItinerarioDAO(gestorDAO);

            var bus = new Bus();
            bus.ID = 1;
            bus.Placa = "PER-0793";

            var conductor = new Conductor();
            conductor.ID = 1;

            var ruta = new Ruta();
            ruta.ID = 3;

            var itinerario = new Itinerario("9/11/2015", "21:30:00", 20, bus, conductor, ruta);

            var itinerarioServicio = new IngresarItinerarioServicio();

            Assert.AreEqual(false, itinerarioServicio.Ingresar(itinerario));
        }
        public void TestMethodValidarItinerario()
        {
            var conductor = new Conductor();

            var bus = new Bus();
            bus.ID = 1;
            bus.Placa = "PER-0793";

            var gestorDAOSql = new GestorDAOSql();
            var itinerarioDAOSql = new ItinerarioDAOSql(gestorDAOSql);

            conductor.ID = 1;

            var ruta = new Ruta();
            ruta.ID = 3;

            var itinerario = new Itinerario("9/11/2015", "21:30:00", 20, bus, conductor, ruta);

            conductor.Itinerarios = itinerarioDAOSql.Listar();

            Assert.AreEqual(false, conductor.ValidarItinerario(itinerario));
        }
        public Itinerario Buscar(int id)
        {
            string procedimientoAlmacenado = "sp_BuscarItinerarioxID";
            SqlCommand comando = null;
            Itinerario itinerario = null;

            try
            {
                comando = gestorDAO.ObtenerComandoSP(procedimientoAlmacenado);

                comando.Parameters.AddWithValue("@prmId", id);

                gestorDAO.AbrirConexion();

                SqlDataReader dataReader = comando.ExecuteReader();

                if (dataReader.Read())
                {
                    var conductor = new Conductor(dataReader.GetString(17), dataReader.GetString(18), dataReader.GetString(19), dataReader.GetString(20), dataReader.GetDateTime(21).ToString(), dataReader.GetString(22));
                    var tipoServicio = new TipoServicio(dataReader.GetString(30), dataReader.GetString(31));
                    var origen = new Ciudad(dataReader.GetString(34));
                    var destino = new Ciudad(dataReader.GetString(37));
                    var ruta = new Ruta(origen, destino, Convert.ToInt16(dataReader["TimepoEstimado"]));
                    var bus = new Bus(Convert.ToInt16(dataReader["Pisos"]), dataReader.GetString(11), dataReader.GetString(12), dataReader.GetString(13), tipoServicio);
                    itinerario = new Itinerario(dataReader["FechaSalida"].ToString(), dataReader["HoraSalida"].ToString(), Convert.ToDecimal(dataReader["Precio"]), bus, conductor, ruta);

                    itinerario.ID = Convert.ToInt16(dataReader["idItinerario"]);

                }
            }
            catch (SqlException e)
            {
                throw e;
            }
            finally { gestorDAO.CerrarConexion(); }

            return itinerario;
        }
        public Conductor Buscar(string dni)
        {
            string procedimientoAlmacenado = "sp_BuscarConductor";
            SqlCommand comando = null;
            Conductor conductor = null;

            try
            {
                comando = gestorDAO.ObtenerComandoSP(procedimientoAlmacenado);

                comando.Parameters.AddWithValue("@prmDni", dni);

                gestorDAO.AbrirConexion();

                SqlDataReader dataReader = comando.ExecuteReader();

                if (dataReader.Read())
                {
                    conductor = new Conductor(dataReader["Nombres"].ToString(),
                    dataReader["ApellidoPaterno"].ToString(),
                    dataReader["ApellidoMaterno"].ToString(),
                    dataReader["Dni"].ToString(),
                    Convert.ToDateTime(dataReader["FechaNacimiento"]).ToString(),
                    dataReader["Licencia"].ToString()
                    );
                }
            }
            catch (SqlException e)
            {

                throw e;
            }
            finally { gestorDAO.CerrarConexion(); }

            return conductor;
        }
        public bool Modificar(Conductor conductor)
        {
            SqlCommand comando = null;
            string procedimientoAlmacenado = "sp_EditarConductor";

            try
            {
                comando = gestorDAO.ObtenerComandoSP(procedimientoAlmacenado);

                comando.Parameters.AddWithValue("@prmidConductor", conductor.ID);
                comando.Parameters.AddWithValue("@prmNombres", conductor.Nombres);
                comando.Parameters.AddWithValue("@prmApellidoPaterno", conductor.ApellidoPaterno);
                comando.Parameters.AddWithValue("@prmApellidoMaterno", conductor.ApellidoMaterno);
                comando.Parameters.AddWithValue("@prmDNI", conductor.Dni);
                comando.Parameters.AddWithValue("@prmFechaNacimiento", conductor.FechaNacimiento);
                comando.Parameters.AddWithValue("@prmLicencia", conductor.Licencia);
                comando.Parameters.AddWithValue("@prmEstado", conductor.Estado);

                gestorDAO.AbrirConexion();

                if (comando.ExecuteNonQuery() > 0) return true;
            }
            catch (Exception e)
            {

                throw e;
            }

            return false;
        }
        public List<Conductor> Listar()
        {
            SqlCommand comando = null;
            var listaconductor = new List<Conductor>();
            string procedimientoAlmacenado = "sp_ListarConductor";

            try
            {

                comando = gestorDAO.ObtenerComandoSP(procedimientoAlmacenado);

                gestorDAO.AbrirConexion();

                var dataReader = comando.ExecuteReader();

                while (dataReader.Read())
                {

                    var conductor = new Conductor(dataReader["Nombres"].ToString(),
                        dataReader["ApellidoPaterno"].ToString(),
                        dataReader["ApellidoMaterno"].ToString(),
                        dataReader["Dni"].ToString(),
                        Convert.ToDateTime(dataReader["FechaNacimiento"]).ToString(),
                        dataReader["Licencia"].ToString()
                        );
                    conductor.ID = Convert.ToInt16(dataReader[0]);
                    listaconductor.Add(conductor);
                }
            }
            catch (Exception e)
            {

                throw e;
            }
            finally { gestorDAO.CerrarConexion(); }

            return listaconductor;
        }
        public List<Itinerario> Listar()
        {
            SqlCommand comando = null;
            string procedimientoAlmacenado = "sp_ListarItinerario";
            var listaItinerarios = new List<Itinerario>();

            try
            {
                comando = gestorDAO.ObtenerComandoSP(procedimientoAlmacenado);

                var dataReader = comando.ExecuteReader();

                while (dataReader.Read())
                {
                    var conductor = new Conductor(dataReader.GetString(17), dataReader.GetString(18), dataReader.GetString(19), dataReader.GetString(20), dataReader.GetDateTime(21).ToString(), dataReader.GetString(22));
                    var tipoServicio = new TipoServicio(dataReader.GetString(30), dataReader.GetString(31));
                    var origen = new Ciudad(dataReader.GetString(34));
                    var destino = new Ciudad(dataReader.GetString(37));
                    var ruta = new Ruta(origen, destino, Convert.ToInt16(dataReader["TimepoEstimado"]));
                    var bus = new Bus(Convert.ToInt16( dataReader["Pisos"]), dataReader.GetString(11), dataReader.GetString(12), dataReader.GetString(13), tipoServicio);
                    var itinerario = new Itinerario(dataReader["FechaSalida"].ToString(), dataReader["HoraSalida"].ToString(), Convert.ToDecimal(dataReader["Precio"]), bus, conductor, ruta);

                    itinerario.ID = Convert.ToInt16(dataReader["idItinerario"]);
                    listaItinerarios.Add(itinerario);
                }
            }
            catch (SqlException e)
            {

                throw e;
            }

            return listaItinerarios;
        }