Пример #1
0
        public static void InsertarVehiculo(Vehiculo v)
        {
            SqlConnection con = new SqlConnection(cadena);
            try
            {
                con.Open();
                string sql = "INSERT INTO Vehiculos (dominio, km, pinturaDanada, idMarca, idCliente, ano) VALUES (@dominio, @km, @pinturaDanada, @idMarca, @idCliente, @ano)";

                SqlCommand cmd = new SqlCommand();
                cmd.CommandText = sql;
                cmd.Connection = con;

                cmd.Parameters.AddWithValue("@dominio", v.dominio);

                if (!(v.km == null)) cmd.Parameters.AddWithValue("@km", v.km);
                else cmd.Parameters.AddWithValue("@km", DBNull.Value);

                cmd.Parameters.AddWithValue("@pinturaDanada", v.pinturaDanada);
                cmd.Parameters.AddWithValue("@idMarca", v.marca.idMarca);
                cmd.Parameters.AddWithValue("@idCliente", v.cliente.idCliente);
                cmd.Parameters.AddWithValue("@ano", v.ano);
                cmd.ExecuteNonQuery();

            }
            catch (SqlException e)
            {
                throw new ApplicationException("Error al insertar vehículo: Dominio ya registrado ");
            }
            finally
            {
                con.Close();
            }
        }
Пример #2
0
        public static void ActualizarVehiculo(Vehiculo v)
        {
            SqlConnection con = new SqlConnection(cadena);
            try
            {
                con.Open();
                string sql = "UPDATE Vehiculos SET dominio = @dominio, km = @km,  pinturaDanada = @pinturaDanada, idMarca = @idMarca, idCliente=@idCliente, ano = @ano WHERE idVehiculo = @idVehiculo";

                SqlCommand cmd = new SqlCommand();
                cmd.CommandText = sql;
                cmd.Connection = con;
                cmd.Parameters.AddWithValue("@idVehiculo", v.idVehiculo);
                cmd.Parameters.AddWithValue("@dominio", v.dominio);

                if (!(v.km == null))cmd.Parameters.AddWithValue("@km", v.km);
                else cmd.Parameters.AddWithValue("@km", DBNull.Value);

                cmd.Parameters.AddWithValue("@pinturaDanada", v.pinturaDanada);
                cmd.Parameters.AddWithValue("@idMarca", v.marca.idMarca);
                cmd.Parameters.AddWithValue("@idCliente", v.cliente.idCliente);
                cmd.Parameters.AddWithValue("@ano", v.ano);
                cmd.ExecuteNonQuery();
            }
            catch (SqlException e)
            {
                throw new ApplicationException("Error al actualizar Vehiculo: " + e.Message);
            }
            finally
            {
                con.Close();
            }
        }
Пример #3
0
        public static void EliminarVehiculo(Vehiculo v)
        {
            SqlConnection con = new SqlConnection(cadena);
            try
            {
                con.Open();
                string sql = "DELETE FROM Vehiculos WHERE idVehiculo = @idVehiculo";

                SqlCommand cmd = new SqlCommand();
                cmd.CommandText = sql;
                cmd.Connection = con;
                cmd.Parameters.AddWithValue("@idVehiculo", v.idVehiculo);
                cmd.ExecuteNonQuery();

            }
            catch (SqlException e)
            {
                throw new ApplicationException("Error al eliminar Vehiculo");
            }
            finally
            {
                con.Close();
            }
        }
Пример #4
0
 public static void InsertarVehiculo(Vehiculo v)
 {
     VehiculoDAO.InsertarVehiculo(v);
 }
Пример #5
0
 public static void EliminarVehiculo(Vehiculo v)
 {
     VehiculoDAO.EliminarVehiculo(v);
 }
Пример #6
0
 public static void ActualizarVehiculo(Vehiculo v)
 {
     VehiculoDAO.ActualizarVehiculo(v);
 }
