protected async void HandleValidSubmit()
        {
            if (UserManager.Users.FirstOrDefault(u => u.Email.ToLower().Equals(_beheerderFormModel.Email)) is null)
            {
                _userAlreadyExists = false;

                Beheerder beheerder = new Beheerder(_beheerderFormModel.Email);
                beheerder.Entiteiten.AddRange(_beheerderFormModel.Entiteiten.Where(e => e.BoolProperty.Equals(true)).Select(e => new EntiteitBeheerder {
                    EntiteitId = e.Entiteit.Id, Beheerder = beheerder
                }));
                BeheerderRepository.VoegToe(beheerder);

                IdentityUser beheerderUser = new IdentityUser {
                    UserName = beheerder.Email, Email = beheerder.Email
                };
                await UserManager.CreateAsync(beheerderUser);

                await UserManager.AddClaimAsync(beheerderUser, new Claim(ClaimTypes.Role, "beheerder"));

                Navigation.NavigateTo("/Admin/Beheerder/Overzicht/Create");
            }
            else
            {
                _userAlreadyExists = true;
            }
        }
示例#2
0
        public Beheerder GetAdmin(string gebruikersnaam, string wachtwoord)
        {
            Connection    c    = new Connection();
            SqlConnection conn = c.conn();
            SqlCommand    cmd  = new SqlCommand("SELECT * FROM Gebruiker INNER JOIN Beheerder ON Gebruiker.ID = Beheerder.GebruikersID Where Gebruikersnaam = @Name AND Wachtwoord = @Password", conn);

            cmd.Parameters.AddWithValue("@Name", gebruikersnaam);
            cmd.Parameters.AddWithValue("@Password", gebruikersnaam);
            DataTable      dt = new DataTable();
            SqlDataAdapter da = new SqlDataAdapter(cmd);

            da.Fill(dt);
            cmd.Connection.Open();
            cmd.ExecuteNonQuery();
            cmd.Connection.Close();
            if (dt.Rows.Count > 0)
            {
                DataRow   dr = dt.Rows[0];
                Beheerder b  = new Beheerder(dr.Field <int>(0), dr.Field <string>(1), dr.Field <string>(2), dr.Field <int>(3));
                return(b);
            }
            else
            {
                return(null);
            }
        }
示例#3
0
        public Gebruiker Inloggen(string gebruikersnaam, string wachtwoord)
        {
            Gebruiker gebruiker = null;

            Connect();
            try
            {
                string query = "SELECT * FROM Gebruiker WHERE gebruikersnaam = @Gebruiker AND Wachtwoord = @Wachtwoord";
                using (command = new SqlCommand(query, sQLcon))
                {
                    command.Parameters.AddWithValue("@Gebruiker", gebruikersnaam);
                    command.Parameters.AddWithValue("@Wachtwoord", EncryptString(wachtwoord));
                    reader = command.ExecuteReader();

                    while (reader.Read())
                    {
                        if (reader["GebruikerType"].ToString().ToLower() == "bezoeker")
                        {
                            gebruiker = new Bezoeker();
                        }
                        else if (reader["GebruikerType"].ToString().ToLower() == "beheerder")
                        {
                            gebruiker = new Beheerder();
                        }
                        else if (reader["GebruikerType"].ToString().ToLower() == "medewerker")
                        {
                            gebruiker = new Medewerker();
                        }

                        gebruiker.ID             = Convert.ToInt32(reader["ID"]);
                        gebruiker.Gebruikersnaam = reader["Gebruikersnaam"].ToString();
                        gebruiker.Wachtwoord     = reader["Wachtwoord"].ToString();
                        gebruiker.Voornaam       = reader["Voornaam"].ToString();

                        if (reader["Tussenvoegsel"].GetType() != typeof(DBNull))
                        {
                            gebruiker.Tussenvoegsel = reader["Tussenvoegsel"].ToString();
                        }

                        gebruiker.Achternaam = reader["Achternaam"].ToString();
                        if (Convert.ToInt32(reader["Aanwezig"]) == 1)
                        {
                            gebruiker.Aanwezig = true;
                        }
                        else
                        {
                            gebruiker.Aanwezig = false;
                        }
                    }
                }
            }
            catch (Exception e)
            {
                throw new FoutBijUitvoerenQueryException(e.Message);
            }

            Close();
            return(gebruiker);
        }
        protected override void OnInitialized()
        {
            base.OnInitialized();
            _beheerder   = BeheerderRepository.GetByEmail(UserManager.GetUserName(HttpContextAccessor.HttpContext.User));
            _afwezigheid = AfwezigheidRepository.GetById(long.Parse(Id2));

            _editContext = new EditContext(_afwezigheid);
        }
示例#5
0
        public void Retrieve()
        {
            BeheerderSqlContext bsc = new BeheerderSqlContext();
            BeheerderRepository br  = new BeheerderRepository(bsc);

            Beheerder b = br.GetById(4);

            Assert.IsTrue(b.Id == 4);
        }
 protected override void OnInitialized()
 {
     base.OnInitialized();
     _beheerder = BeheerderRepository.GetByEmail(UserManager.GetUserName(HttpContextAccessor.HttpContext.User));
     if (Id is null)
     {
         _id = _beheerder.Entiteiten.OrderBy(e => e.Entiteit.Entiteitsnaam).FirstOrDefault().EntiteitId;
     }
 }
