public Klant NieuweKlant(string naam, string telefoonummer)
        {
            var _klant = new Klant(naam, telefoonummer, KlantRepository.GetNextId());

            KlantRepository.AddItem(_klant);
            return(_klant);
        }
        public void DeleteHerstelling(int klantid, int toestelid)
        {
            var klant    = KlantRepository.GetItem(klantid);
            var toDelete = klant.Herstelling.First(y => y.KlantId == klantid && y.ToestelId == toestelid);

            klant.Herstelling.Remove(toDelete);
            Persistence.Controller.DeleteHerstelling(toDelete);
        }
        public Klant UpdateKlant(int id, string nieuweNaam, string nieuweTel)
        {
            var toUpdate = KlantRepository.GetItem(id);

            toUpdate.Naam           = nieuweNaam;
            toUpdate.Telefoonnummer = nieuweTel;

            return(KlantRepository.UpdateItem(toUpdate));
        }
        public void UpdateHerstelling(DateTime datumbinnen, double kostprijs, DateTime datumklaar, int toestelid,
                                      int klantid)
        {
            var klant = KlantRepository.GetItem(klantid);

            klant.UpdateHerstelling(datumbinnen, kostprijs, datumklaar, toestelid, klantid);
            Persistence.Controller.UpdateHerstelling(klant.Herstelling.First(x =>
                                                                             x.KlantId == klantid && x.ToestelId == toestelid));
        }
 public void DeleteKlant(int id)
 {
     if (KlantRepository.GetItem(id) != null)
     {
         KlantRepository.DeleteItem(id);
     }
     else
     {
         throw new Exception("Klant niet gevonden;");
     }
 }
        public Herstelling NieuweHerstelling(double kostprijs, DateTime datumbinnen, DateTime datumklaar, int toestelid,
                                             int klantid)
        {
            var _klant = KlantRepository.GetItem(klantid);

            if (GetAlleHerstellingen().Any(x => x.ToestelId == toestelid))
            {
                throw new Exception("heeft al een herstelling");
            }
            else
            {
                var _herstelling = _klant.NieuweHerstelling(kostprijs, datumbinnen, datumklaar, toestelid, klantid);
                Persistence.Controller.AddHerstelling(_herstelling);
                return(_herstelling);
            }
        }
        public Controller()
        {
            if (!_loaded)
            {
                var _herstellingen = new List <Herstelling>();
                GebruikersRepository.Load(Persistence.Controller.GetGebruikers());
                KlantRepository.Load(Persistence.Controller.GetAlleKlanten());
                ToestelRepository.Load(Persistence.Controller.GetAlleToestellen());
                foreach (var klant in KlantRepository.Items)
                {
                    klant.Herstelling = Persistence.Controller.GetAlleHerstellingen(klant.Id);
                }

                _loaded = true;
            }
        }
 public Klant GetKlant(int id)
 {
     return(KlantRepository.GetItem(id));
 }