public void ZoekResultaten() { Mouse.OverrideCursor = Cursors.Wait; dbRepository dbrep = new dbRepository(); if (dbrep.IsStandalone()) { dgContacten.IsReadOnly = false; dgContacten.CanUserAddRows = true; } if (txtSearch != null) { List <vwContactAll> listPersonen = new List <vwContactAll>(); if (string.IsNullOrEmpty(txtSearch.Text)) { listPersonen = dbrep.GetContacten().Where(c => !listViewVakmannen.Any(v => c.persoon_ID == v.ContactIdOrigineel)).OrderBy(vv => vv.bedrijf_nr).ThenBy(vv => vv.voornaam).ThenBy(vv => vv.achternaam).ToList(); dgContacten.ItemsSource = listPersonen; } else { listPersonen = dbrep.GetContacten(txtSearch.Text.Split(' ')).Where(c => !listViewVakmannen.Any(v => c.persoon_ID == v.ContactIdOrigineel)).OrderBy(vv => vv.bedrijf_nr).ThenBy(vv => vv.voornaam).ThenBy(vv => vv.achternaam).ToList(); dgContacten.ItemsSource = listPersonen; // probeer de eerste te selecteren vwContactAll firstItem = listPersonen.FirstOrDefault(); if (firstItem != null) { SelectItem(firstItem.persoon_ID); } } } Keyboard.Focus(txtSearch); Mouse.OverrideCursor = null; }
private void Toevoegen() { try { if (dgContacten.SelectedItem != null) { bool IsNewVakman = false; dbRepository dbrep = new dbRepository(); dbOriginalRepository dbOriginalRep = new dbOriginalRepository(); // blijkbaar bestaat er de mogelijkheid dat er zojuist een contact is toegevoegd aan de ZeebregtsDb // vandaar voor de zekerheid opnieuw de ZeebregtsDb Cachen ApplicationState.SetValue(ApplicationVariables.listMDRPersoons, dbOriginalRep.datacontext.MDRpersoons.ToList()); ApplicationState.SetValue(ApplicationVariables.listMDRProjecten, dbOriginalRep.datacontext.MDRprojects.ToList()); vwContactAll persoon = (vwContactAll)dgContacten.SelectedItem; if (persoon.persoon_nr == null && dbrep.IsStandalone()) { // via stored procedure de mdrpersoon toevoegen aan de database in tabel MDRpersoon // en het ID wat terugkomt in persoon.persoon_ID stoppen persoon.persoon_ID = dbrep.InsertMDRPersoon("nieuwe persoon"); } // check of de vakman al bestaat in MDR Vakman vakman = dbrep.GetVakmanByOriginalId(persoon.persoon_ID); if (vakman == null) { // bestond nog niet, dus toevoegen IsNewVakman = true; Vakman vakmanNew = new Vakman(); // check of er een bedrijf aan gekoppeld moet worden if (persoon.bedrijf_nr != null) { // haal het originele bedrijf op MDRbedrijf dbobedrijf = dbOriginalRep.GetBedrijf((int)persoon.bedrijf_nr); // nieuw, in deze tabel opslaan vakmanNew.BedrijfIdOrigineel = dbobedrijf.bedrijf_ID; if (dbobedrijf.bedrijf_ID == ZeebregtsBedrijfId) { vakmanNew.Intern = true; } else { vakmanNew.Intern = false; } } // overige info van de vakman invullen vakmanNew.ContactIdOrigineel = persoon.persoon_ID; vakmanNew.ProjectleiderId = ApplicationState.GetValue <int>(ApplicationVariables.intProjectleider); vakmanNew.Bsn = ""; // persoon.voornaam + " " + (String.IsNullOrWhiteSpace(persoon.tussenvoegsel) ? "" : persoon.tussenvoegsel + " ") + persoon.achternaam; vakmanNew.Postcode = ""; vakmanNew.Huisnummer = ""; vakmanNew.Adres = ""; vakmanNew.Ma = 8; vakmanNew.Di = 8; vakmanNew.Wo = 8; vakmanNew.Do = 8; vakmanNew.Vr = 8; vakmanNew.Za = 0; vakmanNew.Zo = 0; vakmanNew.Werkweek = 40; vakmanNew.DefaultBeginuur = 0; vakmanNew.DefaultBeginminuut = 0; // voeg toe aan database vakman = dbrep.InsertVakman(vakmanNew); } // bewaar info in 'sessie' //ApplicationState.SetValue(ApplicationVariables.objVakman, vakman); ApplicationState.SetValue(ApplicationVariables.intVakmanId, vakman.VakmanId); DateTime nu = DateTime.Now; //ApplicationState.SetValue(ApplicationVariables.dtSelectedDay, new DateTime(nu.Year, nu.Month, nu.Day, 0, 0, 0)); if (SubRoute) { PageGoBack(); } else { dbOriginalRepository dbrepOriginal = new dbOriginalRepository(); MDRpersoon objPersoon = dbrepOriginal.GetContact(persoon.persoon_ID); // create the page and load all values Vakmannen.Detail.VakmanDetailView vdv = new Vakmannen.Detail.VakmanDetailView(objPersoon); vdv.SelectTab(1); // load the page into the contentcontrol PageGoBack(vdv); } } } catch { MessageBox.Show("Er is een onbekende fout opgetreden, error #701"); } }