コード例 #1
0
        public IList <Inmueble> BuscarDesocupados(DateTime i, DateTime f)
        {
            List <Inmueble> res = new List <Inmueble>();
            Inmueble        inm = null;

            using (SqlConnection connection = new SqlConnection(connectionString))
            {
                string sql = $"SELECT i.IdInm, Direccion, CantAmbientes, Tipo, Uso, Costo, i.IdProp, Disponible, " +
                             $"p.Nombre, p.Apellido " +
                             $" FROM Inmuebles i INNER JOIN Contratos c ON i.IdInm = c.IdInm  INNER JOIN Propietarios p ON i.IdProp = p.IdProp " +
                             $" WHERE ( @fechaInicio > FechaCierre) OR (FechaInicio > @fechaCierre) " +
                             $"UNION SELECT i.IdInm, Direccion, CantAmbientes, Tipo, Uso, Costo, i.IdProp, Disponible, p.Nombre, p.Apellido FROM Inmuebles i INNER JOIN Propietarios p ON i.IdProp = p.IdProp WHERE i.IdInm NOT IN (SELECT i.IdInm FROM Inmuebles i INNER JOIN Contratos c ON i.IdInm = c.IdInm) ";

                using (SqlCommand command = new SqlCommand(sql, connection))
                {
                    command.Parameters.Add("@fechaCierre", SqlDbType.DateTime).Value = f;
                    command.Parameters.Add("@fechaInicio", SqlDbType.DateTime).Value = i;
                    command.CommandType = CommandType.Text;
                    connection.Open();
                    var reader = command.ExecuteReader();
                    while (reader.Read())
                    {
                        inm = new Inmueble
                        {
                            IdInm         = reader.GetInt32(0),
                            Direccion     = reader.GetString(1),
                            CantAmbientes = reader.GetInt32(2),
                            Tipo          = reader.GetString(3),
                            Uso           = reader.GetString(4),
                            Costo         = reader.GetDecimal(5),
                            IdProp        = reader.GetInt32(6),
                            Disponible    = reader.GetBoolean(7),
                            Propietario   = new Propietario {
                                Nombre   = reader.GetString(8),
                                Apellido = reader.GetString(9)
                            }
                        };
                        res.Add(inm);
                    }
                    connection.Close();
                }
            }
            return(res);
        }
コード例 #2
0
        public IList <Inmueble> BuscarPorPropietario(int idPropietario)
        {
            List <Inmueble> res      = new List <Inmueble>();
            Inmueble        inmueble = null;

            using (SqlConnection connection = new SqlConnection(connectionStrings))
            {
                string sql = $"SELECT i.Direccion, i.Uso, i.Tipo, i.CantidadHabitaciones,i.Precio,i.Estado, i.IdPropietario, p.Nombre, p.Apellido" +
                             $" FROM Inmuebles i INNER JOIN Propietarios p ON i.IdPropietario = p.IdPropietario" +
                             $" WHERE IdPropietario=@idPropietario";
                using (SqlCommand command = new SqlCommand(sql, connection))
                {
                    command.Parameters.Add("@idPropietario", SqlDbType.Int).Value = idPropietario;
                    command.CommandType = CommandType.Text;
                    connection.Open();
                    var reader = command.ExecuteReader();
                    while (reader.Read())
                    {
                        inmueble = new Inmueble
                        {
                            IdInmueble           = reader.GetInt32(0),
                            Direccion            = reader["Direccion"].ToString(),
                            Uso                  = reader["Uso"].ToString(),
                            Tipo                 = reader["Tipo"].ToString(),
                            CantidadHabitaciones = Convert.ToInt32(reader["CantidadHabitaciones"]),
                            Precio               = Convert.ToDecimal(reader["Precio"]),
                            Estado               = reader["Estado"].ToString(),
                            IdPropietario        = reader.GetInt32(6),
                            Duenio               = new Propietario
                            {
                                IdPropietario = reader.GetInt32(6),
                                Nombre        = reader.GetString(7),
                                Apellido      = reader.GetString(8),
                            }
                        };
                        res.Add(inmueble);
                    }
                    connection.Close();
                }
            }
            return(res);
        }
コード例 #3
0
        public int NoDisponible(Inmueble inm)
        {
            int i = -1;

            using (SqlConnection connection = new SqlConnection(connectionString))
            {
                string sql = $"UPDATE Inmuebles SET Disponible= {0} " +
                             $"WHERE IdInm = @id";
                using (SqlCommand command = new SqlCommand(sql, connection))
                {
                    //command.Parameters.AddWithValue("@disponible", inm.Disponible);
                    command.Parameters.AddWithValue("@id", inm.IdInm);
                    command.CommandType = CommandType.Text;
                    connection.Open();
                    i = command.ExecuteNonQuery();
                    connection.Close();
                }
            }
            return(i);
        }