Пример #7
0
        public static List<Reparacion> Obtener(int idVehiculo, int idEstado, decimal totalDesde, decimal totalHasta, string orden)
        {
            List<Reparacion> listaReparaciones = new List<Reparacion>();
            SqlConnection con = new SqlConnection(cadena);
            try
            {
                con.Open();
                SqlCommand cmd = new SqlCommand();
                string sql = "SELECT Reparaciones.idReparacion, Vehiculos.dominio, Clientes.apellido, Clientes.nombre, EstadosReparacion.nombreEstado, Reparaciones.fechaFin, Reparaciones.totalMO";
                //Facturas.numeroFactura, Facturas.fechaFactura, Vehiculos.dominio, Clientes.apellido, Clientes.nombre, Clientes.numeroDocumento, Reparaciones.totalMO, Facturas.total";
                sql += " FROM Reparaciones JOIN Vehiculos ON Reparaciones.idVehiculo = Vehiculos.idVehiculo JOIN Clientes ON Vehiculos.idCliente = Clientes.idCliente ";
                sql += "JOIN EstadosReparacion ON Reparaciones.idEstado = EstadosReparacion.idEstado";

                string where = "";

                if (idVehiculo != 0)
                {
                    where += " AND (Vehiculos.idVehiculo = @idVehiculo)";
                    cmd.Parameters.AddWithValue("@idVehiculo", idVehiculo);
                }
                if (idEstado != 0)
                {
                    where += " AND (EstadosReparacion.idEstado = @idEstado)";
                    cmd.Parameters.AddWithValue("@idEstado", idEstado);
                }

                if (totalDesde > -1 && totalHasta > -1)
                {
                    where += " AND (Reparaciones.totalMO BETWEEN @totalDesde AND @totalHasta)";
                    cmd.Parameters.AddWithValue("@totalDesde", totalDesde);
                    cmd.Parameters.AddWithValue("@totalHasta", totalHasta);
                }
                else
                {
                    if (totalDesde > -1)
                    {
                        where += " AND (Reparaciones.totalMO > @totalDesde)";
                        cmd.Parameters.AddWithValue("@totalDesde", totalDesde);
                    }
                    else
                    {
                        if (totalHasta > -1)
                        {
                            where += " AND (Reparaciones.totalMO < @totalHasta)";
                            cmd.Parameters.AddWithValue("@totalHasta", totalHasta);
                        }
                    }
                }

                if (where != "")
                {
                    sql += " WHERE ";
                    sql += where.Substring(5);
                }
                if(orden != "")
                {
                    sql += " ORDER BY " + orden;
                }
                cmd.CommandText = sql;
                cmd.Connection = con;
                SqlDataReader dr = cmd.ExecuteReader();

                while (dr.Read())
                {

                    Reparacion r = new Reparacion();
                    Vehiculo v = new Vehiculo();
                    Cliente c = new Cliente();
                    EstadoReparacion e = new EstadoReparacion();

                    v.dominio = dr["dominio"].ToString();
                    c.apellido = dr["apellido"].ToString();
                    c.nombre = dr["nombre"].ToString();
                    c.completarNombre();
                    e.nombreEstado = dr["nombreEstado"].ToString();
                    r.idReparacion = (int)dr["idReparacion"];
                    if(dr["fechaFin"] == DBNull.Value)
                    {
                        r.fechaFin = null;
                    }
                    else
                        r.fechaFin = DateTime.Parse(dr["fechaFin"].ToString());
                    r.totalMO = (decimal)dr["totalMO"];

                    v.cliente = c;
                    r.vehiculo = v;
                    r.estadoReparacion = e;

                    listaReparaciones.Add(r);
                }
            }
            catch(SqlException e) {
                throw e;
                    //new ApplicationException("Surgió un porblema al obtener facturas");
            }
            finally
            {
                con.Close();
            }

            return listaReparaciones;
        }
