public VoertuigEditViewModel EditVoertuig(long?id)
        {
            var mRepo = new MerkenRepository(_context);
            var tRepo = new ModellenRepository(_context);
            var cRepo = new CategorieRepository(_context);
            var fRepo = new FakturenRepository(_context);
            var kRepo = new KlantenRepository(_context);

            Voertuig voertuigMod = new Voertuig();

            voertuigMod = _context.Voertuigen
                          .Include(v => v.Merk)
                          .Include(v => v.MerkType)
                          .Include(v => v.VoertuigCategorie)
                          .Include(v => v.Klant)
                          .Include(v => v.Faktuur)
                          //.OrderBy(v => v.VoertuigArtikelNummer.Length)
                          //.ThenBy(v => v.VoertuigArtikelNummer)
                          .SingleOrDefault(m => m.VoertuigId == id);


            var voertuigE = new VoertuigEditViewModel()
            {
                VoertuigId = id,

                VoertuigArtikelNummer = voertuigMod.VoertuigArtikelNummer,
                SelectedMerk          = voertuigMod.MerkId.ToString(),
                SelectedModel         = voertuigMod.ModelId.ToString(),
                VoertuigTitel         = voertuigMod.VoertuigTitel,
                SelectedCategorie     = voertuigMod.VoertuigCatId.ToString(),
                Prijs           = voertuigMod.Prijs,
                Nieuw           = voertuigMod.Nieuw,
                Kilometerstand  = voertuigMod.Kilometerstand,
                Registratie     = voertuigMod.Registratie,
                Bouwjaar        = voertuigMod.Bouwjaar,
                Brandstof       = voertuigMod.Brandstof,
                Kleur           = voertuigMod.Kleur,
                Koetswerk       = voertuigMod.Koetswerk,
                GarantieTijd    = voertuigMod.GarantieTijd,
                Versnelling     = voertuigMod.Versnelling,
                Vermogen        = voertuigMod.Vermogen,
                COTwee          = voertuigMod.COTwee,
                CC              = voertuigMod.CC,
                Zitplaatsen     = voertuigMod.Zitplaatsen,
                Deuren          = voertuigMod.Deuren,
                Binnenkleur     = voertuigMod.Binnenkleur,
                Binnenbekleding = voertuigMod.Binnenbekleding,
                FiguurURL       = voertuigMod.FiguurURL,
                SelectedFaktuur = voertuigMod.FaktuurNr.ToString(),  //Bestaan nog geen fakturen
                SelectedKlant   = voertuigMod.KlantId.ToString(),
                Merken          = mRepo.GetMerken(),
                Modellen        = tRepo.GetModellen(voertuigMod.MerkId.ToString()),
                Categorieen     = cRepo.GetCategorieen(),
                Fakturen        = fRepo.GetFakturen(),
                Klanten         = kRepo.GetKlanten()
            };

            return(voertuigE);
        }
        public VoertuigEditViewModel CreateVoertuig()
        {
            var mRepo = new MerkenRepository(_context);
            var tRepo = new ModellenRepository(_context);
            var cRepo = new CategorieRepository(_context);
            var fRepo = new FakturenRepository(_context);
            var kRepo = new KlantenRepository(_context);


            var mxLV = _context.Voertuigen
                       .Where(v => v.VoertuigArtikelNummer.Contains("v"))
                       .OrderBy(v => v.VoertuigArtikelNummer.Length)
                       .ThenBy(v => v.VoertuigArtikelNummer)
                       .Max(v => Convert.ToInt16(v.VoertuigArtikelNummer.Substring(1)) + 1);
            var mxPW = _context.Voertuigen
                       .Where(v => !v.VoertuigArtikelNummer.Contains("v"))
                       //.OrderBy(v => v.VoertuigArtikelNummer.Length)
                       //.ThenBy(v => v.VoertuigArtikelNummer)
                       .Max(v => Convert.ToInt16(v.VoertuigArtikelNummer) + 1);



            var voertuig = new VoertuigEditViewModel()
            {
                MaxLVNr = $"V{mxLV.ToString()}",
                MaxPWNr = $"{mxPW.ToString()}",
                VoertuigArtikelNummer = $"--Kies PW: {mxPW.ToString()} / LV: V{mxLV.ToString()}--",
                Bouwjaar     = Convert.ToInt16(DateTime.Now.Year),
                Registratie  = "../20..",
                Deuren       = 4,
                Zitplaatsen  = 4,
                Vermogen     = "... pk(.. kW)",
                CC           = 1000,
                GarantieTijd = "12/24 maanden",
                FiguurURL    = $@"~/images/vtgn/fronts/..._FRONT.jpg",
                COTwee       = "... gr",
                Merken       = mRepo.GetMerken(),
                Modellen     = tRepo.GetModellen(),
                Categorieen  = cRepo.GetCategorieen(),
                Fakturen     = fRepo.GetFakturen(),
                Klanten      = kRepo.GetKlanten()
            };

            return(voertuig);
        }