コード例 #4
0
        public IList <Inmueble> BuscarPorPropietario(int idProp)
        {
            List <Inmueble> res = new List <Inmueble>();
            Inmueble        inm = null;

            using (SqlConnection connection = new SqlConnection(connectionString))
            {
                string sql = $"SELECT IdInm, Direccion, CantAmbientes, Tipo, Uso, Costo, i.IdProp, Disponible, p.Nombre, p.Apellido" +
                             $" FROM Inmuebles i INNER JOIN Propietarios p ON i.IdProp = p.IdProp" +
                             $" WHERE i.IdProp=@idPropietario";
                using (SqlCommand command = new SqlCommand(sql, connection))
                {
                    command.Parameters.Add("@idPropietario", SqlDbType.Int).Value = idProp;
                    command.CommandType = CommandType.Text;
                    connection.Open();
                    var reader = command.ExecuteReader();
                    while (reader.Read())
                    {
                        inm = new Inmueble
                        {
                            IdInm         = reader.GetInt32(0),
                            Direccion     = reader.GetString(1),
                            CantAmbientes = reader.GetInt32(2),
                            Tipo          = reader.GetString(3),
                            Uso           = reader.GetString(4),
                            Costo         = reader.GetDecimal(5),
                            IdProp        = reader.GetInt32(6),
                            Disponible    = reader.GetBoolean(7),
                            Propietario   = new Propietario
                            {
                                Nombre   = reader.GetString(8),
                                Apellido = reader.GetString(9)
                            }
                        };
                        res.Add(inm);
                    }
                    connection.Close();
                }
            }
            return(res);
        }
コード例 #5
0
        public IList <Inmueble> ObtenerTodos()
        {
            IList <Inmueble> res = new List <Inmueble>();

            using (SqlConnection connection = new SqlConnection(connectionString))
            {
                string sql = $"SELECT IdInm, Direccion, CantAmbientes, Tipo, Uso, Costo, i.IdProp, Disponible," +
                             $" p.Nombre, p.Apellido" +
                             $" FROM Inmuebles i INNER JOIN Propietarios p ON i.IdProp = p.IdProp";
                using (SqlCommand command = new SqlCommand(sql, connection))
                {
                    command.CommandType = CommandType.Text;
                    connection.Open();
                    var reader = command.ExecuteReader();
                    while (reader.Read())
                    {
                        Inmueble inm = new Inmueble
                        {
                            IdInm         = reader.GetInt32(0),
                            Direccion     = reader.GetString(1),
                            CantAmbientes = reader.GetInt32(2),
                            Tipo          = reader.GetString(3),
                            Uso           = reader.GetString(4),
                            Costo         = reader.GetDecimal(5),
                            IdProp        = reader.GetInt32(6),
                            Disponible    = reader.GetBoolean(7),
                            Propietario   = new Propietario
                            {
                                //IdProp = reader.GetInt32(8),
                                Nombre   = reader.GetString(8),
                                Apellido = reader.GetString(9),
                            }
                        };
                        res.Add(inm);
                    }
                    connection.Close();
                }
            }
            return(res);
        }
コード例 #6
0
        public IList <Inmueble> ObtenerTodos()
        {
            IList <Inmueble> res = new List <Inmueble>();

            using (SqlConnection connection = new SqlConnection(connectionStrings))
            {
                string sql = $"SELECT i.IdInmueble, i.Direccion, i.Uso, i.Tipo, i.CantidadHabitaciones,i.Precio,i.Estado, i.IdPropietario, p.Nombre, p.Apellido FROM Inmuebles i INNER JOIN Propietarios p ON i.IdPropietario = p.IdPropietario";

                using (SqlCommand command = new SqlCommand(sql, connection))
                {
                    command.CommandType = CommandType.Text;
                    connection.Open();
                    var reader = command.ExecuteReader();
                    while (reader.Read())
                    {
                        Inmueble inm = new Inmueble
                        {
                            IdInmueble           = reader.GetInt32(0),
                            Direccion            = reader["Direccion"].ToString(),
                            Uso                  = reader["Uso"].ToString(),
                            Tipo                 = reader["Tipo"].ToString(),
                            CantidadHabitaciones = Convert.ToInt32(reader["CantidadHabitaciones"]),
                            Precio               = Convert.ToDecimal(reader["Precio"]),
                            Estado               = reader["Estado"].ToString(),
                            IdPropietario        = reader.GetInt32(7),
                            Duenio               = new Propietario
                            {
                                IdPropietario = reader.GetInt32(7),
                                Nombre        = reader.GetString(8),
                                Apellido      = reader.GetString(9)
                            }
                        };
                        res.Add(inm);
                    }
                    connection.Close();
                }
            }
            return(res);
        }
コード例 #7
0
        public int Alta(Inmueble inmueble)
        {
            int res = -1;

            using (SqlConnection connection = new SqlConnection(connectionStrings))
            {
                string sql = $"INSERT INTO Inmuebles (Direccion, Uso, Tipo, CantidadHabitaciones,Precio,Estado, IdPropietario)" +
                             $"VALUES ('{inmueble.Direccion}','{inmueble.Uso}','{inmueble.Tipo}',{inmueble.CantidadHabitaciones}," +
                             $"{inmueble.Precio},'{inmueble.Estado}',{inmueble.IdPropietario})";

                using (SqlCommand command = new SqlCommand(sql, connection))
                {
                    command.CommandType = CommandType.Text;
                    connection.Open();
                    res = command.ExecuteNonQuery();
                    command.CommandText = "SELECT SCOPE_IDENTITY()";
                    var id = command.ExecuteScalar();
                    inmueble.IdInmueble = Convert.ToInt32(id);
                    connection.Close();
                }
            }
            return(res);
        }