예제 #1
0
        //Har lige brug for at lave en metode til at tjekke om en bolig er solgt, du er velkommen til at lave din egen og slette denne :)
        //niklas
        public static bool TjekBoligSolgt(Bolig b)
        {
            var ErSolgt = false;

            try
            {
                using (SqlConnection conn = new SqlConnection(DBHelper.ConnString))
                {
                    conn.Open();
                    SqlDataReader dataReader;
                    using (SqlCommand command = new SqlCommand("select * from bolig inner join solgtbolig on solgtbolig.boligid = bolig.id where id = " + b.ID, conn))
                    {
                        dataReader = command.ExecuteReader();
                        if (dataReader.HasRows)
                        {
                            ErSolgt = true;
                        }
                    }
                }
            }
            catch (SqlException e)
            {
                MessageBox.Show(e.Message);
            }
            return(ErSolgt);
        }
예제 #2
0
        public static bool Delete(Bolig b)
        {
            bool success = false;

            try
            {
                DBHelper.Conn.Open();
            }
            catch
            {
                System.Windows.Forms.MessageBox.Show("DB forbindelse kunne ikke åbnes");
            }


            using (SqlCommand cmd = new SqlCommand())
            {
                string query = $" DELETE FROM Bolig " +
                               $"WHERE ID = {b.ID}";

                cmd.Connection  = DBHelper.Conn;
                cmd.CommandText = query;
                try
                {
                    cmd.ExecuteNonQuery();
                    success = true;
                }
                catch (Exception e)
                {
                    System.Diagnostics.Debug.WriteLine(e);
                }
            }

            DBHelper.Conn.Close();
            return(success);
        }
예제 #3
0
 public void AddBoligToList(Bolig bolig)
 {
     boliger.Add(bolig);
     //Note til senere
     //MessageBox.Show("Ny bolig tilføjet til liste i BoligViewModel. Husk at opdatere listen I"
     //          + " UI laget via FillListView eller DisplaySearchResults. Denne messagebox kan slettes når det er gjort");
     //FillListView(boliger);
 }
예제 #4
0
 public void Edit(BoligDetails d, Bolig b)
 {
     //Get Ejendomsmægler knyttet til bolig
     ValgtEmægler = EjendomsmæglerTabelDB.GetEjendomsmægler(b.EjendomsmæglerID);
     ValgtSælger  = KundeDBTabel.GetSælger(b.SælgerID);
     ValgtBolig   = b;
     //Details.Show();
     d.InitializeEditMode();
 }
예제 #5
0
 public SælgBolig(Bolig b, BoligDetails instans, BoligViewModel bview)
 {
     InitializeComponent();
     parent     = instans;
     ViewModel  = new SælgBoligViewModel();
     ValgtBolig = b;
     Start();
     BoligView = bview;
 }
예제 #6
0
        public void SælgBoligToFront(Bolig b, BoligDetails instans)
        {
            var S = new SælgBolig(b, instans, ViewModel);

            if (!panelContent.Controls.Contains(S))
            {
                panelContent.Controls.Add(S);
            }
            S.BringToFront();
        }
예제 #7
0
 private static void AddValueToParametersFromBolig(Bolig boligWithValues, SqlCommand cmd)
 {
     cmd.Parameters.AddWithValue("@Adresse", boligWithValues.Adresse);
     cmd.Parameters.AddWithValue("@Pris", boligWithValues.Pris);
     cmd.Parameters.AddWithValue("@SælgerID", boligWithValues.SælgerID);
     cmd.Parameters.AddWithValue("@Kvm", boligWithValues.Kvm);
     cmd.Parameters.AddWithValue("@OprettelsesDato", boligWithValues.OprettelsesDato);
     cmd.Parameters.AddWithValue("@EjendomsmæglerID", boligWithValues.EjendomsmæglerID);
     cmd.Parameters.AddWithValue("@PostNr", boligWithValues.PostNr);
 }
예제 #8
0
        public static bool Update(Bolig b)
        {
            bool success = false;


            try
            {
                DBHelper.Conn.Open();
            }
            catch
            {
                System.Windows.Forms.MessageBox.Show("DB forbindelse kunne ikke åbnes");
            }



            using (SqlCommand cmd = new SqlCommand())
            {
                string query = " UPDATE Bolig ";
                query += $" SET Adresse = @Adresse, " +
                         $" Pris = @Pris, " +
                         $" SælgerID = @SælgerID, " +
                         $" Kvm = @Kvm, " +
                         $" OprettelsesDato = @OprettelsesDato, " +
                         $" EjendomsmæglerID = @EjendomsmæglerID, " +
                         $" PostNr = @PostNr " +
                         $" WHERE ID = {b.ID}";//ingen parameters på id, da den aldrig opdateres og er intern sat
                cmd.CommandText = query;
                cmd.Connection  = DBHelper.Conn;

                AddValueToParametersFromBolig(b, cmd);


                try
                {
                    cmd.ExecuteNonQuery();
                    success = true;
                }
                catch (Exception e)
                {
                    System.Diagnostics.Debug.WriteLine(e);
                }
            }



            DBHelper.Conn.Close();
            return(success);
        }