Пример #8
0
        public static List<Reparacion> ObtenerTodas()
        {
            List<Reparacion> listaReparaciones = new List<Reparacion>();
            SqlConnection con = new SqlConnection(cadena);
            try
            {
                con.Open();
                SqlCommand cmd = new SqlCommand();
                string sql = "SELECT Vehiculos.dominio, Clientes.apellido, Clientes.nombre, Reparaciones.idReparacion, Reparaciones.totalMO, EstadosReparacion.nombreEstado";
                sql += " FROM Reparaciones INNER JOIN Vehiculos ON Reparaciones.idVehiculo = Vehiculos.idVehiculo INNER JOIN";
                sql += " EstadosReparacion ON Reparaciones.idEstado = EstadosReparacion.idEstado INNER JOIN Clientes ON Vehiculos.idCliente = Clientes.idCliente";
                sql += " WHERE Reparaciones.idEstado = @idEstado";
                cmd.Parameters.AddWithValue("@idEstado", 3);

                cmd.CommandText = sql;
                cmd.Connection = con;
                SqlDataReader dr = cmd.ExecuteReader();

                while (dr.Read())
                {
                    Reparacion r = new Reparacion();
                    Vehiculo v = new Vehiculo();
                    Cliente c = new Cliente();
                    EstadoReparacion e = new EstadoReparacion();

                    r.idReparacion = (int)dr["idReparacion"];
                    v.dominio = dr["dominio"].ToString();
                    c.apellido = dr["apellido"].ToString();
                    c.nombre = dr["nombre"].ToString();
                    c.completarNombre();
                    r.totalMO = (decimal)dr["totalMO"];
                    e.nombreEstado = dr["nombreEstado"].ToString();

                    r.estadoReparacion = e;
                    v.cliente = c;
                    r.vehiculo = v;

                    listaReparaciones.Add(r);
                }
            }
            catch (SqlException e)
            {
                throw new ApplicationException("Surgió un porblema al obtener reparaciones");
            }
            finally
            {
                con.Close();
            }
            return listaReparaciones;
        }
Пример #9
0
        public static List<Factura> Obtener(DateTime? fechaDesde, DateTime? fechaHasta, int idCliente, decimal totalDesde, decimal totalHasta)
        {
            List<Factura> listaFacturas = new List<Factura>();

            SqlConnection con = new SqlConnection(cadena);
            try
            {
                con.Open();
                SqlCommand cmd = new SqlCommand();
                string sql = "SELECT Facturas.numeroFactura, Facturas.fechaFactura, Vehiculos.dominio, Clientes.apellido, Clientes.nombre, Clientes.numeroDocumento, Reparaciones.totalMO, Facturas.total";
                sql += " FROM Reparaciones JOIN Facturas ON Reparaciones.idReparacion = Facturas.idReparacion JOIN Vehiculos ON Reparaciones.idVehiculo = Vehiculos.idVehiculo JOIN Clientes ON Vehiculos.idCliente = Clientes.idCliente";

                string where = "";

                if (fechaDesde != null && fechaHasta != null)
                {
                    where += " AND (Facturas.fechaFactura BETWEEN @fechaDesde AND @fechaHasta)";
                    cmd.Parameters.AddWithValue("@fechaDesde", fechaDesde);
                    cmd.Parameters.AddWithValue("@fechaHasta", fechaHasta);
                }
                else
                {
                    if (fechaDesde != null)
                    {
                        where += " AND (Facturas.fechaFactura > @fechaDesde)";
                        cmd.Parameters.AddWithValue("@fechaDesde", fechaDesde);
                    }
                    else
                    {
                        if (fechaHasta != null)
                        {
                            where += " AND (Facturas.fechaFactura < @fechaHasta)";
                            cmd.Parameters.AddWithValue("@fechaHasta", fechaHasta);
                        }
                    }
                }

                if (idCliente != 0)
                {
                    where += " AND (Clientes.idCliente = @idCliente)";
                    cmd.Parameters.AddWithValue("@idCliente", idCliente);
                }

                if (totalDesde > -1 && totalHasta > -1)
                {
                    where += " AND (Facturas.total BETWEEN @totalDesde AND @totalHasta)";
                    cmd.Parameters.AddWithValue("@totalDesde", totalDesde);
                    cmd.Parameters.AddWithValue("@totalHasta", totalHasta);
                }
                else
                {
                    if (totalDesde > -1)
                    {
                        where += " AND (Facturas.total > @totalDesde)";
                        cmd.Parameters.AddWithValue("@totalDesde", totalDesde);
                    }
                    else
                    {
                        if (totalHasta > -1)
                        {
                            where += " AND (Facturas.total < @totalHasta)";
                            cmd.Parameters.AddWithValue("@totalHasta", totalHasta);
                        }
                    }
                }

                if (where != "")
                {
                    sql += " WHERE ";
                    sql += where.Substring(5);
                }

                cmd.CommandText = sql;
                cmd.Connection = con;
                SqlDataReader dr = cmd.ExecuteReader();

                while (dr.Read())
                {
                    Factura f = new Factura();
                    Reparacion r = new Reparacion();
                    Vehiculo v = new Vehiculo();
                    Cliente c = new Cliente();

                    f.numeroFactura = (int)dr["numeroFactura"];
                    f.fechaFactura = DateTime.Parse(dr["fechaFactura"].ToString());
                    v.dominio = dr["dominio"].ToString();
                    c.apellido = dr["apellido"].ToString();
                    c.nombre = dr["nombre"].ToString();
                    c.numeroDocumento = (int)dr["numeroDocumento"];
                    c.completarNombre();
                    r.totalMO = (decimal)dr["totalMO"];
                    f.total = (decimal)dr["total"];

                    v.cliente = c;
                    r.vehiculo = v;
                    f.reparacion = r;

                    listaFacturas.Add(f);
                }
            }
            catch (SqlException e)
            {
                throw new ApplicationException("Surgió un porblema al obtener facturas");
            }
            finally
            {
                con.Close();
            }
            return listaFacturas;
        }
