示例#1
0
        public List <TeamDTO> FindAllTeams()
        {
            var result = SQLConnection.ExecuteSearchQuery($"SELECT * FROM Teams");

            return(GenerateDTOsFromRows(result));
        }
        public Werknemer CheckLoginCode(string inlogCodeHash)
        {
            Werknemer werknemer = null;

            SqlConnection verbinding = null;
            SqlDataReader reader     = null;

            //als er in deze fase een error optreed heeft dit altijd met de internetverbinding te maken
            try
            {
                verbinding = SQLConnection.OpenConnectieDB();

                StringBuilder sb = new StringBuilder();
                sb.Append("SELECT werknemerId, voornaam, achternaam, functieId ");
                sb.Append("FROM [dbo].[Werknemer] ");
                sb.Append("WHERE passwordHash LiKE @passwordHash");

                SqlCommand command = new SqlCommand
                {
                    Connection  = verbinding,
                    CommandText = sb.ToString()
                };

                SqlParameter passwordHashParam = new SqlParameter("@passwordHash", System.Data.SqlDbType.Char, 64);
                command.Parameters.Add(passwordHashParam);
                passwordHashParam.Value = inlogCodeHash;
                command.Prepare();

                reader = command.ExecuteReader();
            }
            catch
            {
                throw new Exceptions.NetworkProblemException();
            }


            try
            {
                //geen werknemer gevonden? doorgaan na de catch
                if (reader.Read())
                {
                    werknemer = new Werknemer
                    {
                        WerknemersId   = Convert.ToInt32(reader["werknemerId"]),
                        Voornaam       = Convert.ToString(reader["voornaam"]),
                        Achternaam     = Convert.ToString(reader["achternaam"]),
                        WerknemersType = (Enums.WerknemersType)Convert.ToInt32(reader["functieId"])
                    };
                }
            }
            //indien er wel een match gevonden is maar de conversie een error oplevert
            catch
            {
                werknemer = null;
                throw new Exceptions.DatabaseErrorException();
            }

            verbinding.Close();

            //return de ingelogde gebruiker indien ww correct, return null indien ww niet correct
            return(werknemer);
        }
        public List <Model.BestellingItem> BestellingDoneOphalen()
        {
            Barman_DAL bestellingen = null;

            SqlConnection verbinding = null;
            SqlDataReader reader     = null;

            //als er in deze fase een error optreed heeft dit altijd met de internetverbinding te maken
            try
            {
                verbinding = SQLConnection.OpenConnectieDB();

                StringBuilder sb = new StringBuilder();

                sb.Append("SELECT BI.aantal, MI.naam, BI.besteltijd, GK.tafelId, W.voornaam, BI.status, BI.itemId ");
                sb.Append("FROM dbo.BestellingItem AS BI ");
                sb.Append("JOIN  MenuItem AS MI ON BI.itemId = MI.itemId ");
                sb.Append("JOIN GroepKlanten AS GK ON BI.rekeningId = GK.rekeningId ");
                sb.Append("JOIN Werknemer AS W ON GK.werknemerId = W.werknemerId ");
                sb.Append("WHERE (BI.status = 2) AND (MI.categorieId = 1 OR MI.categorieId = 2) ");
                sb.Append("ORDER BY BI.besteltijd ");

                SqlCommand command = new SqlCommand
                {
                    Connection  = verbinding,
                    CommandText = sb.ToString()
                };

                reader = command.ExecuteReader();
            }

            catch
            {
                throw new Exceptions.NetworkProblemException();
            }

            List <Model.BestellingItem> bestellingen_lijst = new List <Model.BestellingItem>();

            try
            {
                //geen werknemer gevonden? doorgaan na de catch


                while (reader.Read())
                {
                    BestellingItem bestellingenitem = new BestellingItem();
                    bestellingenitem.itemId = Convert.ToInt32(reader["itemId"]);
                    bestellingenitem.SetAantal(Convert.ToInt32(reader["aantal"]));
                    bestellingenitem.SetNaam(Convert.ToString(reader["naam"]));
                    bestellingenitem.SetBesteltijd(Convert.ToDateTime(reader["besteltijd"]));
                    bestellingenitem.SetTafelId(Convert.ToInt32(reader["tafelid"]));
                    bestellingenitem.SetWerknemerId(Convert.ToString(reader["voornaam"]));
                    bestellingenitem.SetStatus(Convert.ToInt32(reader["status"]));

                    bestellingen_lijst.Add(bestellingenitem);
                }
            }
            //indien er wel een match gevonden is maar de conversie een error oplevert
            catch
            {
                bestellingen = null;
                throw new Exceptions.DatabaseErrorException();
            }

            verbinding.Close();

            //return de bestelling lijst
            return(bestellingen_lijst);
        }
        public List <TeBezorgenBestelling> GetTeBezorgenBestellingen(Werknemer werknemer)
        {
            List <TeBezorgenBestelling> teBezorgenBestellingenLijst = new List <TeBezorgenBestelling>();

            SqlConnection verbinding = null;
            SqlDataReader reader     = null;

            //als er in deze fase een error optreed heeft dit altijd met de internetverbinding te maken
            try
            {
                verbinding = SQLConnection.OpenConnectieDB();

                StringBuilder sb = new StringBuilder();
                sb.Append("SELECT gk.tafelId AS tafelnummer, mi.naam AS item, mi.categorieId AS ophaalplaats, ");
                sb.Append("bi.rekeningId AS rekeningId, bi.aantal as aantal, bi.itemId as itemId ");
                sb.Append("FROM BestellingItem as bi ");
                sb.Append("JOIN MenuItem as mi on mi.itemId = bi.itemId ");
                sb.Append("JOIN Groepklanten as gk on bi.rekeningId = gk.rekeningId ");
                sb.Append("WHERE bi.status = 2 AND gk.werknemerId = @werknemerId ");
                sb.Append("ORDER BY bi.besteltijd ");

                SqlCommand command = new SqlCommand
                {
                    Connection  = verbinding,
                    CommandText = sb.ToString()
                };

                SqlParameter werknemerIdParm = new SqlParameter("@werknemerId", System.Data.SqlDbType.Int);
                command.Parameters.Add(werknemerIdParm);
                werknemerIdParm.Value = werknemer.WerknemersId;

                command.Prepare();

                reader = command.ExecuteReader();
            }
            catch
            {
                throw new Exceptions.NetworkProblemException();
            }

            try
            {
                while (reader.Read())
                {
                    TeBezorgenBestelling teBezorgenBestelling = new TeBezorgenBestelling
                    {
                        TafelNummer  = Convert.ToInt32(reader["tafelnummer"]),
                        Item         = Convert.ToString(reader["item"]),
                        Ophaalplaats = Convert.ToString(reader["ophaalplaats"]),
                        Aantal       = Convert.ToInt32(reader["aantal"]),
                        RekeningId   = Convert.ToInt32(reader["rekeningId"]),
                        ItemId       = Convert.ToInt32(reader["itemId"])
                    };

                    teBezorgenBestellingenLijst.Add(teBezorgenBestelling);
                }
            }
            catch
            {
                throw new Exceptions.DatabaseErrorException();
            }

            return(teBezorgenBestellingenLijst);
        }