void lblDag_Click(object sender, RoutedEventArgs e) { Mouse.OverrideCursor = Cursors.Wait; ApplicationState.SetValue(ApplicationVariables.intVakmanViewModus, 1); Project cProject = (Project)((List <object>)((Button)sender).Tag)[0]; DateTime selectedDay = (DateTime)((List <object>)((Button)sender).Tag)[1]; ApplicationState.SetValue(ApplicationVariables.dtSelectedDay, selectedDay); ApplicationState.SetValue(ApplicationVariables.intProjectId, cProject.ProjectId); dbOriginalRepository dbrepOriginal = new dbOriginalRepository(); MDRproject projectorigineel = dbrepOriginal.GetProject((int)cProject.ProjectNr); MDRpersoon projectleider = dbrepOriginal.GetContact(objProjectleider.ContactIdOrigineel); // create the page and load all values MandagenRegistratie.controls.Projecten.Lijst.Project pv = new MandagenRegistratie.controls.Projecten.Lijst.Project(projectorigineel); //pv.Load(); // load the page into the contentcontrol MenuControl owner = Tools.FindVisualParent <MenuControl>(this); owner.PageGoToPage(pv); Mouse.OverrideCursor = null; }
/// <summary> /// /// </summary> public void Load() { dbRepository dbrep = new dbRepository(); MandagenRegistratieDomain.Project project = dbrep.GetProject(ApplicationState.GetValue <int>(ApplicationVariables.intProjectId)); dbOriginalRepository dbrepOriginal = new dbOriginalRepository(); persoon persoon = dbrepOriginal.GetContact(dbrep.GetProjectleider(project.ProjectleiderId).ContactIdOrigineel); MandagenRegistratieDomain.project dboproject = dbrepOriginal.datacontext.projects.Where(p => p.project_ID == project.ProjectIdOrigineel).FirstOrDefault(); MandagenRegistratieDomain.adressen dboadres = dbrepOriginal.datacontext.adressens.Where(a => a.adres_id == dboproject.adres_id_bouw).FirstOrDefault(); lblProjectNr.Content = dbrepOriginal.GetProject(project.ProjectIdOrigineel).project_NR.ToString(); cbActief.IsChecked = project.Actief == true; if (dboadres != null) { txtPostcodeCijfers.Text = dboadres.postcode_cijfers.HasValue ? dboadres.postcode_cijfers.Value.ToString() : ""; txtPostcodeLetters.Text = dboadres.postcode_letters; txtHuisnummer.Text = dboadres.huis_postbus_nummer + dboadres.huisnummer_toevoeging; txtAdres.Text = dboadres.straat_1; AdresLookup = dboadres.straat_1.Substring(0, dboadres.straat_1.Length - txtHuisnummer.Text.Length).Trim(); } txtProjectnaam.Text = dboproject.naam_project; lblProjectleider.Content = persoon.voornaam + " " + persoon.tussenvoegsel + " " + persoon.achternaam; }
void lblDag_Click(object sender, RoutedEventArgs e) { Mouse.OverrideCursor = Cursors.Wait; ApplicationState.SetValue(ApplicationVariables.intVakmanViewModus, 1); vwVakman cVakman = (vwVakman)((List <object>)((Button)sender).Tag)[0]; DateTime selectedDay = (DateTime)((List <object>)((Button)sender).Tag)[1]; ApplicationState.SetValue(ApplicationVariables.dtSelectedDay, selectedDay); ApplicationState.SetValue(ApplicationVariables.intVakmanId, cVakman.VakmanId); dbOriginalRepository dbrepOriginal = new dbOriginalRepository(); MDRpersoon objPersoon = dbrepOriginal.GetContact(cVakman.ContactIdOrigineel); // create the page and load all values MandagenRegistratie.controls.Vakmannen.Detail.VakmanDetailView vm = new MandagenRegistratie.controls.Vakmannen.Detail.VakmanDetailView(objPersoon); //vm.Load(); // load the page into the contentcontrol MenuControl owner = Tools.FindVisualParent <MenuControl>(this); owner.PageGoToPage(vm); Mouse.OverrideCursor = null; }
public void Selectproject() { Mouse.OverrideCursor = Cursors.Wait; dbRepository dbrep = new dbRepository(); dbOriginalRepository dbOriginalRep = new dbOriginalRepository(); // haal het geselecteerde project op MandagenRegistratieDomain.Project project = dbrep.GetProject(((MandagenRegistratieDomain.vwProject)dgProjecten.SelectedItem).ProjectId); // bewaar info in 'sessie' ApplicationState.SetValue(ApplicationVariables.intProjectId, project.ProjectId); DateTime nu = DateTime.Now; //ApplicationState.SetValue(ApplicationVariables.dtSelectedDay, new DateTime(nu.Year, nu.Month, nu.Day, 0, 0, 0)); persoon projectleider = dbOriginalRep.GetContact(dbrep.GetProjectleider(project.ProjectleiderId).ContactIdOrigineel); project projectorigineel = dbOriginalRep.GetProject(project.ProjectIdOrigineel); // create the page and load all values Project pv = new Project(projectorigineel.naam_project + " - ID " + projectorigineel.project_NR, projectleider.voornaam + " " + projectleider.tussenvoegsel + " " + projectleider.achternaam); // load the page into the contentcontrol PageGoToPage(pv); Mouse.OverrideCursor = null; }
private void btnGoToProject_Click(object sender, RoutedEventArgs e) { dbRepository dbrep = new dbRepository(); dbOriginalRepository dbOriginalRep = new dbOriginalRepository(); ApplicationState.SetValue(ApplicationVariables.intProjectId, project.ProjectId); //ProjectView pv = new ProjectView(); //pv.Show(); persoon projectleider = dbOriginalRep.GetContact(dbrep.GetProjectleider(project.ProjectleiderId).ContactIdOrigineel); // create the page and load all values Projecten.Overzicht.Project po = new Projecten.Overzicht.Project(project.Naam + " - ID " + project.ProjectIdOrigineel, projectleider.voornaam + " " + projectleider.tussenvoegsel + " " + projectleider.achternaam); //new Projecten.Overzicht.Project(project.ProjectId + ": " + project.Naam, projectleider.voornaam + " " + projectleider.tussenvoegsel + " " + projectleider.achternaam); // load the page into the contentcontrol MenuControl owner = Tools.FindVisualParent <MenuControl>(this); //po.PageGereedButtonVisibility = System.Windows.Visibility.Visible; //po.PageOKButtonText = "PROJECT TOEVOEGEN"; //po.OkClick += po.ToevoegenAanVakman; //po.dgProjecten.MouseDoubleClick -= po.dgProjecten_MouseDoubleClick; //po.dgProjecten.MouseDoubleClick += po.dgProjecten_MouseDoubleClickForVakman; //po.Load(); //po.tabControl.SelectedIndex = 1; owner.PageGoToPage(po); }
protected virtual void OnPropertyChanged(string propertyName) { PropertyChangedEventHandler handler = PropertyChanged; if (handler != null) { handler(this, new PropertyChangedEventArgs(propertyName)); } switch (propertyName) { case "Vakman": btnHeader.Style = this.FindResource("LinkButton") as Style; //btnHeader.Style = Tools.FindVisualParent<PageContainer>(this).FindResource("LinkButton") as Style; dbOriginalRepository dbRepOriginal = new dbOriginalRepository(); persoon p = dbRepOriginal.GetContact(vakman.ContactIdOrigineel); btnHeader.Content = p.voornaam + " " + (string.IsNullOrEmpty(p.tussenvoegsel) ? "" : p.tussenvoegsel + " ") + p.achternaam; if (ApplicationState.GetValue <int>(ApplicationVariables.intVakmanId) == vakman.VakmanId) { // make bold //btnHeader.FontWeight = FontWeights.ExtraBold; } break; default: break; } }
/// /// </summary> public void Load() { // intialize dbRepository dbrep = new dbRepository(); dbOriginalRepository dbrepOriginal = new dbOriginalRepository(); List <PL> listPL = new List <PL>(); foreach (Projectleider plitem in dbrep.GetProjectleiders()) { persoon tt = dbrepOriginal.GetContact(plitem.ContactIdOrigineel); PL pl = new PL(); pl.Naam = tt.voornaam + " " + tt.tussenvoegsel + " " + tt.achternaam; pl.ProjectleiderId = plitem.ProjectleiderId; pl.ContactIdOrigineel = plitem.ContactIdOrigineel; listPL.Add(pl); } cbProjectleiders.ItemsSource = listPL; cbProjectleiders.DisplayMemberPath = "Naam"; cbProjectleiders.SelectedValuePath = "ProjectleiderId"; cbProjectleiders.SelectedValue = ApplicationState.GetValue <int>(ApplicationVariables.intProjectleider); }
private void btnGoToProject_Click(object sender, RoutedEventArgs e) { ApplicationState.SetValue(ApplicationVariables.intVakmanId, vakman.VakmanId); //ApplicationState.SetValue(ApplicationVariables.objVakman, vakman); //ProjectView pv = new ProjectView(); //pv.Show(); dbOriginalRepository dbrepOriginal = new dbOriginalRepository(); persoon persoon = dbrepOriginal.GetContact(vakman.ContactIdOrigineel); // create the page and load all values Vakmannen.Detail.VakmanDetailView vdv = new Vakmannen.Detail.VakmanDetailView(persoon.voornaam + " " + persoon.tussenvoegsel + " " + persoon.achternaam); // load the page into the contentcontrol MenuControl owner = Tools.FindVisualParent <MenuControl>(this); //po.PageGereedButtonVisibility = System.Windows.Visibility.Visible; //po.PageOKButtonText = "PROJECT TOEVOEGEN"; //vdv.Load(); //vdv.tabControl.SelectedIndex = 1; //po.OkClick += po.ToevoegenAanVakman; //po.dgProjecten.MouseDoubleClick -= po.dgProjecten_MouseDoubleClick; //po.dgProjecten.MouseDoubleClick += po.dgProjecten_MouseDoubleClickForVakman; owner.PageGoToPage(vdv); }
/// <summary> /// /// </summary> public void Load() { Vakman vm = ApplicationState.GetValue <Vakman>(ApplicationVariables.objVakman); dbOriginalRepository dbrepOriginal = new dbOriginalRepository(); persoon persoon = dbrepOriginal.GetContact(vm.ContactIdOrigineel); lblVakmanId.Content = vm.ContactIdOrigineel.ToString(); lblVakmanNaam.Content = persoon.voornaam + " " + persoon.tussenvoegsel + " " + persoon.achternaam; txtBsn.Text = vm.Bsn; txtPostcode.Text = vm.Postcode; txtHuisnummer.Text = vm.Huisnummer; txtAdres.Text = vm.Adres; AdresLookup = vm.Adres.Substring(0, vm.Adres.Length - vm.Huisnummer.Length).Trim(); txtMa.Text = vm.Ma.ToString(); txtDi.Text = vm.Di.ToString(); txtWo.Text = vm.Wo.ToString(); txtDo.Text = vm.Do.ToString(); txtVr.Text = vm.Vr.ToString(); txtZa.Text = vm.Za.ToString(); txtZo.Text = vm.Zo.ToString(); ddlDefaultBeginuur.Text = ((int)vm.DefaultBeginuur).ToString("D2"); ddlDefaultBeginminuut.Text = ((int)vm.DefaultBeginminuut).ToString("D2"); lblVakmanWerkweek.Content = vm.Werkweek.ToString(); }
public void SelectVakman() { if (dgVakmannen.SelectedIndex >= 0) { ApplicationState.SetValue(ApplicationVariables.intVakmanViewModus, 1); dbRepository dbrep = new dbRepository(); Vakman vm = dbrep.GetVakman(((vwVakman)dgVakmannen.SelectedItem).VakmanId); //ApplicationState.SetValue(ApplicationVariables.objVakman, vm); ApplicationState.SetValue(ApplicationVariables.intVakmanId, vm.VakmanId); dbOriginalRepository dbrepOriginal = new dbOriginalRepository(); MDRpersoon persoon = dbrepOriginal.GetContact(vm.ContactIdOrigineel); // create the page and load all values Vakmannen.Detail.VakmanDetailView vdv = new Vakmannen.Detail.VakmanDetailView(persoon); // load the page into the contentcontrol PageGoToPage(vdv); } }
public void Load() { dbRepository dbrep = new dbRepository(); if (objVakman == null) { objVakman = dbrep.GetVakman(ApplicationState.GetValue <int>(ApplicationVariables.intVakmanId)); } //if (dtSelectedDay == DateTime.MinValue) //{ dtSelectedDay = ApplicationState.GetValue <DateTime>(ApplicationVariables.dtSelectedDay); //} Vakman vm = objVakman; dbOriginalRepository dbrepOriginal = new dbOriginalRepository(); persoon persoon = dbrepOriginal.GetContact(vm.ContactIdOrigineel); lblVakmanId.Content = vm.ContactIdOrigineel.ToString(); bedrijf bedrijfzdb = dbrepOriginal.datacontext.bedrijfs.Where(b => b.bedrijf_nr == persoon.bedrijf_nr).FirstOrDefault(); if (bedrijfzdb != null) { lblWerkgever.Content = bedrijfzdb.naam; } lblVakmanNaam.Content = persoon.voornaam + " " + persoon.tussenvoegsel + " " + persoon.achternaam; txtBsn.Content = vm.Bsn; txtPostcode.Content = vm.Postcode; txtHuisnummer.Content = vm.Huisnummer; txtAdres.Content = vm.Adres; txtMa.Content = vm.Ma.ToString(); txtDi.Content = vm.Di.ToString(); txtWo.Content = vm.Wo.ToString(); txtDo.Content = vm.Do.ToString(); txtVr.Content = vm.Vr.ToString(); txtZa.Content = vm.Za.ToString(); txtZo.Content = vm.Zo.ToString(); ddlDefaultBeginuur.Content = ((int)vm.DefaultBeginuur).ToString("D2"); ddlDefaultBeginminuut.Content = ((int)vm.DefaultBeginminuut).ToString("D2"); lblVakmanWerkweek.Content = vm.Werkweek.ToString(); // create the page and load all values VakmanDagView vdv = new VakmanDagView(); vdv.LoadVakmanDagView(true, vm.VakmanId, dtSelectedDay); vdv.LoadWeekInfo(); tabPlanning.Content = vdv; }
public void Load() { dbOriginalRepository dbrepOriginal = new dbOriginalRepository(); MDRpersoon pp = dbrepOriginal.GetContact(projectleider.ContactIdOrigineel); lblProjectleider.Content = ToonNaam(pp); foreach (Project project in listProjecten) { MDRproject po = dbrepOriginal.GetProject((int)project.ProjectNr, true); StackPanel spProjectNaam = new StackPanel(); spProjectNaam.Orientation = Orientation.Horizontal; Label lblProjectNr = new Label(); lblProjectNr.Width = 40; lblProjectNr.Height = 19; lblProjectNr.Margin = new Thickness(10, 2, 0, 0); lblProjectNr.FontSize = 11; lblProjectNr.Padding = new Thickness(0, 2, 0, 0); if (po != null) { lblProjectNr.Content = po.project_NR.ToString(); } Label lbl = new Label(); lbl.Content = project.Naam.ToString(300); lbl.ToolTip = project.Naam; lbl.Height = 19; lbl.Margin = new Thickness(0, 2, 0, 0); lbl.FontSize = 11; lbl.Padding = new Thickness(0, 2, 0, 0); //lbl.Background = new SolidColorBrush(Colors.Bisque); //lbl.FontWeight = FontWeights.ExtraBold; //lbl.BorderThickness = new Thickness(0); spProjectNaam.Children.Add(lblProjectNr); spProjectNaam.Children.Add(lbl); spProjects.Children.Add(spProjectNaam); } }
/// /// </summary> public void Load() { try { Mouse.OverrideCursor = Cursors.Wait; // intialize dbRepository dbrep = new dbRepository(); dbOriginalRepository dbrepOriginal = new dbOriginalRepository(); List <PL> listPL = new List <PL>(); // admin gebruiker kan iedereen zien/worden foreach (Gebruiker plitem in dbrep.GetProjectleiders().Where(g => g.IsProjectleider || Rechten.IsAdmin)) { MDRpersoon tt = dbrepOriginal.GetContact(plitem.ContactIdOrigineel); PL pl = new PL(); //pl.Naam = plitem.ProjectleiderId.ToString() + ": " + (tt.voornaam + " " + tt.tussenvoegsel + " " + tt.achternaam).ToStringTrimmed(); pl.Naam = plitem.Gebruikersnaam; pl.GebruikerId = plitem.GebruikerId; pl.ContactIdOrigineel = plitem.ContactIdOrigineel; listPL.Add(pl); } cbProjectleiders.ItemsSource = listPL; cbProjectleiders.DisplayMemberPath = "Naam"; cbProjectleiders.SelectedValuePath = "GebruikerId"; cbProjectleiders.SelectedValue = ApplicationState.GetValue <Gebruiker>(ApplicationVariables.objGebruiker).GebruikerId; } catch { } finally { Mouse.OverrideCursor = null; } }
protected virtual void OnPropertyChanged(string propertyName) { PropertyChangedEventHandler handler = PropertyChanged; if (handler != null) { handler(this, new PropertyChangedEventArgs(propertyName)); } switch (propertyName) { case "Project": dbRepository dbrep = new dbRepository(); dbOriginalRepository dbreporiginal = new dbOriginalRepository(); persoon pp = dbreporiginal.GetContact(dbrep.GetProjectleider(project.ProjectleiderId).ContactIdOrigineel); lblHeader.Content = pp.voornaam + " " + pp.tussenvoegsel + " " + pp.achternaam; lblHeader.VerticalAlignment = System.Windows.VerticalAlignment.Top; //lblHeader.BorderThickness = new Thickness(1); //lblHeader.BorderBrush = new SolidColorBrush(Colors.Black); btnHeader.Style = this.FindResource("LinkButton") as Style; btnHeader.Content = project.Naam; btnHeader.Margin = new Thickness(0, 0, 0, -8); if (ApplicationState.GetValue <int>("intProjectId") == project.ProjectId) { // make bold //btnHeader.FontWeight = FontWeights.ExtraBold; } break; default: break; } }
public void Load() { //MessageBox.Show("#1"); Logging log = new Logging(); //log.Log("Vakmandetailview: Load()"); dbRepository dbrep = new dbRepository(); dbOriginalRepository dbrepOriginal = new dbOriginalRepository(); //if(objVakman == null) //{ objVakman = dbrep.GetVakman(ApplicationState.GetValue <int>(ApplicationVariables.intVakmanId)); //} if (objVakman.ZZP == true) { lbWerkrelatie.Content = "Bedrijfsnaam:"; lblWerkrelatie.Content = "ZZP'er"; } else { lbWerkrelatie.Content = "Werkgever:"; lblWerkrelatie.Content = "In loondienst"; } //if (dtSelectedDay == DateTime.MinValue) //{ dtSelectedDay = ApplicationState.GetValue <DateTime>(ApplicationVariables.dtSelectedDay); //} Vakman vm = objVakman; MDRpersoon persoon = dbrepOriginal.GetContact(vm.ContactIdOrigineel); if (persoon != null) { txtPostcode.Content = vm.Postcode + (string.IsNullOrWhiteSpace(vm.Plaats) || string.IsNullOrWhiteSpace(vm.Postcode) ? "" : ", ") + vm.Plaats; txtAdres.Content = vm.Adres + " " + vm.Huisnummer; //txtPlaats.Content = vm.Plaats; txtLand.Content = vm.Land; bool showWoonadresLabel = false; if (string.IsNullOrWhiteSpace(vm.Postcode) && string.IsNullOrWhiteSpace(vm.Plaats)) { lblPostcode.Visibility = System.Windows.Visibility.Collapsed; txtPostcode.Visibility = System.Windows.Visibility.Collapsed; } else { lblPostcode.Visibility = System.Windows.Visibility.Visible; txtPostcode.Visibility = System.Windows.Visibility.Visible; showWoonadresLabel = true; if (string.IsNullOrWhiteSpace(vm.Postcode)) { lblPostcode.Content = "Plaats"; } else if (string.IsNullOrWhiteSpace(vm.Plaats)) { lblPostcode.Content = "Postcode"; } else { lblPostcode.Content = "Postcode, plaats"; } } if (string.IsNullOrWhiteSpace(vm.Adres)) { lblAdres.Visibility = System.Windows.Visibility.Collapsed; txtAdres.Visibility = System.Windows.Visibility.Collapsed; } else { lblAdres.Visibility = System.Windows.Visibility.Visible; txtAdres.Visibility = System.Windows.Visibility.Visible; showWoonadresLabel = true; } //if (string.IsNullOrWhiteSpace(vm.Plaats)) //{ // lblPlaats.Visibility = System.Windows.Visibility.Collapsed; // txtPlaats.Visibility = System.Windows.Visibility.Collapsed; //} //else //{ // lblPlaats.Visibility = System.Windows.Visibility.Visible; // txtPlaats.Visibility = System.Windows.Visibility.Visible; // showWoonadresLabel = true; //} if (string.IsNullOrWhiteSpace(vm.Land)) { lblLand.Visibility = System.Windows.Visibility.Collapsed; txtLand.Visibility = System.Windows.Visibility.Collapsed; } else { lblLand.Visibility = System.Windows.Visibility.Visible; txtLand.Visibility = System.Windows.Visibility.Visible; showWoonadresLabel = true; } if (showWoonadresLabel) { lblWoonadres.Visibility = System.Windows.Visibility.Visible; } else { lblWoonadres.Visibility = System.Windows.Visibility.Collapsed; } if (persoon.geboortedatum != null) { txtGebdatum.Content = ((DateTime)persoon.geboortedatum).ToString("dd-MM-yyyy"); lblGebdatum.Visibility = System.Windows.Visibility.Visible; txtGebdatum.Visibility = System.Windows.Visibility.Visible; } else { lblGebdatum.Visibility = System.Windows.Visibility.Collapsed; txtGebdatum.Visibility = System.Windows.Visibility.Collapsed; } if (string.IsNullOrWhiteSpace(persoon.telefoon_nr_1)) { lblTelefoonPrive1.Visibility = System.Windows.Visibility.Collapsed; txtTelefoonPrive1.Visibility = System.Windows.Visibility.Collapsed; } else { lblTelefoonPrive1.Visibility = System.Windows.Visibility.Visible; txtTelefoonPrive1.Visibility = System.Windows.Visibility.Visible; } if (string.IsNullOrWhiteSpace(persoon.telefoon_nr_2)) { lblTelefoonPrive2.Visibility = System.Windows.Visibility.Collapsed; txtTelefoonPrive2.Visibility = System.Windows.Visibility.Collapsed; } else { lblTelefoonPrive2.Visibility = System.Windows.Visibility.Visible; txtTelefoonPrive2.Visibility = System.Windows.Visibility.Visible; } if (string.IsNullOrWhiteSpace(persoon.telefoon_nr_3)) { lblTelefoonPrive3.Visibility = System.Windows.Visibility.Collapsed; txtTelefoonPrive3.Visibility = System.Windows.Visibility.Collapsed; } else { lblTelefoonPrive3.Visibility = System.Windows.Visibility.Visible; txtTelefoonPrive3.Visibility = System.Windows.Visibility.Visible; } txtTelefoonPrive1.Content = persoon.telefoon_nr_1; txtTelefoonPrive2.Content = persoon.telefoon_nr_2; txtTelefoonPrive3.Content = persoon.telefoon_nr_3; if (string.IsNullOrWhiteSpace(persoon.zaemail)) { lblEmail.Visibility = System.Windows.Visibility.Collapsed; txtEmail.Visibility = System.Windows.Visibility.Collapsed; } else { lblEmail.Visibility = System.Windows.Visibility.Visible; txtEmail.Visibility = System.Windows.Visibility.Visible; } TextBlock email = new TextBlock(); email.Text = persoon.zaemail; txtEmail.Content = email; lblVakmanId.Content = persoon.persoon_nr == null ? "" : persoon.persoon_nr.ToString(); MDRbedrijf bedrijfzdb = dbrepOriginal.datacontext.MDRbedrijfs.Where(b => b.bedrijf_nr == persoon.bedrijf_nr).FirstOrDefault(); if (bedrijfzdb != null) { lblWerkgever.Content = bedrijfzdb.naam; } if (string.IsNullOrWhiteSpace(vm.Bsn)) { lblBsn.Visibility = System.Windows.Visibility.Collapsed; txtBsn.Visibility = System.Windows.Visibility.Collapsed; } else { lblBsn.Visibility = System.Windows.Visibility.Visible; txtBsn.Visibility = System.Windows.Visibility.Visible; } txtBsn.Content = vm.Bsn; lblVakmanNaam.Content = ToonNaam(persoon); txtMa.Content = vm.Ma.ToString().ToTime(); txtDi.Content = vm.Di.ToString().ToTime(); txtWo.Content = vm.Wo.ToString().ToTime(); txtDo.Content = vm.Do.ToString().ToTime(); txtVr.Content = vm.Vr.ToString().ToTime(); txtZa.Content = vm.Za.ToString().ToTime(); txtZo.Content = vm.Zo.ToString().ToTime(); lblIsChauffeur.Content = vm.IsChauffeur ? "Ja" : "Nee"; lblIsBijrijder.Content = vm.IsBijrijder ? "Ja" : "Nee"; if (vm.IsChauffeur) { wpChauffeur.Visibility = System.Windows.Visibility.Visible; } else { wpChauffeur.Visibility = System.Windows.Visibility.Collapsed; } if (vm.IsBijrijder) { wpBijrijder.Visibility = System.Windows.Visibility.Visible; } else { wpBijrijder.Visibility = System.Windows.Visibility.Collapsed; } txtChMa.Content = vm.IsChauffeurMa ? "Ja" : "Nee"; txtChDi.Content = vm.IsChauffeurDi ? "Ja" : "Nee"; txtChWo.Content = vm.IsChauffeurWo ? "Ja" : "Nee"; txtChDo.Content = vm.IsChauffeurDo ? "Ja" : "Nee"; txtChVr.Content = vm.IsChauffeurVr ? "Ja" : "Nee"; txtChZa.Content = vm.IsChauffeurZa ? "Ja" : "Nee"; txtChZo.Content = vm.IsChauffeurZo ? "Ja" : "Nee"; txtBrMa.Content = vm.IsBijrijderMa ? "Ja" : "Nee"; txtBrDi.Content = vm.IsBijrijderDi ? "Ja" : "Nee"; txtBrWo.Content = vm.IsBijrijderWo ? "Ja" : "Nee"; txtBrDo.Content = vm.IsBijrijderDo ? "Ja" : "Nee"; txtBrVr.Content = vm.IsBijrijderVr ? "Ja" : "Nee"; txtBrZa.Content = vm.IsBijrijderZa ? "Ja" : "Nee"; txtBrZo.Content = vm.IsBijrijderZo ? "Ja" : "Nee"; //ddlDefaultBeginuur.Content = ((int)vm.DefaultBeginuur).ToString("D2"); //ddlDefaultBeginminuut.Content = ((int)vm.DefaultBeginminuut).ToString("D2"); lblVakmanWerkweek.Content = "Uren (" + vm.Werkweek.ToString().ToTime() + "):"; // create the page and load all values VakmanDagView vdv = new VakmanDagView(); vdv.LoadVakmanDagView(true, vm.VakmanId, dtSelectedDay); vdv.LoadWeekInfo(); tabPlanning.Content = vdv; } }
public void Load() { dbRepository dbrep = new dbRepository(); if (intProjectId == -1) { intProjectId = ApplicationState.GetValue <int>(ApplicationVariables.intProjectId); } //if (dtSelectedDay == DateTime.MinValue) //{ dtSelectedDay = ApplicationState.GetValue <DateTime>(ApplicationVariables.dtSelectedDay); //} MandagenRegistratieDomain.Project project = dbrep.GetProject(intProjectId); dbOriginalRepository dbrepOriginal = new dbOriginalRepository(); persoon persoon = dbrepOriginal.GetContact(dbrep.GetProjectleider(project.ProjectleiderId).ContactIdOrigineel); project dboproject = dbrepOriginal.GetProject(project.ProjectIdOrigineel); MandagenRegistratieDomain.adressen dboadres = null; if (dboproject.adres_id_bouw != null) { dboadres = dbrepOriginal.datacontext.adressens.Where(a => a.adres_id == dboproject.adres_id_bouw).FirstOrDefault(); } else if (dboproject.adres_id_factuur != null) { dboadres = dbrepOriginal.datacontext.adressens.Where(a => a.adres_id == dboproject.adres_id_factuur).FirstOrDefault(); } bedrijf bedrijfzdb = dbrepOriginal.datacontext.bedrijfs.Where(b => b.bedrijf_nr == dboproject.opdrachtgeverZEEBREGTS_nr).FirstOrDefault(); if (bedrijfzdb != null) { lblOpdrachtgever.Content = bedrijfzdb.naam; } lblProjectNr.Content = dbrepOriginal.GetProject(project.ProjectIdOrigineel).project_NR.ToString(); lblActief.Content = project.Actief == true ? "Ja" : "Nee"; lblProjectnaam.Content = dboproject.naam_project; lblProjectleider.Content = persoon.voornaam + " " + persoon.tussenvoegsel + " " + persoon.achternaam; if (dboadres != null) { lblPostcode.Content = dboadres.postcode_cijfers.HasValue ? dboadres.postcode_cijfers.Value.ToString() + dboadres.postcode_letters : ""; lblHuisnummer.Content = dboadres.huis_postbus_nummer + dboadres.huisnummer_toevoeging; lblAdres.Content = dboadres.straat_1; } ProjectDagView pdv = new ProjectDagView(); pdv.objProject = project; pdv.LoadVakmanDagView(true, intProjectId, dtSelectedDay); pdv.LoadWeekInfo(); //pdv.HorizontalAlignment = System.Windows.HorizontalAlignment.Stretch; tabPlanning.Content = pdv; }
public void Selectproject() { Mouse.OverrideCursor = Cursors.Wait; try { ApplicationState.SetValue(ApplicationVariables.intVakmanViewModus, 1); dbRepository dbrep = new dbRepository(); dbOriginalRepository dbOriginalRep = new dbOriginalRepository(); // haal het geselecteerde project op MandagenRegistratieDomain.Project project = dbrep.GetProject(((MandagenRegistratieDomain.vwProject)dgProjecten.SelectedItem).ProjectId); // bewaar info in 'sessie' ApplicationState.SetValue(ApplicationVariables.intProjectId, project.ProjectId); DateTime nu = DateTime.Now; //ApplicationState.SetValue(ApplicationVariables.dtSelectedDay, new DateTime(nu.Year, nu.Month, nu.Day, 0, 0, 0)); MDRpersoon projectleider = dbOriginalRep.GetContact(dbrep.GetProjectleider(project.ProjectleiderId).ContactIdOrigineel); MDRproject projectorigineel = dbOriginalRep.GetProject((int)project.ProjectNr); // create the page and load all values string strProjectleiderNaam = string.Empty; if (projectleider != null) { strProjectleiderNaam = (projectleider.voornaam + " " + projectleider.tussenvoegsel + " " + projectleider.achternaam).ToStringTrimmed(); } else { strProjectleiderNaam = ""; } Project pv = new Project(projectorigineel); // load the page into the contentcontrol PageGoToPage(pv); } catch (Exception ex) { if (dgProjecten.Items.Count == 0) { MessageBox.Show("Je zoekopdracht geeft geen resultaat, probeer een andere zoekterm."); } else if (dgProjecten.Items.Count == 1) { dgProjecten.SelectedIndex = 0; // gevaarlijk, kan oneindige loop in werking zetten! Selectproject(); } else { MessageBox.Show("Selecteer een project in de lijst en druk daarna op enter."); } } finally { 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"); } }
public static void LoginAls(int gebruikerId, bool isFirstLogin, object sender) { dbRepository dbrep = new dbRepository(); Gebruiker gebruiker = dbrep.GetGebruiker((int)gebruikerId); if (gebruiker != null) { // set gebruiker in sessie ApplicationState.SetValue(ApplicationVariables.intGebruikerId, gebruiker.GebruikerId); ApplicationState.SetValue(ApplicationVariables.objGebruiker, gebruiker); if (isFirstLogin) { ApplicationState.SetValue(ApplicationVariables.objGebruikerFirst, gebruiker); } Setting setting = dbrep.datacontext.Settings.Where(s => s.GebruikerId == ApplicationState.GetValue <int>(ApplicationVariables.intGebruikerId) && s.SettingsNaam == ApplicationVariables.strVakmanIdsAdding).FirstOrDefault(); if (setting != null) { ApplicationState.SetValue(ApplicationVariables.listSelectedVakmanIdsAdding, setting.SettingsValue.FromStringToList()); } Setting setting2 = dbrep.datacontext.Settings.Where(s => s.GebruikerId == ApplicationState.GetValue <int>(ApplicationVariables.intGebruikerId) && s.SettingsNaam == ApplicationVariables.strVakmanIdsDeleting).FirstOrDefault(); if (setting != null) { ApplicationState.SetValue(ApplicationVariables.listSelectedVakmanIdsDeleting, setting2.SettingsValue.FromStringToList()); } try { // set de projectleiderID in de sessie ApplicationState.SetValue(ApplicationVariables.intProjectleider, gebruiker.ProjectleiderId); // haal de projectleider op //Projectleider projectleider = dbrep.GetProjectleider((int)gebruiker.ProjectleiderId); // haal bijbehorende contact op uit database daan dbOriginalRepository dbrepOr = new dbOriginalRepository(); MDRpersoon contactpersoon = dbrepOr.GetContact(gebruiker.ContactIdOrigineel); PageContainer pcWindow = Tools.FindVisualParent <PageContainer>((DependencyObject)sender); string statusChat = pcWindow.Title.Split(new string[] { "||" }, StringSplitOptions.None)[2]; pcWindow.Title = ConfigurationManager.AppSettings["WindowTitle"].ToString() + " || Welkom " + (contactpersoon.voornaam + " " + contactpersoon.tussenvoegsel + " " + contactpersoon.achternaam).ToStringTrimmed() + " ||" + statusChat; // +" Status ZeebregtsChannelService: Actief"; // // informeer gebruiker dat ie automatisch ingelogd is //MessageBox.Show("Welkom " + gebruiker.Gebruikersnaam + ", u bent automatisch ingelogd als projectleider: " + (contactpersoon.voornaam + " " + contactpersoon.tussenvoegsel + " " + contactpersoon.achternaam).ToStringTrimmed()); //MessageBox.Show("Welkom " + gebruiker.Gebruikersnaam + ", u bent automatisch ingelogd als projectleider: " + gebruiker.Gebruikersnaam); } catch { // informeer gebruiker dat er geen projectleider gekoppeld is, en de gebruiker alleen lees rechten heeft //MessageBox.Show("Welkom " + gebruiker.Gebruikersnaam + ", er is nog geen account aan uw windows identiteit gekoppeld. Neem contact op met een systeembeheerder om een account aan uw windows identiteit te koppelen. U heeft voorlopig alleen lees-rechten."); } } }
/// <summary> /// /// </summary> public void Load() { Mouse.OverrideCursor = Cursors.Wait; int projectId = ApplicationState.GetValue <int>(ApplicationVariables.intProjectId); int projectleiderId = ApplicationState.GetValue <Gebruiker>(ApplicationVariables.objGebruiker).ProjectleiderId; dbRepository dbrep = new dbRepository(); MandagenRegistratieDomain.Project project = dbrep.GetProject(ApplicationState.GetValue <int>(ApplicationVariables.intProjectId)); dbOriginalRepository dbrepOriginal = new dbOriginalRepository(); MDRpersoon persoon = dbrepOriginal.GetContact(dbrep.GetProjectleider(project.ProjectleiderId).ContactIdOrigineel); MandagenRegistratieDomain.MDRproject dboproject = dbrepOriginal.datacontext.MDRprojects.Where(p => p.project_NR == project.ProjectNr).FirstOrDefault(); MandagenRegistratieDomain.MDRadressen dboadres = dbrepOriginal.datacontext.MDRadressens.Where(a => a.adres_id == dboproject.adres_id_bouw).FirstOrDefault(); lblProjectNr.Content = project.ProjectNr.ToString(); // dbrepOriginal.GetProject((int)project.ProjectNr).project_NR.ToString(); if (dboadres != null) { txtPostcodeCijfers.Text = (dboadres.postcode_cijfers.HasValue ? dboadres.postcode_cijfers.Value.ToString() : "") + dboadres.postcode_letters; //txtPostcodeLetters.Text = ; txtHuisnummer.Text = dboadres.huis_postbus_nummer + dboadres.huisnummer_toevoeging; txtAdres.Text = dboadres.straat_1; if (dboadres.straat_1.Length - txtHuisnummer.Text.Length > 0) { AdresLookup = dboadres.straat_1.Substring(0, dboadres.straat_1.Length - txtHuisnummer.Text.Length).Trim(); } else { AdresLookup = ""; } txtPlaats.Text = dboadres.plaats; txtLand.Text = dboadres.land; } txtProjectnaam.Text = dboproject.naam_project; if (persoon != null) { lblProjectleider.Content = (persoon.voornaam + " " + persoon.tussenvoegsel + " " + persoon.achternaam).ToStringTrimmed(); } else { lblProjectleider.Content = ""; } txtProjectcodeExtern.Text = dboproject.aannemer_projectnummer; txtProjectContractnummer.Text = dboproject.aannemer_contractnummer; txtProjectNacalculatiecode.Text = dboproject.nacalculatiecode; // set dropdownlist List <Gebruiker> listProjectleiders = new List <Gebruiker>(); listProjectleiders = dbrep.GetProjectleiders().Where(g => g.IsProjectleider).ToList(); cbProjectleiders.ItemsSource = listProjectleiders; cbProjectleiders.DisplayMemberPath = "Gebruikersnaam"; cbProjectleiders.SelectedValuePath = "ProjectleiderId"; cbProjectleiders.SelectedValue = ApplicationState.GetValue <Gebruiker>(ApplicationVariables.objGebruiker).ProjectleiderId; // set projectleiders voor eigenaarschap cbProjectleiders2.ItemsSource = listProjectleiders; cbProjectleiders2.DisplayMemberPath = "Gebruikersnaam"; cbProjectleiders2.SelectedValuePath = "ProjectleiderId"; cbProjectleiders2.SelectedValue = project.ProjectleiderId; // set zichtbaarheid if (project.ProjectleiderId == projectleiderId) { cbProjectleiders2.IsEnabled = true; } // set periodes List <cPeriode> listPeriodes = new List <cPeriode>(); List <Mandagen> listMandagen = dbrep.datacontext.Mandagens.Where(m => m.ProjectId == projectId).ToList(); List <Gebruiker> listProjectleiders2 = dbrep.GetProjectleiders(); // set huidige projectleider lblHuidigeProjectEigenaar.Content = listProjectleiders2.Where(p => p.ProjectleiderId == project.ProjectleiderId).FirstOrDefault().Gebruikersnaam; // default het scherm onzichtbaar maken // wpUrenOverdragen.Visibility = System.Windows.Visibility.Collapsed; // greyen in plaats van onzichtbaar maken lblBeginDatum.IsEnabled = false; cbProjectleiders.IsEnabled = false; // standaard zo imgCalendarOn.Visibility = System.Windows.Visibility.Collapsed; imgCalendar.Visibility = System.Windows.Visibility.Visible; if (listMandagen.Where(m => m.Begintijd != m.Eindtijd).Count() > 0) { } cPeriode cp = new cPeriode(); int previousProjectleiderId = 0; int counter = 0; List <Mandagen> listMandagenByDate = listMandagen.Where(m => m.Begintijd != m.Eindtijd).OrderBy(m => m.Begintijd).ToList(); foreach (Mandagen mandag in listMandagenByDate) { // count the loop counter++; int currentProjectleiderId = mandag.ProjectleiderId; //alleen de eerste keer startdatum standaard instellen if (previousProjectleiderId == 0) { cp.periodeVan = mandag.Begintijd.ToString("dd-MM-yyyy"); cp.periodeStart = mandag.Begintijd; } // als de huidige projectleider een andere is dan de vorige // dan vorige opslaan, en verder gaan met een nieuwe if (currentProjectleiderId != previousProjectleiderId && previousProjectleiderId != 0) { listPeriodes.Add(cp); cp = new cPeriode(); cp.periodeVan = mandag.Begintijd.ToString("dd-MM-yyyy"); cp.periodeStart = mandag.Begintijd; cp.periodeTot = mandag.Eindtijd.ToString("dd-MM-yyyy"); cp.periodeProjectleider = listProjectleiders2.FirstOrDefault(pl => pl.ProjectleiderId == mandag.ProjectleiderId).Gebruikersnaam; cp.periodeStop = mandag.Eindtijd; } // anders alleen verder gaan met de einddatum else { cp.periodeTot = mandag.Eindtijd.ToString("dd-MM-yyyy"); cp.periodeProjectleider = listProjectleiders2.FirstOrDefault(pl => pl.ProjectleiderId == mandag.ProjectleiderId).Gebruikersnaam; cp.periodeStop = mandag.Eindtijd; } // als het de laatste is, dan sowieso opslaaan if (listMandagenByDate.Count == counter) { listPeriodes.Add(cp); } // sla de previousProjectleiderID op previousProjectleiderId = mandag.ProjectleiderId; // als ik een periode heb, kan ik uren overzetten, anders heeft dat scherm uberhaupt geen nut if (mandag.ProjectleiderId == projectleiderId) { wpUrenOverdragen.Visibility = System.Windows.Visibility.Visible; // niet meer ge-greyd lblBeginDatum.IsEnabled = true; cbProjectleiders.IsEnabled = true; // calendar plaatjes verwisselen imgCalendarOn.Visibility = System.Windows.Visibility.Visible; imgCalendar.Visibility = System.Windows.Visibility.Collapsed; dtFirstPossibleDate = listMandagen.Where(m => m.ProjectleiderId == projectleiderId && m.Begintijd != m.Eindtijd).OrderBy(m => m.Begintijd).FirstOrDefault().Begintijd; dtLastPossibleDate = listMandagen.Where(m => m.ProjectleiderId == projectleiderId && m.Begintijd != m.Eindtijd).OrderByDescending(m => m.Eindtijd).FirstOrDefault().Eindtijd; // reset selected date on Load dtSelectedDate = dtFirstPossibleDate; dpBeginDatum.SelectedDate = dtSelectedDate; lblBeginDatum.Content = dtSelectedDate.ToString("dd-MM-yyyy"); } } //foreach (Gebruiker pl in listProjectleiders2.Where(p => listMandagen.Any(m => m.ProjectleiderId == p.ProjectleiderId))) //{ // cPeriode cp = new cPeriode(); // cp.periodeVan = listMandagen.Where(m => m.ProjectleiderId == pl.ProjectleiderId && m.Begintijd != m.Eindtijd).OrderBy(m => m.Begintijd).FirstOrDefault().Begintijd.ToString("dd-MM-yyyy"); // cp.periodeTot = listMandagen.Where(m => m.ProjectleiderId == pl.ProjectleiderId && m.Begintijd != m.Eindtijd).OrderByDescending(m => m.Eindtijd).FirstOrDefault().Eindtijd.ToString("dd-MM-yyyy"); // cp.periodeProjectleider = pl.Gebruikersnaam; // cp.periodeStart = listMandagen.Where(m => m.ProjectleiderId == pl.ProjectleiderId && m.Begintijd != m.Eindtijd).OrderBy(m => m.Begintijd).FirstOrDefault().Begintijd; // cp.periodeStop = listMandagen.Where(m => m.ProjectleiderId == pl.ProjectleiderId && m.Begintijd != m.Eindtijd).OrderByDescending(m => m.Eindtijd).FirstOrDefault().Eindtijd; // listPeriodes.Add(cp); // // als ik een periode heb, kan ik uren overzetten, anders heeft dat scherm uberhaupt geen nut // if (pl.ProjectleiderId == projectleiderId) // { // wpUrenOverdragen.Visibility = System.Windows.Visibility.Visible; // // niet meer ge-greyd // lblBeginDatum.IsEnabled = true; // cbProjectleiders.IsEnabled = true; // // calendar plaatjes verwisselen // imgCalendarOn.Visibility = System.Windows.Visibility.Visible; // imgCalendar.Visibility = System.Windows.Visibility.Collapsed; // dtFirstPossibleDate = listMandagen.Where(m => m.ProjectleiderId == pl.ProjectleiderId && m.Begintijd != m.Eindtijd).OrderBy(m => m.Begintijd).FirstOrDefault().Begintijd; // dtLastPossibleDate = listMandagen.Where(m => m.ProjectleiderId == pl.ProjectleiderId && m.Begintijd != m.Eindtijd).OrderByDescending(m => m.Eindtijd).FirstOrDefault().Eindtijd; // // reset selected date on Load // dtSelectedDate = dtFirstPossibleDate; // dpBeginDatum.SelectedDate = dtSelectedDate; // lblBeginDatum.Content = dtSelectedDate.ToString("dd-MM-yyyy"); // } //} itemsPeriodes.ItemsSource = listPeriodes.OrderBy(p => p.periodeStart).ThenBy(p => p.periodeStop).ToList(); Mouse.OverrideCursor = null; }
protected virtual void OnPropertyChanged(string propertyName) { PropertyChangedEventHandler handler = PropertyChanged; if (handler != null) { handler(this, new PropertyChangedEventArgs(propertyName)); } switch (propertyName) { case "Project": dbRepository dbrep = new dbRepository(); DateTime dtSelectedDay = ApplicationState.GetValue <DateTime>(ApplicationVariables.dtSelectedDay); DbTools dbtools = new DbTools(); StackPanel strTooltip = new StackPanel(); StackPanel strTooltipAanvraag = new StackPanel(); dbOriginalRepository dbreporiginal = new dbOriginalRepository(); MDRpersoon pp = dbreporiginal.GetContact(dbrep.GetProjectleider(project.ProjectleiderId, project.ProjectId, dtSelectedDay).ContactIdOrigineel); lblHeader.Content = ToonNaam(pp); lblHeader.VerticalAlignment = System.Windows.VerticalAlignment.Top; //lblHeader.BorderThickness = new Thickness(1); //lblHeader.BorderBrush = new SolidColorBrush(Colors.Black); btnHeader.Style = this.FindResource("LinkButton") as Style; MDRproject pr = dbreporiginal.GetProject((int)project.ProjectNr); double ww = 400; if (btnHeader.Width > 0) { ww = btnHeader.Width; } if (btnHeader.FontSize > 11) { ww = ww * 0.8; } // TOOLTIP // TOOLTIP // TOOLTIP DateTime dtdag = ApplicationState.GetValue <DateTime>(ApplicationVariables.dtSelectedDay); Vakman vakman = dbrep.GetVakman(ApplicationState.GetValue <int>(ApplicationVariables.intVakmanId)); strTooltipAanvraag.Children.Add(dbtools.AddTooltipAanvraagAll(vakman, project, dtdag, true, true)); if (pr != null) { btnHeader.Content = pr.project_NR.ToString(5) + " " + pr.naam_project.ToString(ww); // de naam van het project ook tonen in de tooltip bovenaan //strTooltip.AddText(pr.naam_project.ToString() + " (Project " + pr.project_NR + ")"); } else { btnHeader.Content = " " + project.Naam.ToString(ww); // de naam van het project ook tonen in de tooltip bovenaan //strTooltip.AddText(project.Naam.ToString() + " (Project --)"); } //List<Mandagen> listMandagenTotal = dbrep.datacontext.Mandagens.Where(m => m.Begintijd != m.Eindtijd && m.Begintijd >= ApplicationState.GetValue<DateTime>(ApplicationVariables.dtSelectedDay) && m.Eindtijd <= ApplicationState.GetValue<DateTime>(ApplicationVariables.dtSelectedDay).AddDays(1)).ToList(); //List<Mandagen> listMandagen = listMandagenTotal.Where(m => m.ProjectId == project.ProjectId).ToList(); //// als in deze pool van mandagen een aanvraag zit: //// vandaag, ander project, geen projectleider, niet bevestigd (dus aanvraag) //List<Mandagen> listAanvragen = listMandagenTotal.Where(m => m.ProjectleiderId != ApplicationState.GetValue<Gebruiker>(ApplicationVariables.objGebruiker).ProjectleiderId && m.ProjectId != project.ProjectId && m.Begintijd >= ApplicationState.GetValue<DateTime>(ApplicationVariables.dtSelectedDay) && m.Eindtijd <= ApplicationState.GetValue<DateTime>(ApplicationVariables.dtSelectedDay).AddDays(1) && !m.Status).ToList(); //// als in deze pool van mandagen een aanvraag zit: //// vandaag, ander project, geen projectleider, wel bevestigd (dus waar dit de aanvraag van is) //List<Mandagen> listMandagenWaarDitDeAanvraagVanIs = listMandagenTotal.Where(m => m.ProjectId != project.ProjectId && m.ProjectleiderId != ApplicationState.GetValue<Gebruiker>(ApplicationVariables.objGebruiker).ProjectleiderId && m.ProjectId != project.ProjectId && m.Begintijd >= dtSelectedDay && m.Eindtijd <= dtSelectedDay.AddDays(1) && m.Status).ToList(); //int previousVakmanId = -1; //foreach (Mandagen mandag in listMandagen) //{ // if (mandag.Status) // { // bool isBold = mandag.VakmanId == ApplicationState.GetValue<int>(ApplicationVariables.intVakmanId); // //strTooltip.AddText("(" + ToonTijd(mandag) + ")" + " " + ToonNaam(dbreporiginal.GetContact(mandag.Vakman.ContactIdOrigineel, true)), isBold); // // OF we hebben te maken met externe aanvragen // Mandagen aanvraag = listAanvragen.FirstOrDefault(m => m.Begintijd < mandag.Eindtijd && m.Eindtijd > mandag.Begintijd && m.VakmanId == mandag.VakmanId); // if (aanvraag != null) // { // List<Mandagen> listIngeplandeMandagen = new List<Mandagen>(); // listIngeplandeMandagen.Add(mandag); // if (previousVakmanId == mandag.VakmanId) // { // //strTooltipAanvraag.Children.Add(dbtools.AddTooltipAanvraagMinOnly(listIngeplandeMandagen, aanvraag, false)); // //strTooltipAanvraag.Children.Add(dbtools.AddTooltipAanvraagAll(mandag.Vakman, mandag.Project, dbtools.GetHeleDag(mandag.Begintijd))); // } // else // { // //strTooltipAanvraag.Children.Add(dbtools.AddTooltipAanvraag(listIngeplandeMandagen, aanvraag, false)); // //strTooltipAanvraag.Children.Add(dbtools.AddTooltipAanvraagAll(mandag.Vakman, mandag.Project, dbtools.GetHeleDag(mandag.Begintijd))); // } // previousVakmanId = mandag.VakmanId; // } // } // else // { // if (previousVakmanId == mandag.VakmanId) // { // //strTooltipAanvraag.Children.Add(dbtools.AddTooltipAanvraagMinOnly(listMandagenWaarDitDeAanvraagVanIs, mandag, true)); // //strTooltipAanvraag.Children.Add(dbtools.AddTooltipAanvraagAll(mandag.Vakman, mandag.Project, dbtools.GetHeleDag(mandag.Begintijd), true, false)); // } // else // { // // OF het is zelf de aanvraag // //strTooltipAanvraag.Children.Add(dbtools.AddTooltipAanvraag(listMandagenWaarDitDeAanvraagVanIs, mandag, true)); // //strTooltipAanvraag.Children.Add(dbtools.AddTooltipAanvraagAll(mandag.Vakman, mandag.Project, dbtools.GetHeleDag(mandag.Begintijd), true, false)); // } // previousVakmanId = mandag.VakmanId; // } //} //foreach (Mandagen mandag in listAanvragen) //{ // if (!mandag.Status) // { // // OF dit project heeft een andere aanvraag lopen die de vakman VAN het project af wil halen // listMandagenWaarDitDeAanvraagVanIs = listMandagenTotal.Where(m => m.VakmanId == mandag.VakmanId && m.ProjectId != mandag.ProjectId && m.ProjectleiderId != ApplicationState.GetValue<Gebruiker>(ApplicationVariables.objGebruiker).ProjectleiderId && m.Begintijd >= dtSelectedDay && m.Eindtijd <= dtSelectedDay.AddDays(1) && m.Status).ToList(); // strTooltipAanvraag += AddTooltipAanvraag(listMandagenWaarDitDeAanvraagVanIs, mandag, false); // } //} ToolTipService.SetShowDuration(btnHeader, 20000); strTooltip.Children.Add(strTooltipAanvraag); btnHeader.ToolTip = strTooltip; btnHeader.Margin = new Thickness(0, 0, 0, -8); if (ApplicationState.GetValue <int>("intProjectId") == project.ProjectId) { // make bold //btnHeader.FontWeight = FontWeights.ExtraBold; } break; default: break; } }
public void calculateDag(Button lblDag, Project objProject, DateTime datum) { dbOriginalRepository dbo = new dbOriginalRepository(); // per dag extra tooltip informatie: string strTooltip = string.Empty; // filter alleen de mandagen voor vandaag, waarvan de ingelogde kijker projectleider is, // van het huidige project waar we naar kijken List <Mandagen> listMandagen = listMandagenTotal.Where(m => m.ProjectleiderId == objProjectleider.ProjectleiderId && m.ProjectId == objProject.ProjectId && m.Begintijd >= datum && m.Eindtijd <= datum.AddDays(1)).ToList(); // als in deze pool van mandagen een aanvraag zit: // vandaag, ander project, geen projectleider, niet bevestigd (dus aanvraag) List <Mandagen> listAanvragen = listMandagenTotal.Where(m => m.ProjectleiderId != objProjectleider.ProjectleiderId && m.ProjectId != objProject.ProjectId && m.Begintijd >= datum && m.Eindtijd <= datum.AddDays(1) && !m.Status).ToList(); //long totalTicks = 0; bool hasAanvraag = false; int totalHours = 0; int totalMinutes = 0; // TODO: WEER AANZETTEN, CACHE TEST foreach (Mandagen mandag in listMandagen) { // bereken de som der uren //ALLEEN ALS HET EEN BEVESTIGD UUR IS if (mandag.Status) { //long lnMandagTicks = (mandag.Eindtijd.Ticks - mandag.Begintijd.Ticks); //totalTicks += lnMandagTicks; //TimeSpan tsMandag = TimeSpan.FromTicks(lnMandagTicks); MDRpersoon persoon = dbo.GetContact(mandag.Vakman.ContactIdOrigineel, true); if (persoon != null) { strTooltip += Environment.NewLine; //strTooltip += "(" + ((int)Math.Ceiling(tsMandag.TotalHours)).ToString() + "u) " + (persoon.voornaam + " " + persoon.tussenvoegsel + " " + persoon.achternaam).ToStringTrimmed(); strTooltip += "(" + mandag.Uren.ToString() + ":" + (mandag.Minuten < 10 ? "0" : "") + mandag.Minuten.ToString() + ") " + (persoon.voornaam + " " + persoon.tussenvoegsel + " " + persoon.achternaam).ToStringTrimmed(); } totalHours += mandag.Uren; totalMinutes += mandag.Minuten; } // zwart randje tonen als: een van de vakmannen een aanvraag is, // of er voor een van de vakmannen een aanvraag is gedaan die invloed heeft op dit project // en nog niet geannuleerd is als die door iemand anders is gedaan, of wel geannuleerd als die door mij is gedaan // // DUS: // als de betreffende mandag een aanvraag is // OF er een aanvraag is die deze overlapt qua tijden, voor een ander project is, maar voor dezelfde vakman, en nog niet geannulleerd dus lopende aanvraag //if ((!mandag.Status && !mandag.Geannulleerd) || listAanvragen.Any(a => a.Eindtijd > mandag.Begintijd && a.Begintijd < mandag.Eindtijd && a.ProjectId != mandag.ProjectId && a.VakmanId == mandag.VakmanId && !a.Geannulleerd)) if ((!mandag.Status) || listAanvragen.Any(a => !a.Geannulleerd && a.Eindtijd > mandag.Begintijd && a.Begintijd < mandag.Eindtijd && a.ProjectId != mandag.ProjectId && a.VakmanId == mandag.VakmanId)) { hasAanvraag = true; } } // END TODO: WEER AANZETTEN, CACHE TEST // CHECKEN //TimeSpan totalTimespan = TimeSpan.FromTicks(totalTicks); lblDag.Width = 24; lblDag.Height = 17; lblDag.Margin = new Thickness(2, 2, 2, 2); lblDag.FontSize = 11; lblDag.HorizontalContentAlignment = System.Windows.HorizontalAlignment.Right; lblDag.Padding = new Thickness(0, -1, 2, 0); lblDag.ToolTip = objProject.Naam + strTooltip; int totalHoursRounded = 0; //totalHoursRounded = (int)Math.Ceiling(totalTimespan.TotalHours); int minutesRemainder = totalMinutes % 60; totalHoursRounded = totalHours + (int)((totalMinutes - minutesRemainder) / 60) + (minutesRemainder == 0 ? 0 : 1); //if (totalTimespan.Minutes > 0) //{ // totalHoursRounded ++; //} lblDag.Content = totalHoursRounded == 0 ? "" : totalHoursRounded.ToString(); bool blnUseInvisibleColorsAKASwitchColors = false; // 0 niet tonen if (totalHoursRounded == 0 && !hasAanvraag) { blnUseInvisibleColorsAKASwitchColors = true; //lblDag.Visibility = System.Windows.Visibility.Hidden; } else { HasHours = true; } List <object> tag = new List <object>(); tag.Add(objProject); tag.Add(datum); lblDag.Tag = tag; // standaard kleuren van de border if (weeknummer % 2 == 0) { if (blnUseInvisibleColorsAKASwitchColors) { // use this color to make it invisible (same color as background) lblDag.BorderBrush = (SolidColorBrush)(new BrushConverter().ConvertFrom("#FFC5D9F1")); } else { // original color lblDag.BorderBrush = (SolidColorBrush)(new BrushConverter().ConvertFrom("#FFFFFFFF")); } } else { if (blnUseInvisibleColorsAKASwitchColors) { // use this color to make it invisible (same color as background) lblDag.BorderBrush = (SolidColorBrush)(new BrushConverter().ConvertFrom("#FFFFFFFF")); } else { lblDag.BorderBrush = (SolidColorBrush)(new BrushConverter().ConvertFrom("#FFC5D9F1")); } } // zwarte rand maken bij een aanvraag if (hasAanvraag) { double[] dimensions = new double[] { 2, 2 }; Rectangle dottedRectangle = new Rectangle(); dottedRectangle.Stroke = blnOwner ? new SolidColorBrush(Colors.Black) : new SolidColorBrush(Colors.Gray); dottedRectangle.SnapsToDevicePixels = true; dottedRectangle.Height = 2; dottedRectangle.StrokeThickness = 2; dottedRectangle.Height = 24; dottedRectangle.Width = 45; dottedRectangle.StrokeDashArray = new DoubleCollection(dimensions); VisualBrush vb = new VisualBrush(); vb.Visual = dottedRectangle; lblDag.BorderBrush = vb; // new SolidColorBrush(Colors.Black); // (SolidColorBrush)(new BrushConverter().ConvertFrom("#00000000")); } // standaard achtergrondkleuren van de dagen if (weeknummer % 2 == 0) { lblDag.Background = (SolidColorBrush)(new BrushConverter().ConvertFrom("#FFC5D9F1")); } else { lblDag.Background = (SolidColorBrush)(new BrushConverter().ConvertFrom("#FFFFFFFF")); } lblDag.BorderThickness = new Thickness(2); // END CHECCKEN //lblDag.ToolTip = objProject.Naam + strTooltip; //int totalHoursRounded = 0; ////totalHoursRounded = (int)Math.Ceiling(totalTimespan.TotalHours); //int minutesRemainder = totalMinutes % 60; //totalHoursRounded = totalHours + (int)((totalMinutes - minutesRemainder) / 60) + (minutesRemainder == 0 ? 0 : 1); ////if (totalTimespan.Minutes > 0) ////{ //// totalHoursRounded ++; ////} //lblDag.Content = totalHoursRounded == 0 ? "" : totalHoursRounded.ToString(); //bool blnUseInvisibleColorsAKASwitchColors = false; //// 0 niet tonen //if (totalHoursRounded == 0 && !hasAanvraag) //{ // blnUseInvisibleColorsAKASwitchColors = true; // //lblDag.Visibility = System.Windows.Visibility.Hidden; //} //else //{ // HasHours = true; //} //List<object> tag = new List<object>(); //tag.Add(objProject); //tag.Add(datum); //lblDag.Tag = tag; //// zwarte rand maken bij een aanvraag //if (hasAanvraag) //{ // double[] dimensions = new double[] { 2, 2 }; // Rectangle dottedRectangle = new Rectangle(); // dottedRectangle.Stroke = blnOwner ? new SolidColorBrush(Colors.Black) : new SolidColorBrush(Colors.Gray); // dottedRectangle.SnapsToDevicePixels = true; // dottedRectangle.Height = 2; // dottedRectangle.StrokeThickness = 2; // dottedRectangle.Height = 24; // dottedRectangle.Width = 45; // dottedRectangle.StrokeDashArray = new DoubleCollection(dimensions); // VisualBrush vb = new VisualBrush(); // vb.Visual = dottedRectangle; // lblDag.BorderBrush = vb; // new SolidColorBrush(Colors.Black); // (SolidColorBrush)(new BrushConverter().ConvertFrom("#00000000")); //} }
public void Save() { try { dbRepository dbrep = new dbRepository(); dbOriginalRepository dbrepOriginal = new dbOriginalRepository(); Vakman vakman = dbrep.GetVakman(ApplicationState.GetValue <int>(ApplicationVariables.intVakmanId)); MDRpersoon persoon = dbrepOriginal.GetContact(vakman.ContactIdOrigineel); // alleen saven als het ingevuld is if (Tools.IsValidBsn(txtBsn.Text)) { if (txtBsn.Text.Length == 8) { vakman.Bsn = "0" + txtBsn.Text; } else { vakman.Bsn = txtBsn.Text; } } else { vakman.Bsn = txtBsn.Text; } persoon.zaemail = txtEmail.Text; try { int iDag = -1; int iMaand = -1; int iJaar = -1; if (!string.IsNullOrWhiteSpace(txtDag.Text)) { try { iDag = Convert.ToInt32(txtDag.Text); } catch { } } if (!string.IsNullOrWhiteSpace(txtMaand.Text)) { try { iMaand = Convert.ToInt32(txtMaand.Text); } catch { } } if (!string.IsNullOrWhiteSpace(txtJaar.Text)) { try { iJaar = Convert.ToInt32(txtJaar.Text); } catch { } } if (iJaar > 1900 && iMaand > 0 && iDag > 0) { try { DateTime gebdat = new DateTime(iJaar, iMaand, iDag); persoon.geboortedatum = gebdat; } catch { } } } catch {} dbrepOriginal.datacontext.SubmitChanges(); vakman.Postcode = txtPostcode.Text; vakman.Huisnummer = txtHuisnummer.Text; vakman.Adres = txtAdres.Text; vakman.Plaats = txtPlaats.Text; vakman.Land = txtLand.Text; //vakman.Ophaalpostcode = listTextboxes[3].Text; //vakman.Ophaalhuisnummer = listTextboxes[4].Text; //vakman.Ophaaladres = listTextboxes[5].Text; vakman.Ma = Convert.ToDecimal(cbMaUur.SelectedValue.ToString().HourToTimeDouble() + cbMaMin.SelectedValue.ToString().MinuteToTimeDouble()); vakman.Di = Convert.ToDecimal(cbDiUur.SelectedValue.ToString().HourToTimeDouble() + cbDiMin.SelectedValue.ToString().MinuteToTimeDouble()); vakman.Wo = Convert.ToDecimal(cbWoUur.SelectedValue.ToString().HourToTimeDouble() + cbWoMin.SelectedValue.ToString().MinuteToTimeDouble()); vakman.Do = Convert.ToDecimal(cbDoUur.SelectedValue.ToString().HourToTimeDouble() + cbDoMin.SelectedValue.ToString().MinuteToTimeDouble()); vakman.Vr = Convert.ToDecimal(cbVrUur.SelectedValue.ToString().HourToTimeDouble() + cbVrMin.SelectedValue.ToString().MinuteToTimeDouble()); vakman.Za = Convert.ToDecimal(cbZaUur.SelectedValue.ToString().HourToTimeDouble() + cbZaMin.SelectedValue.ToString().MinuteToTimeDouble()); vakman.Zo = Convert.ToDecimal(cbZoUur.SelectedValue.ToString().HourToTimeDouble() + cbZoMin.SelectedValue.ToString().MinuteToTimeDouble()); vakman.Werkweek = vakman.Ma + vakman.Di + vakman.Wo + vakman.Do + vakman.Vr + vakman.Za + vakman.Zo; vakman.IsChauffeurMa = cbChauffeurMa.IsChecked == true && cbChauffeur.IsChecked == true; vakman.IsChauffeurDi = cbChauffeurDi.IsChecked == true && cbChauffeur.IsChecked == true; vakman.IsChauffeurWo = cbChauffeurWo.IsChecked == true && cbChauffeur.IsChecked == true; vakman.IsChauffeurDo = cbChauffeurDo.IsChecked == true && cbChauffeur.IsChecked == true; vakman.IsChauffeurVr = cbChauffeurVr.IsChecked == true && cbChauffeur.IsChecked == true; vakman.IsChauffeurZa = cbChauffeurZa.IsChecked == true && cbChauffeur.IsChecked == true; vakman.IsChauffeurZo = cbChauffeurZo.IsChecked == true && cbChauffeur.IsChecked == true; vakman.IsChauffeur = (bool)cbChauffeur.IsChecked; vakman.IsBijrijderMa = cbBijrijderMa.IsChecked == true && cbBijrijdersregistratie.IsChecked == true; vakman.IsBijrijderDi = cbBijrijderDi.IsChecked == true && cbBijrijdersregistratie.IsChecked == true; vakman.IsBijrijderWo = cbBijrijderWo.IsChecked == true && cbBijrijdersregistratie.IsChecked == true; vakman.IsBijrijderDo = cbBijrijderDo.IsChecked == true && cbBijrijdersregistratie.IsChecked == true; vakman.IsBijrijderVr = cbBijrijderVr.IsChecked == true && cbBijrijdersregistratie.IsChecked == true; vakman.IsBijrijderZa = cbBijrijderZa.IsChecked == true && cbBijrijdersregistratie.IsChecked == true; vakman.IsBijrijderZo = cbBijrijderZo.IsChecked == true && cbBijrijdersregistratie.IsChecked == true; vakman.IsBijrijder = (bool)cbBijrijdersregistratie.IsChecked; vakman.ZZP = cbWerkrelatie.SelectedIndex == 1; //string strUur = ddlDefaultBeginuur.Text; //vakman.DefaultBeginuur = strUur.ToInt(); //string strMinuut = ddlDefaultBeginminuut.Text; //vakman.DefaultBeginminuut = strMinuut.ToInt(); dbrep.datacontext.SubmitChanges(); //ApplicationState.SetValue(ApplicationVariables.objVakman, vakman); ApplicationState.SetValue(ApplicationVariables.intVakmanId, vakman.VakmanId); // na het saven terug in history PageGoBack(); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
protected virtual void OnPropertyChanged(string propertyName) { PropertyChangedEventHandler handler = PropertyChanged; if (handler != null) { handler(this, new PropertyChangedEventArgs(propertyName)); } switch (propertyName) { case "Vakman": try { StackPanel strTooltip = new StackPanel(); StackPanel strTooltipAanvraag = new StackPanel(); btnHeader.Style = this.FindResource("LinkButton") as Style; //btnHeader.Style = Tools.FindVisualParent<PageContainer>(this).FindResource("LinkButton") as Style; dbOriginalRepository dbRepOriginal = new dbOriginalRepository(); dbRepository dbrep = new dbRepository(); DbTools dbtools = new DbTools(); MDRpersoon p = dbRepOriginal.GetContact(vakman.ContactIdOrigineel); // TOOLTIP // TOOLTIP // TOOLTIP DateTime dtdag = ApplicationState.GetValue <DateTime>(ApplicationVariables.dtSelectedDay); Project project = dbrep.GetProject(ApplicationState.GetValue <int>(ApplicationVariables.intProjectId)); Vakman objVakman = dbrep.GetVakman(vakman.VakmanId); strTooltipAanvraag.Children.Add(dbtools.AddTooltipAanvraagAll(objVakman, project, dtdag, false, false)); if (p != null) { btnHeader.Content = (p.voornaam + " " + (p.tussenvoegsel == null ? "" : p.tussenvoegsel) + " " + p.achternaam).ToStringTrimmed(); bool isBold = vakman.VakmanId == ApplicationState.GetValue <int>(ApplicationVariables.intVakmanId); //strTooltip.AddText((p.voornaam + " " + (p.tussenvoegsel == null ? "" : p.tussenvoegsel) + " " + p.achternaam).ToStringTrimmed(), isBold); } //List<Mandagen> listMandagenTotal = dbrep.GetMandagen(vakman.VakmanId, ApplicationState.GetValue<DateTime>(ApplicationVariables.dtSelectedDay)).Where(m => m.Begintijd != m.Eindtijd).OrderBy(m => m.Status).ToList(); //int previousVakmanId = -1; //foreach (Mandagen mandag in listMandagenTotal) //{ // // als in deze pool van mandagen een aanvraag zit: // // vandaag, ander project, geen projectleider, wel bevestigd (dus waar dit de aanvraag van is) // List<Mandagen> listMandagenWaarDitDeAanvraagVanIs = listMandagenTotal.Where(m => m.ProjectId != mandag.ProjectId && m.ProjectleiderId != ApplicationState.GetValue<Gebruiker>(ApplicationVariables.objGebruiker).ProjectleiderId && m.ProjectId != mandag.ProjectId && m.Begintijd >= ApplicationState.GetValue<DateTime>(ApplicationVariables.dtSelectedDay) && m.Eindtijd <= ApplicationState.GetValue<DateTime>(ApplicationVariables.dtSelectedDay).AddDays(1) && m.Status).ToList(); // if (mandag.Status) // { // bool isBold = (ApplicationState.GetValue<int>(ApplicationVariables.intProjectId) == mandag.ProjectId); // strTooltip.AddText("(" + ToonTijd(mandag) + ")" + " " + dbRepOriginal.GetProject((int)mandag.Project.ProjectNr).naam_project, isBold); // } // if (!mandag.Status) // { // bool reverse = false; // if (ApplicationState.GetValue<int>(ApplicationVariables.intProjectId) == mandag.ProjectId) // { // reverse = true; // } // if (previousVakmanId == mandag.VakmanId) // { // //strTooltipAanvraag.Children.Add(dbtools.AddTooltipAanvraagMinOnly(listMandagenWaarDitDeAanvraagVanIs, mandag, reverse)); // //strTooltipAanvraag.Children.Add(dbtools.AddTooltipAanvraagAll(mandag.Vakman, mandag.Project, dbtools.GetHeleDag(mandag.Begintijd))); // } // else // { // //strTooltipAanvraag.Children.Add(dbtools.AddTooltipAanvraag(listMandagenWaarDitDeAanvraagVanIs, mandag, reverse)); // //strTooltipAanvraag.Children.Add(dbtools.AddTooltipAanvraagAll(mandag.Vakman, mandag.Project, dbtools.GetHeleDag(mandag.Begintijd))); // } // } // previousVakmanId = mandag.VakmanId; //} ToolTipService.SetShowDuration(btnHeader, 20000); strTooltip.Children.Add(strTooltipAanvraag); btnHeader.ToolTip = strTooltip; if (ApplicationState.GetValue <int>(ApplicationVariables.intVakmanId) == vakman.VakmanId) { // make bold //btnHeader.FontWeight = FontWeights.ExtraBold; } } catch (Exception ex) { MessageBox.Show(ex.Message); } break; default: break; } }
public void Load() { try { Mouse.OverrideCursor = Cursors.Wait; int projectId = ApplicationState.GetValue <int>(ApplicationVariables.intProjectId); int projectleiderId = ApplicationState.GetValue <Gebruiker>(ApplicationVariables.objGebruiker).ProjectleiderId; dbRepository dbrep = new dbRepository(); if (intProjectId == -1) { intProjectId = ApplicationState.GetValue <int>(ApplicationVariables.intProjectId); } //if (dtSelectedDay == DateTime.MinValue) //{ dtSelectedDay = ApplicationState.GetValue <DateTime>(ApplicationVariables.dtSelectedDay); //} MandagenRegistratieDomain.Project project = dbrep.GetProject(intProjectId); dbOriginalRepository dbrepOriginal = new dbOriginalRepository(); MDRpersoon persoon = dbrepOriginal.GetContact(dbrep.GetProjectleider(project.ProjectleiderId).ContactIdOrigineel); MDRproject dboproject = dbrepOriginal.GetProject((int)project.ProjectNr); MandagenRegistratieDomain.MDRadressen dboadres = null; if (dboproject.adres_id_bouw != null) { dboadres = dbrepOriginal.datacontext.MDRadressens.Where(a => a.adres_id == dboproject.adres_id_bouw).FirstOrDefault(); } else if (dboproject.adres_id_factuur != null) { dboadres = dbrepOriginal.datacontext.MDRadressens.Where(a => a.adres_id == dboproject.adres_id_factuur).FirstOrDefault(); } MDRbedrijf bedrijfzdb = dbrepOriginal.datacontext.MDRbedrijfs.Where(b => b.bedrijf_nr == dboproject.opdrachtgeverZEEBREGTS_nr).FirstOrDefault(); if (bedrijfzdb != null) { lblOpdrachtgever.Content = bedrijfzdb.naam; } lblProjectNr.Content = project.ProjectNr.ToString(); // dbrepOriginal.GetProject((int)project.ProjectNr).project_NR.ToString(); lblProjectnaam.Content = dboproject.naam_project; if (persoon != null) { lblProjectleider.Content = (persoon.voornaam + " " + persoon.tussenvoegsel + " " + persoon.achternaam).ToStringTrimmed(); } else { lblProjectleider.Content = ""; } lblProjectcodeExtern.Content = dboproject.aannemer_projectnummer; lblProjectContractnummer.Content = dboproject.aannemer_contractnummer; lblProjectNacalculatiecode.Content = dboproject.nacalculatiecode; bool showLblReferentieOpdrachtgever = false; if (string.IsNullOrWhiteSpace(dboproject.aannemer_projectnummer)) { lblProjectcodeExtern.Visibility = System.Windows.Visibility.Collapsed; lblProjectcodeExtern2.Visibility = System.Windows.Visibility.Collapsed; } else { lblProjectcodeExtern.Visibility = System.Windows.Visibility.Visible; lblProjectcodeExtern2.Visibility = System.Windows.Visibility.Visible; showLblReferentieOpdrachtgever = true; } if (string.IsNullOrWhiteSpace(dboproject.aannemer_contractnummer)) { lblProjectContractnummer.Visibility = System.Windows.Visibility.Collapsed; lblProjectContractnummer2.Visibility = System.Windows.Visibility.Collapsed; } else { lblProjectContractnummer.Visibility = System.Windows.Visibility.Visible; lblProjectContractnummer2.Visibility = System.Windows.Visibility.Visible; showLblReferentieOpdrachtgever = true; } if (string.IsNullOrWhiteSpace(dboproject.nacalculatiecode)) { lblProjectNacalculatiecode.Visibility = System.Windows.Visibility.Collapsed; lblProjectNacalculatiecode2.Visibility = System.Windows.Visibility.Collapsed; } else { lblProjectNacalculatiecode.Visibility = System.Windows.Visibility.Visible; lblProjectNacalculatiecode2.Visibility = System.Windows.Visibility.Visible; showLblReferentieOpdrachtgever = true; } if (showLblReferentieOpdrachtgever) { lblReferentieOpdrachtgever.Visibility = System.Windows.Visibility.Visible; } else { lblReferentieOpdrachtgever.Visibility = System.Windows.Visibility.Collapsed; } if (dboadres != null) { lblPostcode.Content = (dboadres.postcode_cijfers.HasValue ? dboadres.postcode_cijfers.Value.ToString() + dboadres.postcode_letters : "") + ", " + dboadres.plaats; string postcodeTemp = (dboadres.postcode_cijfers.HasValue ? dboadres.postcode_cijfers.Value.ToString() + dboadres.postcode_letters : ""); lblPostcode.Content = postcodeTemp + (string.IsNullOrWhiteSpace(dboadres.plaats) || string.IsNullOrWhiteSpace(postcodeTemp) ? "" : ", ") + dboadres.plaats; //lblHuisnummer.Content = dboadres.huis_postbus_nummer + dboadres.huisnummer_toevoeging; lblAdres.Content = dboadres.straat_1 + " " + dboadres.huis_postbus_nummer + dboadres.huisnummer_toevoeging; //lblPlaats.Content = dboadres.plaats; lblLand.Content = dboadres.land; bool showLblAdresProject = false; if (string.IsNullOrWhiteSpace(lblPostcode.Content.ToString())) { lblPostcode.Visibility = System.Windows.Visibility.Collapsed; lblPostcode2.Visibility = System.Windows.Visibility.Collapsed; } else { if (string.IsNullOrWhiteSpace(postcodeTemp)) { lblPostcode2.Content = "Plaats"; } else if (string.IsNullOrWhiteSpace(dboadres.plaats)) { lblPostcode2.Content = "Postcode"; } else { lblPostcode2.Content = "Postcode, plaats"; } lblPostcode.Visibility = System.Windows.Visibility.Visible; lblPostcode2.Visibility = System.Windows.Visibility.Visible; showLblAdresProject = true; } //if (string.IsNullOrWhiteSpace(lblHuisnummer.Content.ToString())) //{ // lblHuisnummer.Visibility = System.Windows.Visibility.Collapsed; // lblHuisnummer2.Visibility = System.Windows.Visibility.Collapsed; //} //else //{ // lblHuisnummer.Visibility = System.Windows.Visibility.Visible; // lblHuisnummer2.Visibility = System.Windows.Visibility.Visible; // showLblAdresProject = true; //} if (string.IsNullOrWhiteSpace(lblAdres.Content.ToString())) { lblAdres.Visibility = System.Windows.Visibility.Collapsed; lblAdres2.Visibility = System.Windows.Visibility.Collapsed; } else { lblAdres.Visibility = System.Windows.Visibility.Visible; lblAdres2.Visibility = System.Windows.Visibility.Visible; showLblAdresProject = true; } //if (string.IsNullOrWhiteSpace(lblPlaats.Content.ToString())) //{ // lblPlaats.Visibility = System.Windows.Visibility.Collapsed; // lblPlaats2.Visibility = System.Windows.Visibility.Collapsed; //} //else //{ // lblPlaats.Visibility = System.Windows.Visibility.Visible; // lblPlaats2.Visibility = System.Windows.Visibility.Visible; // showLblAdresProject = true; //} if (string.IsNullOrWhiteSpace(lblLand.Content.ToString())) { lblLand.Visibility = System.Windows.Visibility.Collapsed; lblLand2.Visibility = System.Windows.Visibility.Collapsed; } else { lblLand.Visibility = System.Windows.Visibility.Visible; lblLand2.Visibility = System.Windows.Visibility.Visible; showLblAdresProject = true; } if (showLblAdresProject) { lblAdresProject.Visibility = System.Windows.Visibility.Visible; } else { lblAdresProject.Visibility = System.Windows.Visibility.Collapsed; } } ProjectDagView pdv = new ProjectDagView(); pdv.objProject = project; pdv.LoadVakmanDagView(true, intProjectId, dtSelectedDay); pdv.LoadWeekInfo(); //pdv.HorizontalAlignment = System.Windows.HorizontalAlignment.Stretch; tabPlanning.Content = pdv; // set periodes List <cPeriode> listPeriodes = new List <cPeriode>(); List <Mandagen> listMandagen = dbrep.datacontext.Mandagens.Where(m => m.ProjectId == intProjectId).ToList(); List <Gebruiker> listProjectleiders2 = dbrep.GetProjectleiders(); // set huidige projectleider lblHuidigeProjectEigenaar.Content = listProjectleiders2.Where(p => p.ProjectleiderId == project.ProjectleiderId).FirstOrDefault().Gebruikersnaam; cPeriode cp = new cPeriode(); int previousProjectleiderId = 0; int counter = 0; List <Mandagen> listMandagenByDate = listMandagen.Where(m => m.Begintijd != m.Eindtijd).OrderBy(m => m.Begintijd).ToList(); foreach (Mandagen mandag in listMandagenByDate) { // count the loop counter++; int currentProjectleiderId = mandag.ProjectleiderId; //alleen de eerste keer startdatum standaard instellen if (previousProjectleiderId == 0) { cp.periodeVan = mandag.Begintijd.ToString("dd-MM-yyyy"); } // als de huidige projectleider een andere is dan de vorige // dan vorige opslaan, en verder gaan met een nieuwe if (currentProjectleiderId != previousProjectleiderId && previousProjectleiderId != 0) { listPeriodes.Add(cp); cp = new cPeriode(); cp.periodeVan = mandag.Begintijd.ToString("dd-MM-yyyy"); cp.periodeTot = mandag.Eindtijd.ToString("dd-MM-yyyy"); cp.periodeProjectleider = listProjectleiders2.FirstOrDefault(pl => pl.ProjectleiderId == mandag.ProjectleiderId).Gebruikersnaam; } // anders alleen verder gaan met de einddatum else { cp.periodeTot = mandag.Eindtijd.ToString("dd-MM-yyyy"); cp.periodeProjectleider = listProjectleiders2.FirstOrDefault(pl => pl.ProjectleiderId == mandag.ProjectleiderId).Gebruikersnaam; } // als het de laatste is, dan sowieso opslaaan if (listMandagenByDate.Count == counter) { listPeriodes.Add(cp); } // sla de previousProjectleiderID op previousProjectleiderId = mandag.ProjectleiderId; } //foreach (Gebruiker pl in listProjectleiders2.Where(p => listMandagen.Any(m => m.ProjectleiderId == p.ProjectleiderId))) //{ // cPeriode cp = new cPeriode(); // cp.periodeVan = listMandagen.Where(m=>m.ProjectleiderId == pl.ProjectleiderId).OrderBy(m => m.Begintijd).FirstOrDefault().Begintijd.ToString("dd-MM-yyyy"); // cp.periodeTot = listMandagen.Where(m => m.ProjectleiderId == pl.ProjectleiderId).OrderByDescending(m => m.Eindtijd).FirstOrDefault().Begintijd.ToString("dd-MM-yyyy"); // cp.periodeProjectleider = pl.Gebruikersnaam; // listPeriodes.Add(cp); //} itemsPeriodes.ItemsSource = listPeriodes; //// TODO: testen, null waarde ? why? //PageContainer pc = (PageContainer)Tools.FindVisualParent<Window>(this); //pc.SetLabelSubtitlePlanning(); } catch { MessageBox.Show("Er is een onbekende fout opgetreden, error #501"); } Mouse.OverrideCursor = null; }
/// <summary> /// /// </summary> public void Load() { Mouse.OverrideCursor = Cursors.Wait; dbRepository dbrep = new dbRepository(); Vakman vm = dbrep.GetVakman(ApplicationState.GetValue <int>(ApplicationVariables.intVakmanId)); dbOriginalRepository dbrepOriginal = new dbOriginalRepository(); MDRpersoon persoon = dbrepOriginal.GetContact(vm.ContactIdOrigineel); txtPostcode.Text = vm.Postcode; txtAdres.Text = vm.Adres; txtPlaats.Text = vm.Plaats; txtLand.Text = vm.Land; txtHuisnummer.Text = vm.Huisnummer; if (persoon != null) { if (vm.ZZP == true) { lbWerkrelatie.Content = "Bedrijfsnaam:"; cbWerkrelatie.SelectedIndex = 1; } else { lbWerkrelatie.Content = "Werkgever:"; cbWerkrelatie.SelectedIndex = 0; } if (persoon.bedrijf_nr != null) { MDRbedrijf b = dbrepOriginal.GetBedrijf((int)persoon.bedrijf_nr); if (b != null) { lblWerkgever.Content = b.naam; } } lblVakmanId.Content = persoon.persoon_nr == null ? "" : persoon.persoon_nr.ToString(); lblVakmanNaam.Content = ToonNaam(persoon); txtBsn.Text = vm.Bsn; //txtPostcode.Text = vm.Postcode; //txtHuisnummer.Text = vm.Huisnummer; //txtAdres.Text = vm.Adres; AdresLookup = vm.Adres.Substring(0, vm.Adres.Length - vm.Huisnummer.Length).Trim(); cbMaUur.SelectedValue = vm.Ma.ToString().ToHour(); cbDiUur.SelectedValue = vm.Di.ToString().ToHour(); cbWoUur.SelectedValue = vm.Wo.ToString().ToHour(); cbDoUur.SelectedValue = vm.Do.ToString().ToHour(); cbVrUur.SelectedValue = vm.Vr.ToString().ToHour(); cbZaUur.SelectedValue = vm.Za.ToString().ToHour(); cbZoUur.SelectedValue = vm.Zo.ToString().ToHour(); cbMaMin.SelectedValue = vm.Ma.ToString().ToMinute(); cbDiMin.SelectedValue = vm.Di.ToString().ToMinute(); cbWoMin.SelectedValue = vm.Wo.ToString().ToMinute(); cbDoMin.SelectedValue = vm.Do.ToString().ToMinute(); cbVrMin.SelectedValue = vm.Vr.ToString().ToMinute(); cbZaMin.SelectedValue = vm.Za.ToString().ToMinute(); cbZoMin.SelectedValue = vm.Zo.ToString().ToMinute(); //ddlDefaultBeginuur.Text = ((int)vm.DefaultBeginuur).ToString("D2"); //ddlDefaultBeginminuut.Text = ((int)vm.DefaultBeginminuut).ToString("D2"); WerkweekUrenBerekenen(null, null); if (persoon.geboortedatum != null) { txtDag.Text = ((DateTime)persoon.geboortedatum).ToString("dd"); txtMaand.Text = ((DateTime)persoon.geboortedatum).ToString("MM"); txtJaar.Text = ((DateTime)persoon.geboortedatum).ToString("yyyy"); dpGebdatum.SelectedDate = persoon.geboortedatum; } if (string.IsNullOrWhiteSpace(persoon.telefoon_nr_1)) { lblTelefoonPrive1.Visibility = System.Windows.Visibility.Collapsed; txtTelefoonPrive1.Visibility = System.Windows.Visibility.Collapsed; } else { lblTelefoonPrive1.Visibility = System.Windows.Visibility.Visible; txtTelefoonPrive1.Visibility = System.Windows.Visibility.Visible; } if (string.IsNullOrWhiteSpace(persoon.telefoon_nr_2)) { lblTelefoonPrive2.Visibility = System.Windows.Visibility.Collapsed; txtTelefoonPrive2.Visibility = System.Windows.Visibility.Collapsed; } else { lblTelefoonPrive2.Visibility = System.Windows.Visibility.Visible; txtTelefoonPrive2.Visibility = System.Windows.Visibility.Visible; } if (string.IsNullOrWhiteSpace(persoon.telefoon_nr_3)) { lblTelefoonPrive3.Visibility = System.Windows.Visibility.Collapsed; txtTelefoonPrive3.Visibility = System.Windows.Visibility.Collapsed; } else { lblTelefoonPrive3.Visibility = System.Windows.Visibility.Visible; txtTelefoonPrive3.Visibility = System.Windows.Visibility.Visible; } txtTelefoonPrive1.Content = persoon.telefoon_nr_1; txtTelefoonPrive2.Content = persoon.telefoon_nr_2; txtTelefoonPrive3.Content = persoon.telefoon_nr_3; txtEmail.Text = persoon.zaemail; cbChauffeur.IsChecked = vm.IsChauffeur; cbBijrijdersregistratie.IsChecked = vm.IsBijrijder; cbChauffeurMa.IsChecked = vm.IsChauffeurMa; cbChauffeurDi.IsChecked = vm.IsChauffeurDi; cbChauffeurWo.IsChecked = vm.IsChauffeurWo; cbChauffeurDo.IsChecked = vm.IsChauffeurDo; cbChauffeurVr.IsChecked = vm.IsChauffeurVr; cbChauffeurZa.IsChecked = vm.IsChauffeurZa; cbChauffeurZo.IsChecked = vm.IsChauffeurZo; cbBijrijderMa.IsChecked = vm.IsBijrijderMa; cbBijrijderDi.IsChecked = vm.IsBijrijderDi; cbBijrijderWo.IsChecked = vm.IsBijrijderWo; cbBijrijderDo.IsChecked = vm.IsBijrijderDo; cbBijrijderVr.IsChecked = vm.IsBijrijderVr; cbBijrijderZa.IsChecked = vm.IsBijrijderZa; cbBijrijderZo.IsChecked = vm.IsBijrijderZo; if (!vm.IsChauffeur) { wpChauffeur.Visibility = System.Windows.Visibility.Collapsed; } if (!vm.IsBijrijder) { wpBijrijder.Visibility = System.Windows.Visibility.Collapsed; } } Mouse.OverrideCursor = null; }
public void ReLoad(List <int> listVakmannen2, DateTime datum) { dbRepository dbrep = new dbRepository(); dbOriginalRepository dbo = new dbOriginalRepository(); DbTools dbtools = new DbTools(); // haal alle mandegen van deze week //Logfile.Log("Haal alle mandagen op (database)"); // risky business, idem zie projectoverzicht List <Mandagen> listMandagenTotal = dbrep.datacontext.Mandagens.Where(m => m.Begintijd >= datum && m.Eindtijd <= datum.AddDays(1) && m.Begintijd != m.Eindtijd).ToList(); foreach (Control control in spUren.Children) { if (control.GetType() == typeof(Button)) { // per dag extra tooltip informatie: //string strTooltip = string.Empty; StackPanel strTooltip = new StackPanel(); //Logfile.Log("volgende dag, dag " + i.ToString()); // filter alleen de mandagen voor vandaag, // van de huidige vakman waar we naar kijken //Logfile.Log("filter mandagen"); Button lblDag = (Button)control; vwVakman objVakman = ((vwVakman)((List <object>)lblDag.Tag)[0]); DateTime objDatum = ((DateTime)((List <object>)lblDag.Tag)[1]); if (objDatum == datum && listVakmannen2.Contains(objVakman.VakmanId)) { // EXPERIMENT uitzetten LET OP: Juraci List <Mandagen> listMandagen = listMandagenTotal.Where(m => m.VakmanId == objVakman.VakmanId && m.Begintijd >= objDatum && m.Eindtijd <= objDatum.AddDays(1)).ToList(); // als in deze pool van mandagen een aanvraag zit: // vandaag, ander project, geen projectleider, niet bevestigd (dus aanvraag) //Logfile.Log("filter aanvragen"); //List<Mandagen> listAanvragen = listMandagenTotal.Where(m => m.VakmanId == objVakman.VakmanId && m.Begintijd >= dtDag.AddDays(i) && m.Eindtijd <= dtDag.AddDays(i + 1) && !m.Status).ToList(); //long totalTicks = 0; bool hasAanvraag = false; int totalHours = 0; int totalMinutes = 0; // extra stukje als experiment LET OP: Juraci //totalHours = listMandagenTotal.Where(m => m.Status && m.VakmanId == objVakman.VakmanId && m.Begintijd >= dtDag.AddDays(i) && m.Eindtijd <= dtDag.AddDays(i + 1)).Sum(m => m.Uren); //totalMinutes = listMandagenTotal.Where(m => m.Status && m.VakmanId == objVakman.VakmanId && m.Begintijd >= dtDag.AddDays(i) && m.Eindtijd <= dtDag.AddDays(i + 1)).Sum(m => m.Minuten); //hasAanvraag = listMandagenTotal.Any(m => !m.Status && m.VakmanId == objVakman.VakmanId && m.Begintijd >= dtDag.AddDays(i) && m.Eindtijd <= dtDag.AddDays(i + 1)); strTooltip = dbtools.AddTooltipAanvraagAll(dbtools.GetVakman(objVakman), new Project(), objDatum, false, true); hasAanvraag = listMandagen.Any(a => !a.Status); totalHours = listMandagen.Sum(a => a.Uren); totalMinutes = listMandagen.Sum(a => a.Minuten); //foreach (Mandagen mandag in listMandagen) //{ // //Logfile.Log("volgende mandag"); // // bereken de som der uren // //ALLEEN ALS HET EEN BEVESTIGD UUR IS // if (mandag.Status) // { // //long lnMandagTicks = (mandag.Eindtijd.Ticks - mandag.Begintijd.Ticks); // //totalTicks += lnMandagTicks; // //TimeSpan tsMandag = TimeSpan.FromTicks(lnMandagTicks); // //Logfile.Log("haal project titel bij daan (database)"); // MDRproject objProject = dbo.GetProject((int)mandag.Project.ProjectNr, true); // //Logfile.Log("bereken uren"); // totalHours += mandag.Uren; // totalMinutes += mandag.Minuten; // //Logfile.Log("set tooltip"); // if (objProject != null) // { // strTooltip += Environment.NewLine; // //strTooltip += "(" + ((int)Math.Ceiling(tsMandag.TotalHours)).ToString() + "u) " + objProject.project_NR.ToString(5) + " " + objProject.naam_project; // strTooltip += "(" + mandag.Uren.ToString() + ":" + (mandag.Minuten < 10 ? "0" : "") + mandag.Minuten.ToString() + ") " + objProject.project_NR.ToString(5) + " " + objProject.naam_project; // } // } // // als de betreffende mandag een aanvraag is // // OF er een aanvraag is die deze overlapt qua tijden, voor een ander project is, maar voor dezelfde vakman, en nog niet geannulleerd dus lopende aanvraag // //if ((!mandag.Status && !mandag.Geannulleerd) || listAanvragen.Any(a => a.Eindtijd > mandag.Begintijd && a.Begintijd < mandag.Eindtijd && a.ProjectId != mandag.ProjectId && a.VakmanId == mandag.VakmanId && !a.Geannulleerd)) // //if ((!mandag.Status && mandag.ProjectleiderId == ApplicationState.GetValue<Gebruiker>(ApplicationVariables.objGebruiker).ProjectleiderId) || (!mandag.Status && !mandag.Geannulleerd && mandag.ProjectleiderId != ApplicationState.GetValue<Gebruiker>(ApplicationVariables.objGebruiker).ProjectleiderId)) // if (!mandag.Status) // { // hasAanvraag = true; // } //} //// CHECKECN //Logfile.Log("klaar met loopje mandagen"); //TimeSpan totalTimespan = TimeSpan.FromTicks(totalTicks); lblDag.Width = 24; lblDag.Height = 17; lblDag.Margin = new Thickness(2, 2, 2, 2); lblDag.FontSize = 11; lblDag.HorizontalContentAlignment = System.Windows.HorizontalAlignment.Right; lblDag.Padding = new Thickness(0, -1, 2, 0); //Logfile.Log("haal contact bij daan (database)"); MDRpersoon objPersoon = dbo.GetContact(objVakman.ContactIdOrigineel, true); //Logfile.Log("toon naam"); lblDag.ToolTip = ToonNaam(objPersoon) + strTooltip; int totalHoursRounded = 0; //totalHoursRounded = (int)Math.Ceiling(totalTimespan.TotalHours); int minutesRemainder = totalMinutes % 60; //Logfile.Log("bereken totaal uren om te tonen"); totalHoursRounded = totalHours + (int)((totalMinutes - minutesRemainder) / 60) + (minutesRemainder == 0 ? 0 : 1); //Logfile.Log("bereken kleuren en andere toon opties"); lblDag.Content = totalHoursRounded == 0 ? "" : totalHoursRounded.ToString(); bool blnUseInvisibleColorsAKASwitchColors = false; // 0 niet tonen if (totalHoursRounded == 0 && !hasAanvraag) { blnUseInvisibleColorsAKASwitchColors = true; //lblDag.Visibility = System.Windows.Visibility.Hidden; } else { HasHours = true; } List <object> tag = new List <object>(); tag.Add(objVakman); tag.Add(objDatum); lblDag.Tag = tag; // END CHECKEN // standaard kleuren van de border if (weeknummer % 2 == 0) { if (blnUseInvisibleColorsAKASwitchColors) { // use this color to make it invisible (same color as background) lblDag.BorderBrush = (SolidColorBrush)(new BrushConverter().ConvertFrom("#FFD8E4BC")); } else { // original color lblDag.BorderBrush = (SolidColorBrush)(new BrushConverter().ConvertFrom("#FFFFFFFF")); } } else { if (blnUseInvisibleColorsAKASwitchColors) { // use this color to make it invisible (same color as background) lblDag.BorderBrush = (SolidColorBrush)(new BrushConverter().ConvertFrom("#FFFFFFFF")); } else { lblDag.BorderBrush = (SolidColorBrush)(new BrushConverter().ConvertFrom("#FFD8E4BC")); } } // zwarte rand maken bij een aanvraag if (hasAanvraag) { double[] dimensions = new double[] { 2, 2 }; Rectangle dottedRectangle = new Rectangle(); dottedRectangle.Stroke = new SolidColorBrush(Colors.Gray); dottedRectangle.SnapsToDevicePixels = true; dottedRectangle.Height = 2; dottedRectangle.StrokeThickness = 2; dottedRectangle.Height = 24; dottedRectangle.Width = 45; dottedRectangle.StrokeDashArray = new DoubleCollection(dimensions); VisualBrush vb = new VisualBrush(); vb.Visual = dottedRectangle; lblDag.BorderBrush = vb; // new SolidColorBrush(Colors.Black); // (SolidColorBrush)(new BrushConverter().ConvertFrom("#00000000")); } //Logfile.Log("voeg de dag toe"); } } } //Logfile.Log("klaar met vakmannen"); }
public void Load() { DbTools dbtools = new DbTools(); // datums onder tooltip lblMa.ToolTip = GetDagTooltip(dtDag); lblDi.ToolTip = GetDagTooltip(dtDag.AddDays(1)); lblWo.ToolTip = GetDagTooltip(dtDag.AddDays(2)); lblDo.ToolTip = GetDagTooltip(dtDag.AddDays(3)); lblVr.ToolTip = GetDagTooltip(dtDag.AddDays(4)); lblZa.ToolTip = GetDagTooltip(dtDag.AddDays(5)); lblZo.ToolTip = GetDagTooltip(dtDag.AddDays(6)); if (!IsWeekVisible) { // datums onder tooltip lblMa.Visibility = System.Windows.Visibility.Hidden; lblDi.Visibility = System.Windows.Visibility.Hidden; lblWo.Visibility = System.Windows.Visibility.Hidden; lblDo.Visibility = System.Windows.Visibility.Hidden; lblVr.Visibility = System.Windows.Visibility.Hidden; lblZa.Visibility = System.Windows.Visibility.Hidden; lblZo.Visibility = System.Windows.Visibility.Hidden; bbDivider.Visibility = System.Windows.Visibility.Collapsed; } if (weeknummer % 2 == 0) { bbDivider.BorderBrush = (SolidColorBrush)(new BrushConverter().ConvertFrom("#FFFFFFFF")); } else { bbDivider.BorderBrush = (SolidColorBrush)(new BrushConverter().ConvertFrom("#FFC5D9F1")); } int intProjectleider = ApplicationState.GetValue <int>(ApplicationVariables.intProjectleider); blnOwner = objProjectleider.ProjectleiderId == intProjectleider; dbRepository dbrep = new dbRepository(); dbOriginalRepository dbo = new dbOriginalRepository(); // haal alle mandegen van deze week //List<Mandagen> listMandagenTotal = dbrep.datacontext.Mandagens.Where(m => m.Begintijd >= dtDag && m.Eindtijd <= dtDag.AddDays(7) && m.Begintijd != m.Eindtijd).ToList(); foreach (Project objProject in listProjecten) { // for (int i = 0; i < 7; i++) { // per dag extra tooltip informatie: StackPanel strTooltip = new StackPanel(); StackPanel strTooltipAanvraag = new StackPanel(); // filter alleen de mandagen voor vandaag, waarvan de ingelogde kijker projectleider is, // van het huidige project waar we naar kijken List <Mandagen> listMandagen = listMandagenTotal.Where(m => m.ProjectleiderId == objProjectleider.ProjectleiderId && m.ProjectId == objProject.ProjectId && m.Begintijd >= dtDag.AddDays(i) && m.Eindtijd <= dtDag.AddDays(i + 1)).OrderBy(m => dbo.GetContact(m.Vakman.ContactIdOrigineel, true) == null ? "" : dbo.GetContact(m.Vakman.ContactIdOrigineel, true).voornaam).ThenByDescending(m => m.Status).ToList(); // als in deze pool van mandagen een aanvraag zit: // vandaag, ander project, geen projectleider, niet bevestigd (dus aanvraag) List <Mandagen> listAanvragen = listMandagenTotal.Where(m => m.ProjectleiderId != objProjectleider.ProjectleiderId && m.ProjectId != objProject.ProjectId && m.Begintijd >= dtDag.AddDays(i) && m.Eindtijd <= dtDag.AddDays(i + 1) && !m.Status).ToList(); // als in deze pool van mandagen een aanvraag zit: // vandaag, ander project, geen projectleider, wel bevestigd (dus waar dit de aanvraag van is) List <Mandagen> listMandagenWaarDitDeAanvraagVanIs = listMandagenTotal.Where(m => m.Begintijd != m.Eindtijd && m.ProjectleiderId != objProjectleider.ProjectleiderId && m.ProjectId != objProject.ProjectId && m.Begintijd >= dtDag.AddDays(i) && m.Eindtijd <= dtDag.AddDays(i + 1) && m.Status).ToList(); //long totalTicks = 0; bool hasAanvraag = false; int totalHours = 0; int totalMinutes = 0; int previousVakmanId = -1; //if ((listMandagen.Any(m=> !m.Status) || listAanvragen.Any(a => !a.Geannulleerd && a.Eindtijd > listMandagen.Min(m=>m.Begintijd) && a.Begintijd < listMandagen.Max(m=>m.Eindtijd && a.ProjectId != mandag.ProjectId && a.VakmanId == mandag.VakmanId)) //{ // hasAanvraag = true; //} // TODO: WEER AANZETTEN, CACHE TEST foreach (Mandagen mandag in listMandagen) { // bereken de som der uren //ALLEEN ALS HET EEN BEVESTIGD UUR IS if (mandag.Status) { totalHours += mandag.Uren; totalMinutes += mandag.Minuten; ////long lnMandagTicks = (mandag.Eindtijd.Ticks - mandag.Begintijd.Ticks); ////totalTicks += lnMandagTicks; ////TimeSpan tsMandag = TimeSpan.FromTicks(lnMandagTicks); //MDRpersoon persoon = dbo.GetContact(mandag.Vakman.ContactIdOrigineel, true); //if (persoon != null) //{ // strTooltip += "(" + ((int)Math.Ceiling(tsMandag.TotalHours)).ToString() + "u) " + (persoon.voornaam + " " + persoon.tussenvoegsel + " " + persoon.achternaam).ToStringTrimmed(); // strTooltip.AddText("(" + mandag.Uren.ToString() + ":" + (mandag.Minuten < 10 ? "0" : "") + mandag.Minuten.ToString() + ") " + (persoon.voornaam + " " + persoon.tussenvoegsel + " " + persoon.achternaam).ToStringTrimmed()); //} //// //bool blnToonAanvraagtext = listAanvragen.Any(m => m.Begintijd < mandag.Eindtijd && m.Eindtijd > mandag.Begintijd && m.VakmanId == mandag.VakmanId && !m.Geannulleerd); //if (blnToonAanvraagtext) //{ // strTooltipAanvraag.AddText("Aanvraag " + (persoon.voornaam + " " + persoon.tussenvoegsel + " " + persoon.achternaam).ToStringTrimmed(), true); // // OF we hebben te maken met een externe aanvraag voor deze mandag // foreach (Mandagen aanvraag in listAanvragen.Where(m => m.Begintijd < mandag.Eindtijd && m.Eindtijd > mandag.Begintijd && m.VakmanId == mandag.VakmanId)) // { // if (aanvraag != null && !aanvraag.Geannulleerd) // { // MDRpersoon persoonAanvraag = dbo.GetContact(aanvraag.Vakman.ContactIdOrigineel, true); // if (persoonAanvraag != null) // { // strTooltipAanvraag.AddText("(" + dbtools.GetIngeplandeTijd(objProject, aanvraag.Vakman, dbtools.GetHeleDag(aanvraag.Begintijd)) + ") \u2212 (" + aanvraag.Uren.ToString() + ":" + (aanvraag.Minuten < 10 ? "0" : "") + aanvraag.Minuten.ToString() + ") " + objProject.Naam + " (Project " + objProject.ProjectNr.ToString() + ")", true); // strTooltipAanvraag.AddText("(" + dbtools.GetIngeplandeTijd(aanvraag.Project, aanvraag.Vakman, dbtools.GetHeleDag(aanvraag.Begintijd)) + ") + (" + aanvraag.Uren.ToString() + ":" + (aanvraag.Minuten < 10 ? "0" : "") + aanvraag.Minuten.ToString() + ") " + aanvraag.Project.Naam + " (Project " + aanvraag.Project.ProjectNr.ToString() + ")", true); // } // } // } //} } //else //{ // // OF dit is zelf de aanvraag // MDRpersoon persoon = dbo.GetContact(mandag.Vakman.ContactIdOrigineel, true); // if (persoon != null && (listAanvragen.Any(m => m.VakmanId == mandag.VakmanId) || listMandagenWaarDitDeAanvraagVanIs.Any(m => m.VakmanId == mandag.VakmanId))) // { // // dit hoeft niet dubbel te worden weergegeven als de vakman al is ingepland, of als er meerdere aanvragen lopen // if (previousVakmanId != mandag.VakmanId) // { // // INDIEN ER EEN AANVRAAG IS, DEZE PERSOON OOK WEERGEVEN ALS ZOGENAAMD 0:00 INGEVULD OP HET PROJECT // // strTooltip += "(" + ((int)Math.Ceiling(tsMandag.TotalHours)).ToString() + "u) " + (persoon.voornaam + " " + persoon.tussenvoegsel + " " + persoon.achternaam).ToStringTrimmed(); // // strTooltip.AddText("(" + dbtools.GetIngeplandeTijd(mandag.Project, mandag.Vakman, dbtools.GetHeleDag(mandag.Begintijd)) + ")" + (persoon.voornaam + " " + persoon.tussenvoegsel + " " + persoon.achternaam).ToStringTrimmed()); // } // if (previousVakmanId == mandag.VakmanId) // { // // dezelfde vakman, alleen de minnen toevoegen // //strTooltipAanvraag.Children.Add(dbtools.AddTooltipAanvraagMinOnly(listMandagenWaarDitDeAanvraagVanIs, mandag, true)); // //strTooltipAanvraag.Children.Add(dbtools.AddTooltipAanvraagAll(mandag.Vakman, mandag.Project, dbtools.GetHeleDag(mandag.Begintijd), true, true)); // } // else // { // //strTooltipAanvraag.Children.Add(dbtools.AddTooltipAanvraag(listMandagenWaarDitDeAanvraagVanIs, mandag, true)); // //strTooltipAanvraag.Children.Add(dbtools.AddTooltipAanvraagAll(mandag.Vakman, mandag.Project, dbtools.GetHeleDag(mandag.Begintijd))); // } // //strTooltipAanvraag += Environment.NewLine; // //strTooltipAanvraag += Environment.NewLine; // //strTooltipAanvraag += "Aanvraag test2" + (persoon.voornaam + " " + persoon.tussenvoegsel + " " + persoon.achternaam).ToStringTrimmed(); // //if (mandag.Geannulleerd) // //{ // // strTooltipAanvraag += " AFGEWEZEN"; // //} // //// plustext is cumulatief // //strTooltipAanvraag += Environment.NewLine; // //strTooltipAanvraag += dbtools.GetIngeplandeTijd(mandag.Project, mandag.Vakman, dbtools.GetHeleDag(mandag.Begintijd)) + " + (" + dbtools.GetAangevraagdeTijd(mandag.Project, mandag.Vakman, dbtools.GetHeleDag(mandag.Begintijd)) + ") " + mandag.Project.Naam + " (Project " + mandag.Project.ProjectNr.ToString() + ")"; // //// minus text is een opsomming van alle mandagen die beinvloed worden door de aanvraag // //foreach (Mandagen origineel in listMandagenWaarDitDeAanvraagVanIs.Where(m => m.Begintijd <= mandag.Eindtijd && m.Eindtijd >= mandag.Begintijd && m.VakmanId == mandag.VakmanId)) // //{ // // Project objProject2 = origineel.Project; // // // minustext // // strTooltipAanvraag += Environment.NewLine; // // strTooltipAanvraag += dbtools.GetIngeplandeTijd(objProject2, mandag.Vakman, dbtools.GetHeleDag(mandag.Begintijd)) + " \u2212 (" + mandag.Uren.ToString() + ":" + (mandag.Minuten < 10 ? "0" : "") + mandag.Minuten.ToString() + ") " + objProject2.Naam + " (Project " + objProject2.ProjectNr.ToString() + ")"; // //} // } // previousVakmanId = mandag.VakmanId; //} // zwart randje tonen als: een van de vakmannen een aanvraag is, // of er voor een van de vakmannen een aanvraag is gedaan die invloed heeft op dit project // en nog niet geannuleerd is als die door iemand anders is gedaan, of wel geannuleerd als die door mij is gedaan // // DUS: // als de betreffende mandag een aanvraag is // OF er een aanvraag is die deze overlapt qua tijden, voor een ander project is, maar voor dezelfde vakman, en nog niet geannulleerd dus lopende aanvraag //if ((!mandag.Status && !mandag.Geannulleerd) || listAanvragen.Any(a => a.Eindtijd > mandag.Begintijd && a.Begintijd < mandag.Eindtijd && a.ProjectId != mandag.ProjectId && a.VakmanId == mandag.VakmanId && !a.Geannulleerd)) if ((!mandag.Status) || listAanvragen.Any(a => !a.Geannulleerd && a.Eindtijd > mandag.Begintijd && a.Begintijd < mandag.Eindtijd && a.ProjectId != mandag.ProjectId && a.VakmanId == mandag.VakmanId)) { hasAanvraag = true; } } // END TODO: WEER AANZETTEN, CACHE TEST //foreach (Mandagen mandag in listAanvragen) //{ // // OF dit is het originele project, waarop is aangevraagd // // bereken de som der uren // //ALLEEN ALS HET EEN BEVESTIGD UUR IS // if (!mandag.Status) // { // MDRpersoon persoon = dbo.GetContact(mandag.Vakman.ContactIdOrigineel, true); // Mandagen temp = listMandagenWaarDitDeAanvraagVanIs.FirstOrDefault(m => m.Begintijd <= mandag.Eindtijd && m.Eindtijd >= mandag.Begintijd && m.VakmanId == mandag.VakmanId); // if (persoon != null && temp != null && temp.VakmanId == mandag.VakmanId && objProject.ProjectId == temp.ProjectId) // { // strTooltipAanvraag += Environment.NewLine; // strTooltipAanvraag += Environment.NewLine; // strTooltipAanvraag += "Aanvraag " + (persoon.voornaam + " " + persoon.tussenvoegsel + " " + persoon.achternaam).ToStringTrimmed(); // if (mandag.Geannulleerd) // { // strTooltipAanvraag += " AFGEWEZEN"; // } // strTooltipAanvraag += Environment.NewLine; // strTooltipAanvraag += "\u2212 (" + mandag.Uren.ToString() + ":" + (mandag.Minuten < 10 ? "0" : "") + mandag.Minuten.ToString() + ") " + objProject.Naam + " (Project " + objProject.ProjectNr.ToString() + ")"; // strTooltipAanvraag += Environment.NewLine; // strTooltipAanvraag += "+ (" + mandag.Uren.ToString() + ":" + (mandag.Minuten < 10 ? "0" : "") + mandag.Minuten.ToString() + ") " + mandag.Project.Naam + " (Project " + mandag.Project.ProjectNr.ToString() + ")"; // } // } //} bool hasUren = totalHours > 0 || totalMinutes > 0; //strTooltip.AddText(objProject.Naam + " (Project " + objProject.ProjectNr.ToString() + ")"); strTooltipAanvraag.Children.Add(dbtools.AddTooltipAanvraagAll(new Vakman(), objProject, dbtools.GetHeleDag(dtDag.AddDays(i)), true, true, listMandagenTotal.Where(m => m.Begintijd >= dtDag.AddDays(i) && m.Eindtijd <= dtDag.AddDays(i + 1)).ToList(), hasAanvraag, hasUren)); //TimeSpan totalTimespan = TimeSpan.FromTicks(totalTicks); Button lblDag = new Button(); lblDag.Width = 24; lblDag.Height = 17; lblDag.Margin = new Thickness(2, 2, 2, 2); lblDag.FontSize = 11; lblDag.HorizontalContentAlignment = System.Windows.HorizontalAlignment.Right; lblDag.Padding = new Thickness(0, -1, 2, 0); ToolTipService.SetShowDuration(lblDag, 20000); strTooltip.Children.Add(strTooltipAanvraag); lblDag.ToolTip = strTooltip; // test //lblDag.ToolTip = objProject.Naam + " (Project " + objProject.ProjectNr.ToString() + ")" + strTooltip + strTooltipAanvraag; int totalHoursRounded = 0; //totalHoursRounded = (int)Math.Ceiling(totalTimespan.TotalHours); int minutesRemainder = totalMinutes % 60; totalHoursRounded = totalHours + (int)((totalMinutes - minutesRemainder) / 60) + (minutesRemainder == 0 ? 0 : 1); //if (totalTimespan.Minutes > 0) //{ // totalHoursRounded ++; //} lblDag.Content = totalHoursRounded == 0 ? "" : totalHoursRounded.ToString(); bool blnUseInvisibleColorsAKASwitchColors = false; // 0 niet tonen if (totalHoursRounded == 0 && !hasAanvraag) { blnUseInvisibleColorsAKASwitchColors = true; //lblDag.Visibility = System.Windows.Visibility.Hidden; } else { HasHours = true; } List <object> tag = new List <object>(); tag.Add(objProject); tag.Add(dtDag.AddDays(i)); lblDag.Tag = tag; // standaard kleuren van de border if (weeknummer % 2 == 0) { if (blnUseInvisibleColorsAKASwitchColors) { // use this color to make it invisible (same color as background) lblDag.BorderBrush = (SolidColorBrush)(new BrushConverter().ConvertFrom("#FFC5D9F1")); } else { // original color lblDag.BorderBrush = (SolidColorBrush)(new BrushConverter().ConvertFrom("#FFFFFFFF")); } } else { if (blnUseInvisibleColorsAKASwitchColors) { // use this color to make it invisible (same color as background) lblDag.BorderBrush = (SolidColorBrush)(new BrushConverter().ConvertFrom("#FFFFFFFF")); } else { lblDag.BorderBrush = (SolidColorBrush)(new BrushConverter().ConvertFrom("#FFC5D9F1")); } } // zwarte rand maken bij een aanvraag if (hasAanvraag) { double[] dimensions = new double[] { 2, 2 }; Rectangle dottedRectangle = new Rectangle(); dottedRectangle.Stroke = blnOwner ? new SolidColorBrush(Colors.Black) : new SolidColorBrush(Colors.Gray); dottedRectangle.SnapsToDevicePixels = true; dottedRectangle.Height = 2; dottedRectangle.StrokeThickness = 2; dottedRectangle.Height = 24; dottedRectangle.Width = 45; dottedRectangle.StrokeDashArray = new DoubleCollection(dimensions); VisualBrush vb = new VisualBrush(); vb.Visual = dottedRectangle; lblDag.BorderBrush = vb; // new SolidColorBrush(Colors.Black); // (SolidColorBrush)(new BrushConverter().ConvertFrom("#00000000")); } // standaard achtergrondkleuren van de dagen if (weeknummer % 2 == 0) { lblDag.Background = (SolidColorBrush)(new BrushConverter().ConvertFrom("#FFC5D9F1")); } else { lblDag.Background = (SolidColorBrush)(new BrushConverter().ConvertFrom("#FFFFFFFF")); } lblDag.BorderThickness = new Thickness(2); lblDag.Click += lblDag_Click; spUren.Children.Add(lblDag); } } }