示例#7
0
 public void VoegToe(Beheerder beheerder)
 {
     if (_beheerders.Any(b => b.Email.ToLower().Equals(beheerder.Email)))
     {
         throw new ArgumentException("Email van beheerder moet uniek zijn.");
     }
     _context.Beheerders.Add(beheerder);
     _context.SaveChanges();
 }
示例#8
0
 public ActionResult Edit([Bind(Include = "beheerder_id,voornaam,achternaam,gebruikersnaam,wachtwoord")] Beheerder beheerder)
 {
     if (ModelState.IsValid)
     {
         db.Entry(beheerder).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(beheerder));
 }
示例#9
0
        public void Verwijder(long id)
        {
            Beheerder beheerder = Beheerders.FirstOrDefault(e => e.Id.Equals(id));

            if (!(beheerder is null))
            {
                _context.Beheerders.Remove(beheerder);
                _context.SaveChanges();
            }
        }
        public List <Beheerder> GetAllBeheerders()
        {
            var returnList = new List <Beheerder>();

            try
            {
                using (var con = new SqlConnection(Env.ConnectionString))
                {
                    var query = "SELECT Gebruiker.* FROM Beheerder INNER JOIN Gebruiker ON Beheerder.GebruikerId = Gebruiker.Id";
                    var cmd   = new SqlCommand(query, con);
                    con.Open();
                    var reader = cmd.ExecuteReader();

                    while (reader.Read())
                    {
                        var foto = "";

                        if (!reader.IsDBNull(1))
                        {
                            foto = reader.GetString(1);
                        }

                        Beheerder b = new Beheerder(
                            reader.GetInt32(0),
                            foto,
                            reader.GetString(2),
                            reader.GetString(3),
                            reader.GetString(4),
                            reader.GetString(5),
                            reader.GetDateTime(6),
                            Convert.ToBoolean(reader.GetInt32(7)),
                            Convert.ToBoolean(reader.GetInt32(8)),
                            Convert.ToBoolean(reader.GetInt32(9)),
                            reader.GetString(10),
                            reader.GetString(12),
                            reader.GetString(13),
                            reader.GetString(14),
                            reader.GetString(15),
                            (Geslacht)Enum.Parse(typeof(Geslacht), reader.GetString(16)));

                        returnList.Add(b);
                    }

                    con.Close();
                }

                return(returnList);
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                throw;
            }
        }
        public Beheerder GetBeheerderById(int id)
        {
            Beheerder returnBeheerder = null;

            try
            {
                using (var con = new SqlConnection(Env.ConnectionString))
                {
                    var query = "SELECT Gebruiker.* FROM Beheerder INNER JOIN Gebruiker ON Beheerder.GebruikerId = Gebruiker.Id where Id = @key";
                    var cmd   = new SqlCommand(query, con);
                    con.Open();

                    cmd.Parameters.AddWithValue("@key", id);
                    var reader = cmd.ExecuteReader();

                    while (reader.Read())
                    {
                        var foto = "";

                        if (!reader.IsDBNull(1))
                        {
                            foto = reader.GetString(1);
                        }
                        returnBeheerder = new Beheerder(
                            reader.GetInt32(0),
                            foto,
                            reader.GetString(2),
                            reader.GetString(3),
                            reader.GetString(4),
                            reader.GetString(5),
                            reader.GetDateTime(6),
                            Convert.ToBoolean(reader.GetInt32(7)),
                            Convert.ToBoolean(reader.GetInt32(8)),
                            Convert.ToBoolean(reader.GetInt32(9)),
                            reader.GetString(10),
                            reader.GetString(12),
                            reader.GetString(13),
                            reader.GetString(14),
                            reader.GetString(15),
                            (Geslacht)Enum.Parse(typeof(Geslacht), reader.GetString(16)));
                    }

                    con.Close();
                }

                return(returnBeheerder);
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                throw;
            }
        }
示例#12
0
 //Edit
 public ActionResult Edit()
 {
     if (User.Identity.IsAuthenticated)
     {
         int       userId      = Convert.ToInt32(User.Identity.GetUserId());
         Beheerder currentUser = db.Beheerders.First(b => b.beheerder_id == userId);
         return(View(currentUser));
     }
     else
     {
         return(RedirectToAction("Login", "Account"));
     }
 }
示例#13
0
        public void addBeheerderToDB(Beheerder beh)
        {
            //de connectie met de databank maken
            MySqlConnection conn = new MySqlConnection(_connectionString);

            //Het SQL-commando definiëren
            string       opdracht = "INSERT INTO studiepunten.beheerder(Naam, Paswoord) VALUES('" + beh.BeheerdersNaam + "', '" + beh.BeheerdersWachtWoord + "');";
            MySqlCommand cmd      = new MySqlCommand(opdracht, conn);

            conn.Open();
            cmd.ExecuteNonQuery();
            conn.Close();
        }
示例#14
0
        public ActionResult Create([Bind(Include = "beheerder_id,voornaam,achternaam,gebruikersnaam,wachtwoord")] Beheerder beheerder)
        {
            if (ModelState.IsValid)
            {
                db.Beheerders.Add(beheerder);
                db.SaveChanges();

                SignIn(beheerder.beheerder_id.ToString(), beheerder.gebruikersnaam);
                return(RedirectToAction("Index", "Home"));
            }

            return(View(beheerder));
        }
