Пример #1
0
        /// <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();
        }
Пример #2
0
        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);
        }
Пример #5
0
        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();
        }
Пример #6
0
        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");
        }
Пример #7
0
        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();
        }
Пример #8
0
        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;
            }
        }
Пример #9
0
        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");
            }
        }
Пример #10
0
        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;
            }
        }
Пример #12
0
        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();
        }