예제 #9
0
        private static Bolig GetBoligFromReader(SqlDataReader reader)
        {
            int      iD               = Convert.ToInt32(reader["ID"]);
            string   adresse          = Convert.ToString(reader["Adresse"]);
            double   pris             = Convert.ToDouble(reader["Pris"]);
            int      sælgerId         = Convert.ToInt32(reader["SælgerID"]);
            int      kvm              = Convert.ToInt32(reader["Kvm"]);
            DateTime oprettelsesDato  = Convert.ToDateTime(reader["oprettelsesDato"]);
            int      EjendomsmæglerId = Convert.ToInt32(reader["EjendomsmæglerID"]);
            int      postNr           = Convert.ToInt32(reader["PostNr"]);

            Bolig bolig = new Bolig(iD, adresse, pris, sælgerId, kvm, oprettelsesDato, EjendomsmæglerId, postNr);

            return(bolig);
        }
예제 #10
0
        public void SaveEdit(Bolig b, double d)
        {
            double formerPrice = b.Pris; //til reversering af opdatering I objektet hvis database operation fejler

            b.UpdatePris(d);
            if (BoligTabelDB.Update(b))
            {
                MessageBox.Show("Opdatering successfuld");
            }
            else
            {
                MessageBox.Show("Opdatering fejlede");
                b.UpdatePris(formerPrice); //reversering af objekt
            }
        }
예제 #11
0
        public bool Delete(Bolig b)
        {
            bool returnBool = false;

            if (BoligTabelDB.Delete(b)) //Vis deletion lykkes
            {
                returnBool = true;
                boliger.Remove(b);
            }
            else
            {
                returnBool = false;
            }
            return(returnBool);
        }
예제 #12
0
        public SolgtBolig SælgBolig(Bolig b, int køberId, double købsPris, DateTime købsDato)
        {
            var solgtbolig = new SolgtBolig();

            solgtbolig.Adresse          = b.Adresse;
            solgtbolig.EjendomsmæglerID = b.EjendomsmæglerID;
            solgtbolig.ID              = b.ID;
            solgtbolig.Kvm             = b.Kvm;
            solgtbolig.OprettelsesDato = b.OprettelsesDato;
            solgtbolig.PostNr          = b.PostNr;
            solgtbolig.Pris            = b.Pris;
            solgtbolig.SælgerID        = b.SælgerID;
            solgtbolig.KøberID         = køberId;
            solgtbolig.KøbsPris        = købsPris;
            solgtbolig.KøbsDato        = købsDato;
            return(solgtbolig);
        }
예제 #13
0
        public static Bolig Create(Bolig b)
        {
            try
            {
                DBHelper.Conn.Open();
            }
            catch
            {
                System.Diagnostics.Debug.WriteLine("Databasen kunne ikke åbnes");
            }



            using (SqlCommand cmd = new SqlCommand())
            {
                string query = " INSERT INTO Bolig( Adresse, Pris, SælgerID, Kvm, OprettelsesDato, EjendomsmæglerID, PostNr) ";
                query += $" VALUES ( @Adresse, @Pris, @SælgerID, @Kvm, @OprettelsesDato, @EjendomsmæglerID, @PostNr )";

                cmd.Connection  = DBHelper.Conn;
                cmd.CommandText = query;


                AddValueToParametersFromBolig(b, cmd);



                try
                {
                    cmd.ExecuteNonQuery();
                }
                catch (Exception e)
                {
                    System.Diagnostics.Debug.WriteLine(e);
                }
            }

            // get the id (autoincremented from DB):
            int nyBoligId = DBHelper.GetNewestIdFromTabel("Bolig", DBHelper.Conn);

            Bolig nyBolig = new Bolig(nyBoligId, b.Adresse, b.Pris, b.SælgerID, b.Kvm, b.OprettelsesDato, b.EjendomsmæglerID, b.PostNr);

            b = nyBolig;//skal vi bruge denne istedet for at returne en Bolig?

            DBHelper.Conn.Close();
            return(nyBolig);
        }
예제 #14
0
        public void SaveNewBolig(string adresse, double pris, int areal, DateTime opretDato, int postNr)
        {
            if (valgtEmægler != null) //Overflødigt tjek. Dette bliver tjekket i Details nu
            {
                int ejendomsmæglerID = valgtEmægler.Id;
                int sælgerID         = valgtSælger.Id;

                //Ny bolig der skal gemmes
                Bolig newBolig = new Bolig(adresse, pris, sælgerID, areal, opretDato, ejendomsmæglerID, postNr);
                newBolig = BoligTabelDB.Create(newBolig); //Create() returnerer en ny bolig med samme værdier der også har den id tildelt af databasen
                AddBoligToList(newBolig);
            }
            else //Overflødig, dette tjek sker i Details nu
            {
                MessageBox.Show("Fejl, har du husket at tilføje en ejendomsmægler?");
            }
        }
예제 #15
0
        public static List <Bolig> GetAllNotSold()
        {
            List <Bolig> boliger = new List <Bolig>();


            try
            {
                DBHelper.Conn.Open();
            }
            catch
            {
                //could not open database
                System.Windows.Forms.MessageBox.Show("DB forbindelse kunne ikke åbnes");
            }

            using (SqlCommand cmd = new SqlCommand())
            {
                cmd.Connection  = DBHelper.Conn;
                cmd.CommandText = GetAllNotSoldQuery;


                using (SqlDataReader reader = cmd.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        Bolig bolig = GetBoligFromReader(reader);
                        boliger.Add(bolig);
                    }
                }
            }



            DBHelper.Conn.Close();
            return(boliger);
        }
예제 #16
0
 internal void SælgBolig(Bolig b, BoligDetails instans)
 {
     view.SælgBoligToFront(b, instans);
 }
예제 #17
0
 //Nichlas
 //internal void MarkerSolgt()
 internal bool TjekBoligSolgt(Bolig selectedBolig)
 {
     return(BoligTabelDB.TjekBoligSolgt(ValgtBolig));
 }