示例#15
0
        public Gebruiker GetGebruikerByGebruikersnaam(string gebruikersnaam)
        {
            Connect();
            try
            {
                string query = "SELECT * FROM Gebruiker WHERE Gebruikersnaam = @GEBRUIKERSNAAM";
                using (command = new SqlCommand(query, SQLcon))
                {
                    command.Parameters.Add(new SqlParameter("@GEBRUIKERSNAAM", gebruikersnaam));
                    reader = command.ExecuteReader();

                    while (reader.Read())
                    {
                        if (reader["GebruikerType"].ToString().ToLower() == "bezoeker")
                        {
                            gebruiker = new Bezoeker();
                        }
                        else if (reader["GebruikerType"].ToString().ToLower() == "beheerder")
                        {
                            gebruiker = new Beheerder();
                        }
                        else if (reader["GebruikerType"].ToString().ToLower() == "medewerker")
                        {
                            gebruiker = new Medewerker();
                        }
                        gebruiker.ID             = Convert.ToInt32(reader["ID"]);
                        gebruiker.RFID           = Convert.ToInt32(reader["RFID"]);
                        gebruiker.Gebruikersnaam = reader["Gebruikersnaam"].ToString();
                        gebruiker.Wachtwoord     = reader["Wachtwoord"].ToString();
                        gebruiker.Voornaam       = reader["Voornaam"].ToString();
                        gebruiker.Tussenvoegsel  = reader["Tussenvoegsel"].ToString();
                        gebruiker.Achternaam     = reader["Achternaam"].ToString();
                        if (Convert.ToInt32(reader["Aanwezig"]) == 1)
                        {
                            gebruiker.Aanwezig = true;
                        }
                        else
                        {
                            gebruiker.Aanwezig = false;
                        }
                    }
                }
            }
            catch (Exception e)
            {
                throw new FoutBijUitvoerenQueryException(e.Message);
            }

            Close();
            return(gebruiker);
        }
示例#16
0
        public List <Gebruiker> ZoekenGebruiker(string gezochteNaam)
        {
            List <Gebruiker> gebruikersLijst = new List <Gebruiker>();

            Connect();
            string query = "Select * FROM Gebruiker WHERE Voornaam LIKE @txtZoeken";

            using (command = new SqlCommand(query, sQLcon))
            {
                command.Parameters.Add(new SqlParameter("@txtZoeken", "%" + gezochteNaam + "%"));
                reader = command.ExecuteReader();
                while (reader.Read())
                {
                    if (reader["GebruikerType"].ToString().ToLower() == "bezoeker")
                    {
                        gebruiker = new Bezoeker();
                    }
                    else if (reader["GebruikerType"].ToString().ToLower() == "beheerder")
                    {
                        gebruiker = new Beheerder();
                    }
                    else if (reader["GebruikerType"].ToString().ToLower() == "medewerker")
                    {
                        gebruiker = new Medewerker();
                    }

                    gebruiker.ID             = Convert.ToInt32(reader["ID"]);
                    gebruiker.RFID           = Convert.ToInt32(reader["RFID"]);
                    gebruiker.Gebruikersnaam = reader["Gebruikersnaam"].ToString();
                    gebruiker.Wachtwoord     = reader["Wachtwoord"].ToString();
                    gebruiker.Voornaam       = reader["Voornaam"].ToString();
                    gebruiker.Tussenvoegsel  = reader["Tussenvoegsel"].ToString();
                    gebruiker.Achternaam     = reader["Achternaam"].ToString();
                    if (Convert.ToInt32(reader["Aanwezig"]) == 1)
                    {
                        gebruiker.Aanwezig = true;
                    }
                    else
                    {
                        gebruiker.Aanwezig = false;
                    }

                    gebruikersLijst.Add(gebruiker);
                }
            }

            return(gebruikersLijst);
        }
        protected override void OnInitialized()
        {
            base.OnInitialized();
            Entiteiten = EntiteitRepository.GetAll();
            _beheerder = BeheerderRepository.GetById(long.Parse(Id));
            if (_beheerder is null)
            {
                Navigation.NavigateTo("/Error");
            }

            _beheerderFormModel = new BeheerderFormModel(Entiteiten.ToList(), _beheerder.Entiteiten.Select(e => e.Entiteit).ToList())
            {
                Email = _beheerder.Email
            };
            _editContext = new EditContext(_beheerderFormModel);
        }
示例#18
0
 public ActionResult Login(LoginForm form)
 {
     if (ModelState.IsValid)
     {
         Beheerder user = db.Beheerders.FirstOrDefault(b => b.gebruikersnaam == form.gebruikersnaam);
         if (user != null)
         {
             SignIn(user.beheerder_id.ToString(), user.gebruikersnaam);
             return(RedirectToAction("Index", "Home"));
         }
         else
         {
             ViewBag.NotValidUser = "******";
         }
     }
     return(View());
 }
