// GET Create1 public ActionResult Create() { TulajdonosDropDown(); var gepjarmu = new GepJarmu(); gepjarmu.Diagnosztikák = new List<Diagnosztika>(); AutoDiagnosztikai(gepjarmu); return View(); }
//AUTO-Diagnosztika-Update private void UpdateAutoDiagnosztika(string[] selectedHibak, GepJarmu GepJarmuToUpdate) { if (selectedHibak == null) { GepJarmuToUpdate.Diagnosztikák = new List<Diagnosztika>(); return; } var selectedHibakHash = new HashSet<string>(selectedHibak); //checkbox hibák var autoHibak = new HashSet<int>(GepJarmuToUpdate.Diagnosztikák.Select(g => g.ID)); foreach (var hiba in db.Diagnosztikák) { string hibaid = hiba.ID.ToString(); if (selectedHibakHash.Contains(hibaid)) { if (!autoHibak.Contains(hiba.ID)) { GepJarmuToUpdate.Diagnosztikák.Add(hiba); } } else { if (autoHibak.Contains(hiba.ID)) { GepJarmuToUpdate.Diagnosztikák.Remove(hiba); } } } }
//AUTI-DIAGNOSZTIKA Double ListBox private void AutoDiagnosztikai(GepJarmu gepjarmu) { var allHiba = db.Diagnosztikák; //minden meghibásodás var autoHibak = new HashSet<int>(gepjarmu.Diagnosztikák.Select(d => d.ID)); //auto meghibásodások var viewModelNotSelected = new List<JarmuDiagnosztikaViewModel>();//nem kiválasztott hibák var viewModelSelected = new List<JarmuDiagnosztikaViewModel>();//kiválasztott hibák foreach (var hiba in allHiba) //viewmodel feltöltése { if (autoHibak.Contains(hiba.ID)) { viewModelSelected.Add(new JarmuDiagnosztikaViewModel { DiagnosztikaID = hiba.ID, DiagnosztikaNeve = hiba.HibaNeve, Hibas = true }); } else { viewModelNotSelected.Add(new JarmuDiagnosztikaViewModel { DiagnosztikaID = hiba.ID, DiagnosztikaNeve = hiba.HibaNeve, Hibas = false }); } } ViewBag.SelectedDiag = new MultiSelectList(viewModelSelected, "DiagnosztikaID", "DiagnosztikaNeve"); ViewBag.NotSelectedDiag = new MultiSelectList(viewModelNotSelected, "DiagnosztikaID", "DiagnosztikaNeve"); }