Пример #10
0
        public static List<Vehiculo> ObtenerTodos(string orden)
        {
            List<Vehiculo> list = new List<Vehiculo>();
            SqlConnection cn = new SqlConnection();
            cn.ConnectionString = cadena;
            try
            {
                cn.Open();
                SqlCommand cmd = new SqlCommand();
                cmd.Connection = cn;

                string consulta = "SELECT V.idVehiculo, V.dominio, V.km, pinturaDanada, V.idMarca, M.nombreMarca, V.idCliente, C.nombre, C.apellido, V.ano FROM Vehiculos V JOIN Marcas M ON V.idMarca = M.idMarca JOIN Clientes C ON C.idCliente = V.idCliente";
                if(orden != null)
                    consulta += " ORDER BY " + orden;
                cmd.CommandText = consulta;

                SqlDataReader dr = cmd.ExecuteReader();

                while (dr.Read())
                {
                    Vehiculo v = new Vehiculo();
                    v.idVehiculo = (int)dr["idVehiculo"];
                    v.dominio = dr["dominio"].ToString();

                    if (dr["km"] == DBNull.Value) v.km = null;
                    else v.km = (int?)dr["km"];

                    v.pinturaDanada = (Boolean)dr["pinturaDanada"];
                    v.ano = (int)dr["ano"];

                    Marca m = new Marca();
                    m.idMarca = (int)dr["idMarca"];
                    m.nombreMarca = dr["nombreMarca"].ToString();

                    v.marca = m;

                    Cliente c = new Cliente();
                    c.idCliente = (int)dr["idCliente"];
                    c.apellido = dr["apellido"].ToString();
                    c.nombre = dr["nombre"].ToString();
                    c.completarNombre();
                    v.cliente = c;

                    list.Add(v);
                }
            }
            catch(SqlException e) { throw e; }
            finally
            {

                cn.Close();
            }

            return list;
        }
Пример #11
0
        public static Vehiculo ObtenerPorId(int id)
        {
            Vehiculo v = new Vehiculo();

            SqlConnection cn = new SqlConnection();
            cn.ConnectionString = cadena;
            cn.Open();
            SqlCommand cmd = new SqlCommand();
            cmd.Connection = cn;

            string consulta = "SELECT V.idVehiculo, V.dominio, V.km, pinturaDanada, V.idMarca, M.nombreMarca, V.idCliente, C.nombre, C.apellido, V.ano FROM Vehiculos V JOIN Marcas M ON V.idMarca = M.idMarca JOIN Clientes C ON C.idCliente = V.idCliente WHERE V.idVehiculo = @idVehiculo";
            cmd.CommandText = consulta;
            cmd.Parameters.AddWithValue("@idVehiculo", id);

            SqlDataReader dr = cmd.ExecuteReader();

            while (dr.Read())
            {
                v.idVehiculo = (int)dr["idVehiculo"];
                v.dominio = dr["dominio"].ToString();

                if (dr["km"] == DBNull.Value) v.km = null;
                else v.km = (int?)dr["km"];

                v.pinturaDanada = (Boolean)dr["pinturaDanada"];
                v.ano = (int)dr["ano"];

                Marca m = new Marca();
                m.idMarca = (int)dr["idMarca"];
                m.nombreMarca = dr["nombreMarca"].ToString();

                v.marca = m;

                Cliente c = new Cliente();
                c.idCliente = (int)dr["idCliente"];
                c.apellido = dr["apellido"].ToString();
                c.nombre = dr["nombre"].ToString();
                c.completarNombre();
                v.cliente = c;

            }

            dr.Close();
            cn.Close();
            return v;
        }