示例#19
0
        public List <Beheerder> RetrieveAll()
        {
            var returnList = new List <Beheerder>();

            try
            {
                using (_con)
                {
                    _con.Open();
                    var cmdString = "SELECT * FROM Gebruiker INNER JOIN Beheerder ON Gebruiker.id = Beheerder.gebruikerId WHERE Gebruiker.id IN(SELECT gebruikerId FROM Beheerder)";
                    var command   = new SqlCommand(cmdString, _con);
                    var reader    = command.ExecuteReader();

                    while (reader.Read())
                    {
                        var g = new Beheerder(reader.GetString(1), reader.GetString(2), reader.GetString(9));
                        g.Id             = reader.GetInt32(0);
                        g.Geslacht       = (Gebruiker.GebruikerGeslacht)Enum.Parse(typeof(Gebruiker.GebruikerGeslacht), reader.GetString(3));
                        g.Straat         = reader.GetString(4);
                        g.Huisnummer     = reader.GetString(5);
                        g.Postcode       = reader.GetString(6);
                        g.Plaats         = reader.GetString(7);
                        g.Land           = reader.GetString(8);
                        g.Telefoonnummer = reader.GetString(10);
                        if (!reader.IsDBNull(11))
                        {
                            g.Foto = (byte[])reader[11];
                        }
                        if (!reader.IsDBNull(12))
                        {
                            g.Rfid = reader.GetString(12);
                        }

                        returnList.Add(g);
                    }
                    _con.Close();
                }
            }
            catch (Exception ex)
            {
                throw new DatabaseException("Er ging iets mis bij het ophalen van de gegevens", ex);
            }
            return(returnList);
        }
示例#20
0
        public Beheerder RetrieveBeheerder(int id)
        {
            var gsc = new GebruikerSQLContext();
            var gr  = new GebruikerRepository(gsc);
            var g   = gr.RetrieveGebruiker(id);

            var b = new Beheerder();

            b.Id             = g.Id;
            b.Naam           = g.Naam;
            b.Wachtwoord     = g.Wachtwoord;
            b.Geslacht       = g.Geslacht;
            b.Straat         = g.Straat;
            b.Huisnummer     = g.Huisnummer;
            b.Postcode       = g.Postcode;
            b.Plaats         = g.Plaats;
            b.Land           = g.Land;
            b.Email          = g.Email;
            b.Telefoonnummer = g.Telefoonnummer;
            b.Foto           = g.Foto;

            return(b);
        }
示例#21
0
        public List <Beheerder> getBeheerdersFromDB()
        {
            //de connectie met de databank maken
            MySqlConnection conn = new MySqlConnection(_connectionString);

            //Het SQL-commando definiëren
            MySqlCommand     cmd             = new MySqlCommand("select * from studiepunten.beheerder", conn);
            List <Beheerder> beheerdersLijst = new List <Beheerder>();

            conn.Open();
            MySqlDataReader dataReader = cmd.ExecuteReader();

            while (dataReader.Read())
            {
                Beheerder beheerder = new Beheerder(
                    Convert.ToInt16(dataReader[0]),
                    dataReader[1].ToString(),
                    dataReader[2].ToString()
                    );
                beheerdersLijst.Add(beheerder);
            }
            conn.Close();
            return(beheerdersLijst);
        }
示例#22
0
        public async Task <ActionResult <Gebruiker> > PostAsync(LesgeverDTO dto)
        {
            try
            {
                Gebruiker g = new Beheerder(dto.Voornaam, dto.Naam, dto.StraatNaam, dto.Huisnummer, dto.Busnummer,
                                            dto.Postcode, dto.Stad, dto.TelefoonNummer, dto.Email, zetDatumOm(dto.Geb), dto.Geslacht, 1);

                string       eMailAddress = dto.Email;
                IdentityUser user         = new IdentityUser {
                    UserName = eMailAddress, Email = eMailAddress
                };
                await _userManager.CreateAsync(user, "Test123@!");

                await _userManager.AddClaimAsync(user, new Claim(ClaimTypes.Role, "beheerder"));

                _gebruikerRepository.Add(g);
                _gebruikerRepository.SaveChanges();
                return(g);
            }
            catch (Exception e)
            {
                return(BadRequest(e.Message));
            }
        }
 // GET: Beheerder
 public ActionResult Index(Beheerder b)
 {
     return(View());
 }
