/// <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; }
private void dgVakmannen_MouseDoubleClick(object sender, MouseButtonEventArgs e) { Vakman vm = (Vakman)dgVakmannen.SelectedItem; ApplicationState.SetValue("intVakmanId", vm.VakmanId); ApplicationState.SetValue("dtSelectedDay", DateTime.Now); // create the page and load all values VakmanDetailView vdv = new VakmanDetailView(); // load the page into the contentcontrol GoToPage(vdv); }
public void Save() { vwVakman vm = ApplicationState.GetValue <vwVakman>(ApplicationVariables.objVakman); dbRepository dbrep = new dbRepository(); Vakman vakman = dbrep.GetVakman(vm.VakmanId); vakman.Bsn = txtBsn.Text; vakman.Postcode = txtPostcode.Text; vakman.Huisnummer = txtHuisnummer.Text; vakman.Adres = txtAdres.Text; //vakman.Ophaalpostcode = listTextboxes[3].Text; //vakman.Ophaalhuisnummer = listTextboxes[4].Text; //vakman.Ophaaladres = listTextboxes[5].Text; vakman.Ma = Convert.ToInt32(txtMa.Text); vakman.Di = Convert.ToInt32(txtDi.Text); vakman.Wo = Convert.ToInt32(txtWo.Text); vakman.Do = Convert.ToInt32(txtDo.Text); vakman.Vr = Convert.ToInt32(txtVr.Text); vakman.Za = Convert.ToInt32(txtZa.Text); vakman.Zo = Convert.ToInt32(txtZo.Text); vakman.Werkweek = Convert.ToInt32(lblVakmanWerkweek.Content); 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(); }
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.Collapsed; lblDi.Visibility = System.Windows.Visibility.Collapsed; lblWo.Visibility = System.Windows.Visibility.Collapsed; lblDo.Visibility = System.Windows.Visibility.Collapsed; lblVr.Visibility = System.Windows.Visibility.Collapsed; lblZa.Visibility = System.Windows.Visibility.Collapsed; lblZo.Visibility = System.Windows.Visibility.Collapsed; bbDivider.Visibility = System.Windows.Visibility.Collapsed; } if (weeknummer % 2 == 0) { bbDivider.BorderBrush = (SolidColorBrush)(new BrushConverter().ConvertFrom("#FFFFFFFF")); } else { bbDivider.BorderBrush = (SolidColorBrush)(new BrushConverter().ConvertFrom("#FFD8E4BC")); } dbRepository dbrep = new dbRepository(); dbOriginalRepository dbo = new dbOriginalRepository(); // haal alle mandegen van deze week //Logfile.Log("Haal alle mandagen op (database)"); //listMandagenTotal = listMandagenTotal.Where(m => m.Begintijd >= dtDag && m.Eindtijd <= dtDag.AddDays(7) && m.Begintijd != m.Eindtijd).ToList(); foreach (vwVakman objVwVakman in listVwVakmannen) { // //Logfile.Log("volgende vakman"); Vakman objVakman = listVakmannen.FirstOrDefault(a => a.VakmanId == objVwVakman.VakmanId); MDRpersoon objPersoon = listMDRpersoons.FirstOrDefault(a => a.persoon_ID == objVwVakman.ContactIdOrigineel); for (int i = 0; i < 7; i++) { // per dag extra tooltip informatie: StackPanel strTooltip = new StackPanel(); //StackPanel strTooltipAanvraag = new StackPanel(); //Logfile.Log("volgende dag, dag " + i.ToString()); //strTooltip.AddText(ToonNaam(objPersoon)); // filter alleen de mandagen voor vandaag, // van de huidige vakman waar we naar kijken //Logfile.Log("filter mandagen"); // EXPERIMENT uitzetten LET OP: Juraci List <Mandagen> listMandagen = listMandagenTotal.Where(m => m.VakmanId == objVwVakman.VakmanId && m.Begintijd >= dtDag.AddDays(i) && m.Eindtijd <= dtDag.AddDays(i + 1)).OrderBy(m => m.Begintijd).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(); // 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.ProjectleiderId != ApplicationState.GetValue<Gebruiker>(ApplicationVariables.objGebruiker).ProjectleiderId && m.VakmanId == objVakman.VakmanId && m.Begintijd >= dtDag.AddDays(i) && m.Eindtijd <= dtDag.AddDays(i + 1) && m.Status).OrderBy(m => m.Begintijd).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)); int vakmanId = -1; hasAanvraag = listMandagen.Any(a => !a.Status); totalHours = listMandagen.Where(a => a.Status).Sum(a => a.Uren); totalMinutes = listMandagen.Where(a => a.Status).Sum(a => a.Minuten); bool hasUren = totalHours > 0 || totalMinutes > 0; strTooltip = dbtools.AddTooltipAanvraagAll(objVakman, new Project(), dtDag.AddDays(i), false, 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); lblDag.ToolTip = 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); //if (totalTimespan.Minutes > 0) //{ // totalHoursRounded ++; //} //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(objVwVakman); 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("#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")); } // standaard achtergrondkleuren van de dagen if (weeknummer % 2 == 0) { lblDag.Background = (SolidColorBrush)(new BrushConverter().ConvertFrom("#FFD8E4BC")); } else { lblDag.Background = (SolidColorBrush)(new BrushConverter().ConvertFrom("#FFFFFFFF")); } lblDag.BorderThickness = new Thickness(2); //lblDag.MouseLeftButtonDown += lblDag_Click; lblDag.Click += lblDag_Click; spUren.Children.Add(lblDag); //Logfile.Log("voeg de dag toe"); } } //Logfile.Log("klaar met vakmannen"); }
public void LoadVakmandagenView() { spVakmanDagen.Children.Clear(); dbRepository dbrep = new dbRepository(); bool blnThisWeek = false; // 0:00 uur de dag beginnen Weekstart = CalculateWeekstart(Weekstart); // is this week? if (Weekstart < DateTime.Now && DateTime.Now < Weekstart.AddDays(7)) { blnThisWeek = true; } // automatically confirm my previous changes //dbrep.AutoConfirmMandagenForWeekView(intVakmanId, intProjectleider); intVakmanId = ApplicationState.GetValue <int>("intVakmanId"); intProjectleider = ApplicationState.GetValue <int>("intProjectleider"); objVakman = dbrep.GetVakman(intVakmanId); objProjectleider = dbrep.GetProjectleider(intProjectleider); listProjecten = dbrep.GetProjectsByVakmanId(intVakmanId, Weekstart); lblVakmanNaam.Content = objVakman.Bsn + " : " + objVakman.VakmanId.ToString(); // overzichtskolom toevoegen VakmanDagOverzicht vakmandagoverzicht = new VakmanDagOverzicht(); vakmandagoverzicht.listProjecten = listProjecten; vakmandagoverzicht.objProjectleider = objProjectleider; vakmandagoverzicht.LoadVakmanDagOverzicht(); spVakmanDagen.Children.Add(vakmandagoverzicht); listProjectenAll = dbrep.GetProjectsToAddByVakmanId(intVakmanId, Weekstart); ddlProjecten.ItemsSource = listProjectenAll; ddlProjecten.DisplayMemberPath = "Naam"; ddlProjecten.SelectedValuePath = "ProjectId"; // 7 dagen van de week toevoegen for (int i = 0; i < 7; i++) { VakmanDag vakmandag = new VakmanDag(); vakmandag.OnVakmanDagUpdate += vakmandag_OnVakmanDagUpdate; vakmandag.OnVakmanDagSelect += vakmandag_OnVakmanDagSelect; vakmandag.objProjectleider = objProjectleider; vakmandag.listProjecten = listProjecten; vakmandag.dtBegintijd = Weekstart.AddDays(i); vakmandag.Vakman = objVakman; if (blnThisWeek && Weekstart.AddDays(i).DayOfWeek == DateTime.Now.DayOfWeek) { vakmandag.IsSelected = true; //select this one } else if (!blnThisWeek) { vakmandag.IsSelected = (i == 0); //select first one } vakmandag.LoadVakmanDag(); // CultureInfo ciCurr = CultureInfo.CurrentCulture; vakmandag.lblDag.Content = CultureInfo.CurrentCulture.DateTimeFormat.DayNames[(int)Weekstart.AddDays(i).DayOfWeek].ToString(); spVakmanDagen.Children.Add(vakmandag); } LoadWeekInfo(); }
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; } }
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 void LoadVakmanDagView() { dtBegintijd = ApplicationState.GetValue <DateTime>("dtSelectedDay"); //lblDagInfo.Content = // intialize spVakmanDag.Children.Clear(); dbRepository dbrep = new dbRepository(); intVakmanId = ApplicationState.GetValue <int>("intVakmanId"); intProjectleider = ApplicationState.GetValue <int>("intProjectleider"); objVakman = dbrep.GetVakman(intVakmanId); objProjectleider = dbrep.GetProjectleider(intProjectleider); listProjecten = dbrep.GetProjectsByVakmanId(intVakmanId, Weekstart); listMandagen = dbrep.GetMandagen(objVakman.VakmanId); bool blnIsOpVreemdProjectIngepland = false; bool blnIsOpVreemdProjectAangevraagd = false; bool blnIsOpProjectAangevraagd = false; bool blnIsOpProjectIngepland; bool blnIsNotOwner = false; // load overzicht spOverzicht.Children.Clear(); foreach (Project project in listProjecten) { VakmanDagProjectHeader vakmandagprojectheader = new VakmanDagProjectHeader(); if (project.ProjectId == ApplicationState.GetValue <int>("intProjectId")) { vakmandagprojectheader.btnGoToProject.Content = "<"; } vakmandagprojectheader.Project = project; spOverzicht.Children.Add(vakmandagprojectheader); } bool blnIsOpMijnProjectIngepland; DateTime startDatum = new DateTime(dtBegintijd.Year, dtBegintijd.Month, dtBegintijd.Day); DateTime eindDatum = startDatum.AddDays(1); listMandagen = listMandagen.Where(p => p.Begintijd >= startDatum && p.Begintijd < eindDatum).ToList(); blnIsOpVreemdProjectIngepland = listMandagen.Any(m => m.Uren > 0 && m.Project.ProjectleiderId != objProjectleider.ProjectleiderId && (m.VakmanstatusId == 1 || m.VakmanstatusId == 2 || m.VakmanstatusId == 3)); blnIsOpProjectAangevraagd = listMandagen.Any(m => m.Gewijzigd && m.UrenGewijzigd > 0 && (m.VakmanstatusId == 1 || m.VakmanstatusId == 2 || m.VakmanstatusId == 3)); blnIsOpVreemdProjectAangevraagd = listMandagen.Any(m => m.Gewijzigd && m.UrenGewijzigd > 0 && m.MutatieDoorProjectleiderId != objProjectleider.ProjectleiderId && (m.VakmanstatusId == 1 || m.VakmanstatusId == 2 || m.VakmanstatusId == 3)); blnIsOpProjectIngepland = listMandagen.Any(m => m.Bevestigd && m.Uren > 0 && (m.VakmanstatusId == 1 || m.VakmanstatusId == 2 || m.VakmanstatusId == 3)); // volgens mij klopt deze query alleen toevallig omdat je in de weekview alle mandagen van 1 projectleider zijn blnIsNotOwner = !listMandagen.Any(m => m.Bevestigd && m.Uren > 0 && (m.VakmanstatusId == 1 || m.VakmanstatusId == 2 || m.VakmanstatusId == 3)); blnIsOpMijnProjectIngepland = listMandagen.Any(m => m.Uren > 0 && m.Project.ProjectleiderId == objProjectleider.ProjectleiderId && (m.VakmanstatusId == 1 || m.VakmanstatusId == 2 || m.VakmanstatusId == 3)); bool blnIsAllowedToCancel = false; bool blnIsAllowedToConfirm = false; bool blnIsAllowedToAcceptAnnulleringen = false; bool blnIsAllowedToSetZiek = true; bool blnIsAllowedToSetVakantie = true; // voor alle projecten van deze vakman foreach (Project project in listProjecten) { bool blnIsOwner = false; bool blnIsEditor = false; // als ik (degene die dit scherm bekijkt) de projectleider ben blnIsOwner = project.ProjectleiderId == objProjectleider.ProjectleiderId; //VakmanDagViewProjectUren vakmandagproject = new VakmanDagViewProjectUren(); //vakmandagproject.ProjectId = project.ProjectId; ////vakmandagproject.OnVakmanDagProjectUpdate += new RoutedEventHandler(recDag_MouseDown); ////vakmandagproject.OnVakmanDagProjectSelect += new RoutedEventHandler(spVakmandagProject_OnVakmanDagSelectEvent); //// als ik (degene die dit scherm bekijkt) de projectleider ben //vakmandagproject.IsGroen = blnIsOwner; //// als het niet mijn project is EN er ergens uren staan ingevuld op een (ANDER) project //vakmandagproject.ReadOnly = (!blnIsOwner && blnIsOpVreemdProjectIngepland) || (blnIsOpProjectAangevraagd); // kijken of hij ingepland is voor dit project Mandagen mandag = listMandagen.Where(m => m.ProjectId == project.ProjectId && m.VakmanstatusId == 1).FirstOrDefault(); foreach (VakmanDagViewProjectUur vpu in GetProjectUren(listMandagen.Where(m => m.ProjectId == project.ProjectId && m.VakmanstatusId == 1).ToList(), project, dtBegintijd)) { vpu.project = project; vpu.vakman = objVakman; // oneven uren 'arceren' if (vpu.Uur % 2 == 1) { vpu.spUur.Background = new SolidColorBrush(Colors.Beige); } // als hij ingepland is if (mandag != null) { blnIsEditor = mandag.MutatieDoorProjectleiderId == objProjectleider.ProjectleiderId; // iemand geeft een vakman aan mij // stippelijn door iemand anders bij mij geplaatst // niet bevestigd wel owner en gewijzigd door iemand anders // als het project gewijzigd is, door iemand anders, en de wijziging mijn uren betreft if (!mandag.Bevestigd && blnIsOwner && mandag.Gewijzigd && !blnIsEditor && mandag.UrenGewijzigd > 0) { blnIsAllowedToConfirm = true; blnIsAllowedToCancel = true; } // iemand pakt een vakman van mij // solid lijn // wel bevestigd, maar gemuteerd door iemand anders en ik ben owner if (mandag.Bevestigd && blnIsOwner && mandag.Gewijzigd && !blnIsEditor && mandag.Uren > 0) { blnIsAllowedToConfirm = true; blnIsAllowedToCancel = true; } if (mandag.Geannulleerd && !blnIsEditor) { //vakmandagproject.IsOranje = true; //vakmandagproject.Duration = mandag.UrenGewijzigd; //vakmandagproject.IsSolid = false; blnIsAllowedToAcceptAnnulleringen = blnIsOwner; // flag op true zetten, zorgt er automatisch voor dat cancel en confirm buttons weergegeven kunnen worden IsGewijzigd = true; } // als de mandag bevestigd is, niks aan de hand, gewoon de normale uren weergeven else if (mandag.Bevestigd) { //vakmandagproject.Duration = mandag.Uren; //vakmandagproject.IsSolid = true; // if (!blnIsOwner && vakmandagproject.Duration > 0) if (blnIsOpVreemdProjectIngepland && !blnIsOwner) { //vakmandagproject.ReadOnly = true; blnIsAllowedToSetZiek = false; blnIsAllowedToSetVakantie = false; } //else if (blnIsOwner && vakmandagproject.Duration > 0) //{ // // TODO: weeer aanzetten, nu even uitzetten // // vakmandagproject.spVakmanDagUren.Visibility = System.Windows.Visibility.Visible; // //vakmandagproject.lblVakmandagUren.Content = mandag.Uren; // //vakmandagproject.lblVakmandagMinuten.Content = mandag.Minuten; //} } else // als niet bevestigd, dan is er iets gewijzigd, hetzij een wijziging, hetzij een nieuwe invoer { //vakmandagproject.Duration = mandag.UrenGewijzigd; //vakmandagproject.IsSolid = false; if (blnIsOwner || blnIsEditor) { blnIsAllowedToCancel = true; } // flag op true zetten, zorgt er automatisch voor dat cancel en confirm buttons weergegeven kunnen worden IsGewijzigd = true; // bij gewijzigde items de gewijzigde uren weergeven } } else // niet ingepland, dus niks veranderen aan default situatie, duration = 0 { //vakmandagproject.Duration = 0; } vpu.blnIsEnabled = blnIsOwner || blnIsOpMijnProjectIngepland; // uiteindelijk toevoegen // altijd 24x, voor elk uur 1 spVakmanDag.Children.Add(vpu); } // klaar met instellingen, vakmandagproject toevoegen // spVakmanDag.Children.Add(GetProjectUren(); } // Niet ingevuld toevoegen VakmanDagProject vakmandagprojectNietIngevuld = new VakmanDagProject(); vakmandagprojectNietIngevuld.ProjectId = 0; //vakmandagprojectNietIngevuld.OnVakmanDagProjectUpdate += new RoutedEventHandler(recDag_MouseDown); vakmandagprojectNietIngevuld.IsNietIngevuld = true; // als ik (degene die dit scherm bekijkt) de projectleider ben vakmandagprojectNietIngevuld.IsGroen = false; vakmandagprojectNietIngevuld.ReadOnly = blnIsAllowedToCancel || blnIsAllowedToAcceptAnnulleringen || ((blnIsOpVreemdProjectIngepland || blnIsNotOwner)); //vakmandagprojectNietIngevuld.ReadOnly = blnIsAllowedToCancel || blnIsAllowedToAcceptAnnulleringen || ((blnIsOpVreemdProjectIngepland || blnIsNotOwner) && !blnIsZiek && !blnIsVakantie); vakmandagprojectNietIngevuld.IsSolid = true; vakmandagprojectNietIngevuld.Duration = blnIsOpProjectIngepland ? 0 : 8;; // klaar met instellingen, vakmandagproject toevoegen //spVakmanDag.Children.Add(vakmandagprojectNietIngevuld); svScrollviewer.ScrollToHorizontalOffset(560); //// visibility van knoppen instellen //if (blnIsAllowedToConfirm) //{ // recOK.Visibility = System.Windows.Visibility.Visible; //} //else //{ // recOK.Visibility = System.Windows.Visibility.Hidden; //} //// visibility van knoppen instellen //if (blnIsAllowedToCancel) //{ // recCancel.Visibility = System.Windows.Visibility.Visible; //} //else //{ // recCancel.Visibility = System.Windows.Visibility.Hidden; //} //if (blnIsAllowedToAcceptAnnulleringen) //{ // recReadGeannulleerd.Visibility = System.Windows.Visibility.Visible; //} //else //{ // recReadGeannulleerd.Visibility = System.Windows.Visibility.Hidden; //} }
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; } }
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 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); } }
/// <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; }
private void Toevoegen() { bool IsNewVakman = false; dbRepository dbrep = new dbRepository(); dbOriginalRepository dbOriginalRep = new dbOriginalRepository(); persoon persoon = (persoon)dgContacten.SelectedItem; // 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 bedrijf dbobedrijf = dbOriginalRep.GetBedrijf((int)persoon.bedrijf_nr); // toevoegen indien het niet bestaat Bedrijf bedrijf = dbrep.GetBedrijf(dbobedrijf.bedrijf_ID); if (bedrijf == null) { Bedrijf bedrijfNew = new Bedrijf(); bedrijfNew.BedrijfIdOrigineel = dbobedrijf.bedrijf_ID; bedrijf = dbrep.InsertBedrijf(bedrijfNew); } if (dbobedrijf.bedrijf_ID == ZeebregtsBedrijfId) { vakmanNew.Intern = true; } else { vakmanNew.Intern = false; } vakmanNew.BedrijfId = bedrijf.BedrijfId; } // overige info van de vakman invullen vakmanNew.Actief = true; vakmanNew.ContactIdOrigineel = persoon.persoon_ID; vakmanNew.ProjectleiderId = ApplicationState.GetValue <int>(ApplicationVariables.intProjectleider); vakmanNew.Bsn = persoon.voornaam + " " + (String.IsNullOrEmpty(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)); PageGoBack(); }