示例#24
0
        public async System.Threading.Tasks.Task <ActionResult <Gebruiker> > PostLidAsync(LidDTO dto)
        {
            DateTime  inschrijvingsdatum = DateTime.Today;
            Gebruiker g;

            try
            {
                if (dto.Type.ToLower().Equals("lid"))
                {
                    g = new Lid(dto.Voornaam, dto.Naam, dto.StraatNaam, dto.Huisnummer, dto.Busnummer, dto.Postcode,
                                dto.Stad, dto.TelefoonNummer, dto.Email, zetDatumOm(dto.Geb), dto.Nationaliteit,
                                dto.EmailOuders, dto.RijksregisterNummer, dto.GeborenTe, dto.Geslacht,
                                inschrijvingsdatum, dto.AkkoordMetHuishoudelijkRegelement, dto.ToestemmingAudioVisueelMateriaal, dto.WenstInfoTeKrijgenOverClubAangelegenheden, dto.WenstInfoTeKrijgenOverFederaleAangelegenhedenEnPromoties, dto.Graad);
                    if (dto.OudType != null)
                    {
                        g.IdApi = dto.IdApi;
                    }
                    _gebruikerRepository.Add(g);
                    _gebruikerRepository.SaveChanges();
                    string       eMailAddress = dto.Email;
                    IdentityUser user         = new IdentityUser {
                        UserName = eMailAddress, Email = eMailAddress
                    };
                    await _userManager.CreateAsync(user, "Test123@!");

                    await _userManager.AddClaimAsync(user, new Claim(ClaimTypes.Role, dto.Type.ToLower()));

                    _gebruikerRepository.SaveChanges();
                    return(g);
                }

                if (dto.Type.ToLower().Equals("nietlid"))
                {
                    g = new NietLid(dto.Voornaam, dto.Naam, dto.StraatNaam, dto.Huisnummer, dto.Busnummer,
                                    dto.Postcode, dto.Stad, dto.TelefoonNummer, dto.Email, zetDatumOm(dto.Geb), dto.Geslacht);
                    if (dto.OudType != null)
                    {
                        g.IdApi = dto.IdApi;
                    }
                    _gebruikerRepository.Add(g);
                    _gebruikerRepository.SaveChanges();
                    return(g);
                }
                if (dto.Type.ToLower().Equals("beheerder"))
                {
                    Beheerder beheerder = new Beheerder(dto.Voornaam, dto.Naam, dto.StraatNaam, dto.Huisnummer, dto.Busnummer,
                                                        dto.Postcode, dto.Stad, dto.TelefoonNummer, dto.Email, zetDatumOm(dto.Geb), dto.Geslacht, dto.Graad);
                    if (dto.OudType != null)
                    {
                        beheerder.IdApi = dto.IdApi;
                    }
                    _gebruikerRepository.Add(beheerder);
                    _gebruikerRepository.SaveChanges();
                    return(beheerder);
                }
                if (dto.Type.ToLower().Equals("lesgever"))
                {
                    Lesgever lesgever = new Lesgever(dto.Voornaam, dto.Naam, dto.StraatNaam, dto.Huisnummer, dto.Busnummer,
                                                     dto.Postcode, dto.Stad, dto.TelefoonNummer, dto.Email, zetDatumOm(dto.Geb), dto.Geslacht, dto.Graad);
                    if (dto.OudType != null)
                    {
                        lesgever.IdApi = dto.IdApi;
                    }
                    _gebruikerRepository.Add(lesgever);
                    _gebruikerRepository.SaveChanges();
                    return(lesgever);
                }
                if (dto.Type.ToLower().Equals("oudlid"))
                {
                    OudLid oudLid = new OudLid(dto.Voornaam, dto.Naam, dto.StraatNaam, dto.Huisnummer, dto.Busnummer,
                                               dto.Postcode, dto.Stad, dto.TelefoonNummer, dto.Email, zetDatumOm(dto.Geb), dto.Geslacht);
                    oudLid.Graad = dto.Graad;
                    if (dto.OudType != null)
                    {
                        oudLid.IdApi = dto.IdApi;
                    }
                    _gebruikerRepository.Add(oudLid);
                    _gebruikerRepository.SaveChanges();
                    return(oudLid);
                }
                if (!dto.Type.ToLower().Equals("nietlid"))
                {
                    string       eMailAddress = dto.Email;
                    IdentityUser user         = new IdentityUser {
                        UserName = eMailAddress, Email = eMailAddress
                    };
                    await _userManager.CreateAsync(user, "Test123@!");

                    await _userManager.AddClaimAsync(user, new Claim(ClaimTypes.Role, dto.Type.ToLower()));

                    _gebruikerRepository.SaveChanges();
                }

                return(null);
            }
            catch (Exception e)
            {
                return(BadRequest(e.Message));
            }
        }
示例#25
0
 protected override void OnInitialized()
 {
     base.OnInitialized();
     _beheerder = BeheerderRepository.GetByEmail(UserManager.GetUserName(HttpContextAccessor.HttpContext.User));
 }
示例#26
0
        public List <Gebruiker> GesorteerdeGeberuikers(string filter)
        {
            List <Gebruiker> gebruikersLijst = new List <Gebruiker>();
            string           query           = "";

            if (filter == "ID")
            {
                query = "SELECT * FROM Gebruiker";
            }
            else if (filter == "Naam")
            {
                query = "SELECT * FROM Gebruiker ORDER BY Voornaam";
            }
            else if (filter == "GebruikerType")
            {
                query = "SELECT * FROM Gebruiker ORDER BY GebruikerType, Voornaam ASC";
            }
            else if (filter == "Aanwezig")
            {
                query = "SELECT * FROM Gebruiker where Aanwezig = 1";
            }
            else if (filter == "Hoofd Reserveerder")
            {
                query = "SELECT * From Gebruiker Where ID IN (Select DISTINCT(ReserveringVerantwoordelijke) FROM ReserveringGroep)";
            }
            else
            {
                query = "SELECT * FROM Gebruiker";
            }
            Connect();
            using (command = new SqlCommand(query, SQLcon))
            {
                reader = command.ExecuteReader();

                while (reader.Read())
                {
                    if (reader["GebruikerType"].ToString().ToLower() == "bezoeker")
                    {
                        gebruiker = new Bezoeker();
                    }
                    else if (reader["GebruikerType"].ToString().ToLower() == "beheerder")
                    {
                        gebruiker = new Beheerder();
                    }
                    else if (reader["GebruikerType"].ToString().ToLower() == "medewerker")
                    {
                        gebruiker = new Medewerker();
                    }
                    gebruiker.ID             = Convert.ToInt32(reader["ID"]);
                    gebruiker.RFID           = Convert.ToInt32(reader["RFID"]);
                    gebruiker.Gebruikersnaam = reader["Gebruikersnaam"].ToString();
                    gebruiker.Wachtwoord     = reader["Wachtwoord"].ToString();
                    gebruiker.Voornaam       = reader["Voornaam"].ToString();
                    gebruiker.Tussenvoegsel  = reader["Tussenvoegsel"].ToString();
                    gebruiker.Achternaam     = reader["Achternaam"].ToString();
                    if (Convert.ToInt32(reader["Aanwezig"]) == 1)
                    {
                        gebruiker.Aanwezig = true;
                    }
                    else
                    {
                        gebruiker.Aanwezig = false;
                    }
                    gebruikersLijst.Add(gebruiker);
                }
            }
            return(gebruikersLijst);
        }
示例#27
0
        public async System.Threading.Tasks.Task <ActionResult <Gebruiker> > Put(int id, LidDTO dto)
        {
            try
            {
                if (dto.Type.ToLower().Equals("lid"))
                {
                    Lid lid = (Lid)_gebruikerRepository.GetBy(id);
                    if (lid == null)
                    {
                        throw new Exception("Gebruiker kon niet worden gevonden!");
                    }
                    initialiseerAttributenLid(lid, dto);
                    initialiseerAttributenGebruiker(lid, dto);
                    _gebruikerRepository.SaveChanges();
                    return(lid);
                }
                else
                {
                    if (dto.Type.ToLower().Equals("nietlid"))
                    {
                        NietLid nietLid = (NietLid)_gebruikerRepository.GetBy(id);
                        if (nietLid == null)
                        {
                            throw new Exception("Gebruiker kon niet worden gevonden!");
                        }
                        nietLid.Graad = dto.Graad;
                        nietLid       = (NietLid)initialiseerAttributenGebruiker(nietLid, dto);

                        _gebruikerRepository.SaveChanges();
                        return(nietLid);
                    }
                    if (dto.Type.ToLower().Equals("beheerder"))
                    {
                        Beheerder beheerder = (Beheerder)_gebruikerRepository.GetBy(id);
                        if (beheerder == null)
                        {
                            throw new Exception("Gebruiker kon niet worden gevonden!");
                        }
                        beheerder       = (Beheerder)initialiseerAttributenGebruiker(beheerder, dto);
                        beheerder.Graad = dto.Graad;
                        _gebruikerRepository.SaveChanges();
                        return(beheerder);
                    }
                    if (dto.Type.ToLower().Equals("lesgever"))
                    {
                        Lesgever lesgever = (Lesgever)_gebruikerRepository.GetBy(id);
                        if (lesgever == null)
                        {
                            throw new Exception("Gebruiker kon niet worden gevonden!");
                        }
                        lesgever       = (Lesgever)initialiseerAttributenGebruiker(lesgever, dto);
                        lesgever.Graad = dto.Graad;
                        _gebruikerRepository.SaveChanges();
                        return(lesgever);
                    }
                    if (dto.Type.ToLower().Equals("oudlid"))
                    {
                        OudLid oudLid = (OudLid)_gebruikerRepository.GetBy(id);
                        if (oudLid == null)
                        {
                            throw new Exception("Gebruiker kon niet worden gevonden!");
                        }
                        oudLid       = (OudLid)initialiseerAttributenGebruiker(oudLid, dto);
                        oudLid.Graad = dto.Graad;
                        _gebruikerRepository.SaveChanges();
                        return(oudLid);
                    }
                }
                return(null);
            }
            catch (Exception e)
            {
                return(BadRequest(e.Message));
            }
        }
        protected override void Seed(DidactischeLeermiddelenContext context)
        {
            try
            {
                Beheerder admin = new Beheerder("*****@*****.**", true);
                context.Beheerders.Add(admin);
                //Leergebieden
                Leergebied aardrijkskunde = new Leergebied {
                    Naam = "Aardrijkskunde"
                };
                Leergebied fysica = new Leergebied {
                    Naam = "Fysica"
                };
                Leergebied chemie = new Leergebied {
                    Naam = "Chemie"
                };
                Leergebied wiskunde = new Leergebied {
                    Naam = "Wiskunde"
                };
                Leergebied LO = new Leergebied {
                    Naam = "L.O."
                };
                Leergebied Duits = new Leergebied {
                    Naam = "Duits"
                };

                //Doelgroep en
                Doelgroep lagerOnderwijs = new Doelgroep {
                    Naam = "Lager"
                };
                Doelgroep secundairOnderwijs = new Doelgroep {
                    Naam = "Secundair"
                };
                Doelgroep kleuterOnderwijs = new Doelgroep {
                    Naam = "Kleuter"
                };



                Firma f = new Firma("Ceti", "*****@*****.**", "ceti.be", contactpersoon: "Silke");
                Firma b = new Firma("Wissner", "*****@*****.**", "wissner.com", adres: "Voskenslaan", contactpersoon: "Silke");
                Firma c = new Firma("Texas Instruments", "*****@*****.**", "texasinstruments.com"); //veranderen van firma werkt niet, blijft bij eerst initialisatie

                //Materialen
                Materiaal wereldbol = new Materiaal {
                    AantalInCatalogus = 4, AantalOnbeschikbaar = 1, Plaats = "B2.012", ArtikelNr = 1111, MateriaalId = 1, Firma = b, Naam = "Wereldbol", ImageSrc = "C:\\Users\\donovandesmedt\\Source\\Repos\\groep06DotNet\\DidactischeLeermiddelen\\Content\\Images\\wereldbol.jpg", Omschrijving = "Columbus wereldbol", Prijs = 44.90, Leergebieden = new List <Leergebied> {
                        aardrijkskunde
                    }, Doelgroepen = new List <Doelgroep> {
                        lagerOnderwijs, secundairOnderwijs
                    }, IsReserveerBaar = true
                };

                Materiaal rekentoestel = new Materiaal {
                    AantalInCatalogus = 20, AantalOnbeschikbaar = 4, Plaats = "B2.012", ArtikelNr = 2222, MateriaalId = 2, Firma = c, Naam = "TI 84+", ImageSrc = "C:\\Users\\donovandesmedt\\Source\\Repos\\groep06DotNet\\DidactischeLeermiddelen\\Content\\Images\\rekentoestel.jpg", Omschrijving = "Grafisch rekentoestel", Prijs = 106.95, Leergebieden = new List <Leergebied> {
                        wiskunde, fysica, chemie
                    }, Doelgroepen = new List <Doelgroep> {
                        secundairOnderwijs
                    }, IsReserveerBaar = true
                };
                Materiaal microscoopCeti = new Materiaal {
                    AantalInCatalogus = 2, Plaats = "B3.039", ArtikelNr = 3333, MateriaalId = 3, Firma = f, Naam = "Microscoop Ceti", ImageSrc = "C:\\Users\\donovandesmedt\\Source\\Repos\\groep06DotNet\\DidactischeLeermiddelen\\Content\\Images\\microscoopCeti.jpg", Omschrijving = "Microscoop Ceti", Prijs = 534.00, Leergebieden = new List <Leergebied> {
                        chemie
                    }, Doelgroepen = new List <Doelgroep> {
                        secundairOnderwijs
                    }, IsReserveerBaar = true
                };
                Materiaal pincet = new Materiaal {
                    AantalInCatalogus = 2, Plaats = "B3.039", ArtikelNr = 4444, MateriaalId = 4, Firma = b, Naam = "Pincet", ImageSrc = "C:\\Users\\donovandesmedt\\Source\\Repos\\groep06DotNet\\DidactischeLeermiddelen\\Content\\Images\\pincet.jpg", Omschrijving = "Pincet Zwilling", Prijs = 6.95, Leergebieden = new List <Leergebied> {
                        fysica, chemie
                    }, Doelgroepen = new List <Doelgroep> {
                        lagerOnderwijs, secundairOnderwijs
                    }, IsReserveerBaar = true
                };
                Materiaal bordGeodriekhoek = new Materiaal {
                    AantalInCatalogus = 15, AantalOnbeschikbaar = 7, Plaats = "B2.012", ArtikelNr = 5555, MateriaalId = 5, Firma = c, Naam = "Bordgeodriehoek", ImageSrc = "C:\\Users\\donovandesmedt\\Source\\Repos\\groep06DotNet\\DidactischeLeermiddelen\\Content\\Images\\geodriehoek.jpg", Omschrijving = "Geodriehoek om op het bord te gebruiken", Prijs = 16.00, Leergebieden = new List <Leergebied> {
                        wiskunde, fysica, chemie
                    }, Doelgroepen = new List <Doelgroep> {
                        lagerOnderwijs, secundairOnderwijs
                    }, IsReserveerBaar = true
                };
                Materiaal ReddingsPop = new Materiaal {
                    AantalInCatalogus = 5, Plaats = "B4.009", ArtikelNr = 6666, MateriaalId = 6, Firma = f, Naam = "Reddingspop", ImageSrc = "C:\\Users\\donovandesmedt\\Source\\Repos\\groep06DotNet\\DidactischeLeermiddelen\\Content\\Images\\reddingspop.jpg", Omschrijving = "Met behulp van deze pop wordt je een geweldig duiker", Prijs = 245.00, Doelgroepen = new List <Doelgroep> {
                        lagerOnderwijs, secundairOnderwijs
                    }, Leergebieden = new List <Leergebied> {
                        LO
                    }, IsReserveerBaar = false
                };
                Materiaal Basketbal = new Materiaal {
                    AantalInCatalogus = 30, Plaats = "B1.012", ArtikelNr = 7777, MateriaalId = 7, Firma = b, Naam = "Spalding basketbal", ImageSrc = "C:\\Users\\donovandesmedt\\Source\\Repos\\groep06DotNet\\DidactischeLeermiddelen\\Content\\Images\\basketbal.jpg", Omschrijving = "Officiële NBA basketbal, hiermee scoort iedereen 3-punters", Prijs = 169.00, Doelgroepen = new List <Doelgroep> {
                        lagerOnderwijs, secundairOnderwijs
                    }, Leergebieden = new List <Leergebied> {
                        LO
                    }, IsReserveerBaar = false
                };
                Materiaal Bok = new Materiaal {
                    AantalInCatalogus = 1, Plaats = "B3.039", ArtikelNr = 8888, MateriaalId = 8, Firma = c, Naam = "Bok", ImageSrc = "C:\\Users\\donovandesmedt\\Source\\Repos\\groep06DotNet\\DidactischeLeermiddelen\\Content\\Images\\bok.jpg", Omschrijving = "Niet de alledaagse bok van in de turnles", Prijs = 0.00, Doelgroepen = new List <Doelgroep> {
                        lagerOnderwijs, secundairOnderwijs, kleuterOnderwijs
                    }, Leergebieden = new List <Leergebied> {
                        LO
                    }, IsReserveerBaar = true
                };
                Materiaal Duitser = new Materiaal {
                    AantalInCatalogus = 21, Plaats = "B4.009", ArtikelNr = 9999, MateriaalId = 9, Firma = f, Naam = "Woordenboek Duits-Nederlands", ImageSrc = "C:\\Users\\donovandesmedt\\Source\\Repos\\groep06DotNet\\DidactischeLeermiddelen\\Content\\Images\\woordenboek.jpg", Omschrijving = "Pocketwoordenboek Nederlands Duits", Prijs = 13.00, Doelgroepen = new List <Doelgroep> {
                        secundairOnderwijs
                    }, Leergebieden = new List <Leergebied> {
                        Duits
                    }, IsReserveerBaar = false
                };


                Materiaal[] materialen = new Materiaal[] { wereldbol, rekentoestel, microscoopCeti, pincet, bordGeodriekhoek, ReddingsPop, Basketbal, Bok, Duitser };
                //rekentoestel.AddReservatie(reservatie);
                //bordGeodriekhoek.AddReservatie(reservatie2);

                context.Materialen.AddRange(materialen);

                MailTemplate mailReservatie = new MailNaReservatie()
                {
                    Body = string.Format("<p>Dag _NAAM</p>" +
                                         "Je reservatie loopt van _STARTDATUM tot _EINDDATUM" +
                                         "<p> Hieronder vind je terug wat je zonet reserveerde: </p>" +
                                         "<ul>" +
                                         "_ITEMS" +
                                         "</ul> "),
                    Subject = "Bevestiging reservatie"
                };


                MailTemplate mailBlokkeringLector = new MailNaBlokkeringLector()
                {
                    Body = string.Format("<p>Dag _NAAM</p>" +
                                         "U heeft volgende materialen gereserveerd op _DATUMS :" +
                                         "<ul>" +
                                         "_ITEMS" +
                                         "</ul>"),
                    Subject = "Blokkering"
                };

                MailTemplate mailBlokkeringStudent = new MailNaBlokkeringStudent()
                {
                    Body = string.Format("<p>Dag _NAAM</p>" +
                                         "Uw reservatie van volgend materiaal in de week van _STARTDATUM is geblokkeerd:" +
                                         "<ul>" +
                                         "_ITEMS" +
                                         "</ul>"),

                    Subject = "Reservatie gewijzigd"
                };
                List <MailTemplate> mails = new List <MailTemplate>()
                {
                    mailReservatie, mailBlokkeringLector, mailBlokkeringStudent
                };

                context.MailTemplates.AddRange(mails);
                context.SaveChanges();
            }
            catch (DbEntityValidationException e)
            {
                string s = "Fout creatie database ";
                foreach (var eve in e.EntityValidationErrors)
                {
                    s += String.Format("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                                       eve.Entry.Entity.GetType().Name, eve.Entry.GetValidationResult());
                    foreach (var ve in eve.ValidationErrors)
                    {
                        s += String.Format("- Property: \"{0}\", Error: \"{1}\"",
                                           ve.PropertyName, ve.ErrorMessage);
                    }
                }
                throw new Exception(s);
            }
        }
示例#29
0
        public async Task InitialiseData()
        {
            _context.Database.EnsureDeleted();
            if (_context.Database.EnsureCreated())
            {
                // Gebruikers
                // Admin
                IdentityUser admin = new IdentityUser {
                    UserName = "******", Email = "*****@*****.**"
                };
                await _userManager.CreateAsync(admin, "test");

                await _userManager.AddClaimAsync(admin, new Claim(ClaimTypes.Role, "admin"));

                // TestEntiteiten
                Entiteit entiteit1 = new Entiteit("KA Dendermonde", "*****@*****.**");
                Entiteit entiteit2 = new Entiteit("MS Atheneum", "*****@*****.**");
                _context.Entiteiten.AddRange(entiteit1, entiteit2);

                IdentityUser entiteitUser1 = new IdentityUser {
                    UserName = "******", Email = "*****@*****.**"
                };
                await _userManager.CreateAsync(entiteitUser1, "test");

                await _userManager.AddClaimAsync(entiteitUser1, new Claim(ClaimTypes.Role, "entiteit"));

                IdentityUser entiteitUser2 = new IdentityUser {
                    UserName = "******", Email = "*****@*****.**"
                };
                await _userManager.CreateAsync(entiteitUser2, "test");

                await _userManager.AddClaimAsync(entiteitUser2, new Claim(ClaimTypes.Role, "entiteit"));

                // TestBeheerders
                Beheerder beheerder1 = new Beheerder("*****@*****.**");
                Beheerder beheerder2 = new Beheerder("*****@*****.**");
                beheerder1.Entiteiten.Add(new EntiteitBeheerder {
                    EntiteitId = entiteit1.Id, BeheerderId = beheerder1.Id
                });
                beheerder1.Entiteiten.Add(new EntiteitBeheerder {
                    EntiteitId = entiteit2.Id, BeheerderId = beheerder2.Id
                });

                IdentityUser beheerderUser1 = new IdentityUser {
                    UserName = "******", Email = "*****@*****.**"
                };
                await _userManager.CreateAsync(beheerderUser1, "test");

                await _userManager.AddClaimAsync(beheerderUser1, new Claim(ClaimTypes.Role, "beheerder"));

                IdentityUser beheerderUser2 = new IdentityUser {
                    UserName = "******", Email = "*****@*****.**"
                };
                await _userManager.CreateAsync(beheerderUser2, "test");

                await _userManager.AddClaimAsync(beheerderUser2, new Claim(ClaimTypes.Role, "beheerder"));

                _context.Beheerders.AddRange(beheerder1, beheerder2);
                // Finish transaction
                _context.SaveChanges();
            }
        }
示例#30
0
        public Beheerder getBeheerder(int ID)
        {
            Beheerder beheerder = dbcontext.beheerder.Find(ID);

            return(beheerder);
        }