Beispiel #1
0
        private CustomListItem mkListItem_single(IOfferte item, eBrochureDomainContext ctx, string grpnm)
        {
            //invulling aan listItem geven, wss
            var optie = item as OptieKeuze;

            if (optie != null)
            {
                var sli = new CustomListItem(optie.Omschrijving, optie.OptieID, item.IsEnabled, true, this, grpnm);
                //var sli = new SingleListItem(optie.Omschrijving + "   -   €"+ String.Format("{0:0.00}",optie.BasisPrijs), optie.OptieID, item.IsEnabled);
                if (!sli.Beschikbaar)
                {
                    Disabled.Add(sli);
                }
                return(sli);
            }
            var ruimte = item as RuimteOfferte;

            if (ruimte != null)
            {
                var sli = new CustomListItem(ruimte.Omschrijving, ruimte.Omschrijving, item.IsEnabled, true, this, grpnm);
                //var sli = new SingleListItem(ruimte.Omschrijving, ruimte.Omschrijving, item.IsEnabled);
                if (!sli.Beschikbaar)
                {
                    Disabled.Add(sli);
                }
                return(sli);
            }
            var pakket = item as PakketKeuze;

            if (pakket != null)
            {
                var sli = new CustomListItem(pakket.Omschrijving, pakket.Pakket_ID, pakket.IsEnabled, true, this, grpnm);
                var oli = new List <OpbouwItem>();
                oli.Add(new OpbouwItem("pakket " + pakket.Omschrijving.ToLower(), "€" + string.Format("{0:0.00}", pakket.PrijsHuidig), ""));
                foreach (OptieKeuze ok in RuimteHuidig.GekozenOpties)
                {
                    if (ok.OptieSoort != "OT3")
                    {
                        oli.Add(new OpbouwItem(ok.Omschrijving, "€" + string.Format("{0:0.00}", (ok.getMeerprijs(Acumulator.Instance().ctx, pakket.PakketPrijsgroep_NR))), ""));
                    }
                }
                if (oli.Count > 0)
                {
                    sli.Opbouw = oli;
                }
                //var sli = new SingleListItem(pakket.Omschrijving + "   -   €"+ String.Format("{0:0.00}",pakket.PrijsHuidig), pakket.Pakket_ID, item.IsEnabled);
                if (!sli.Beschikbaar)
                {
                    Disabled.Add(sli);
                }

                return(sli);
            }
            var bewerking = item as Nabewerking;

            if (bewerking != null)
            {
                var sli = new CustomListItem(bewerking.Omschrijving, bewerking.Nabewerking_ID, true, true, this, grpnm);
                //var sli =  new SingleListItem(bewerking.Omschrijving, bewerking.Nabewerking_ID, true);
                if (!sli.Beschikbaar)
                {
                    Disabled.Add(sli);
                }
                return(sli);
            }
            var product = item as Product;

            if (product != null)
            {
                var sli = new CustomListItem(product.Omschrijving, product.ID, true, true, this, grpnm);
                //var sli = new SingleListItem(product.Omschrijving, product.ID, true);
                if (!sli.Beschikbaar)
                {
                    Disabled.Add(sli);
                }
                return(sli);
            }
            return(null);
        }
Beispiel #2
0
        private CustomListItem mkListItem_multi(IOfferte item, eBrochureDomainContext ctx, string gpnm)
        {
            //invulling aan listItem geven, wss
            var optie = item as OptieKeuze;

            if (optie != null)
            {
                var mli = new CustomListItem(optie.Omschrijving, optie.OptieID, item.IsEnabled, false, this, gpnm);
                //var mli = new MultiListItem(optie.Omschrijving + "   -   €" + String.Format("{0:0.00}",optie.BasisPrijs), optie.OptieID, item.IsEnabled);
                //mli.Checked += new RoutedEventHandler(mli_Checked);
                //mli.Unchecked += new RoutedEventHandler(mli_Unchecked);
                var opb         = new List <OpbouwItem>();
                var basispakket = (from rpt in ctx.RuimtesPerTypes
                                   where rpt.R_NR == RuimteHuidig.RuimteID
                                   select rpt.BasisPakket_NR).FirstOrDefault();
                var optiebasisprijs = 0.0;
                if (basispakket != null)
                {
                    var basispakprijs = (from pr in ctx.MeerPrijzenRuimteOpties
                                         where pr.R_NR == optie.OptieID && pr.PP_NR == (from p in ctx.Pakkettens where p.P_ID == basispakket select p.PP_NR).FirstOrDefault()
                                         select pr.meerprijs).FirstOrDefault();
                    if (basispakprijs != null)
                    {
                        optiebasisprijs = Acumulator.Instance().BerekenEindPrijs((double)basispakprijs);
                    }
                }
                if (optiebasisprijs == 0)
                {
                    optiebasisprijs = optie.BasisPrijs;
                }
                opb.Add(new OpbouwItem("", "€" + String.Format("{0:0.00}", optiebasisprijs), "vanaf")
                {
                    TextStijl = FontStyles.Italic
                });

                mli.Opbouw = opb;
                // add excludes
                var exc = from e in ctx.OngeldigeCombinatieOpbouws
                          where e.R_NR == optie.OptieID
                          select e.OC_NR;
                foreach (string s in exc)
                {
                    var foo = (from ex in ctx.OngeldigeCombinatieOpbouws
                               where ex.OC_NR == s && ex.R_NR != optie.OptieID
                               select ex.R_NR).ToList <string>();
                    foreach (string bar in foo)
                    {
                        mli.Excludes.Add(bar);
                    }
                }
                ///////////////////
                var verplichtesetid = (from vcs in ctx.VerplichteCombinatieOpbouws
                                       where vcs.R_NR == optie.OptieID
                                       select vcs.VC_NR).FirstOrDefault();
                var combis = (from vco in ctx.VerplichteCombinatieOpbouws
                              where vco.VC_NR == verplichtesetid && vco.R_NR != optie.OptieID
                              select vco.R_NR).ToList();
                if (combis.Count > 0)
                {
                    foreach (string c in combis)
                    {
                        mli.Combines.Add(c);
                    }
                }
                ///////////////////
                var grayed = (from r in ctx.MeervoudigeCombinatiesOpbouws
                              where r.R_NR == optie.OptieID
                              select r.IsAfhankelijk).FirstOrDefault();
                var mcset = (from mc in ctx.MeervoudigeCombinatiesOpbouws
                             where mc.R_NR == optie.OptieID
                             select mc.MC_NR).ToList();
                var mcrids = (from mr in ctx.MeervoudigeCombinatiesOpbouws
                              where mcset.Contains(mr.MC_NR)
                              select mr.R_NR).ToList();
                int cntr = 0;
                foreach (OptieKeuze ok in Inputlist)
                {
                    if (mcrids.Contains(ok.OptieID))
                    {
                        cntr++;
                    }
                }
                if (cntr == mcrids.Count && grayed != null)
                {
                    mli.Beschikbaar = !(bool)grayed;
                }
                //add unlocks
                var multi = from m in ctx.MeervoudigeCombinatiesOpbouws
                            where m.R_NR == optie.OptieID && m.IsAfhankelijk == false
                            select m.MC_NR;
                foreach (string s in multi)
                {
                    var foo = (from mu in ctx.MeervoudigeCombinatiesOpbouws
                               where mu.MC_NR == s && mu.R_NR != optie.OptieID
                               select mu.R_NR).ToList();
                    foreach (string bar in foo)
                    {
                        mli.Unlocks.Add(bar);
                    }
                }
                if (!mli.Beschikbaar)
                {
                    Disabled.Add(mli);
                }
                return(mli);
            }
            var ruimte = item as RuimteOfferte;

            if (ruimte != null)
            {
                var mli = new CustomListItem(ruimte.Omschrijving, ruimte.Omschrijving, item.IsEnabled, false, this, gpnm);
                //var sli = new MultiListItem(ruimte.Omschrijving, ruimte.Omschrijving, item.IsEnabled);
                if (!mli.Beschikbaar)
                {
                    Disabled.Add(mli);
                }
                //add excludes
                return(mli);
            }
            return(null);
        }
Beispiel #3
0
        private CustomListItem mkListItem_multi(IOfferte item, eBrochureDomainContext ctx, string gpnm)
        {
            //invulling aan listItem geven, wss
            var optie = item as OptieKeuze;

            if (optie != null)
            {
                var mli = new CustomListItem(optie.Omschrijving, optie.OptieID, item.IsEnabled, false, this, gpnm);
                //var mli = new MultiListItem(optie.Omschrijving + "   -   €" + String.Format("{0:0.00}",optie.BasisPrijs), optie.OptieID, item.IsEnabled);
                //mli.Checked += new RoutedEventHandler(mli_Checked);
                //mli.Unchecked += new RoutedEventHandler(mli_Unchecked);
                var opb = new List <OpbouwItem>();
                opb.Add(new OpbouwItem("", "€" + String.Format("{0:0.00}", optie.BasisPrijs), "vanaf")
                {
                    TextStijl = FontStyles.Italic
                });

                mli.Opbouw = opb;
                // add excludes
                var exc = from e in ctx.OngeldigeCombinatieOpbouws
                          where e.R_NR == optie.OptieID
                          select e.OC_NR;
                foreach (string s in exc)
                {
                    var foo = (from ex in ctx.OngeldigeCombinatieOpbouws
                               where ex.OC_NR == s && ex.R_NR != optie.OptieID
                               select ex.R_NR).ToList <string>();
                    foreach (string bar in foo)
                    {
                        mli.Excludes.Add(bar);
                    }
                }
                var grayed = (from r in ctx.MeervoudigeCombinatiesOpbouws
                              where r.R_NR == optie.OptieID
                              select r.IsAfhankelijk).FirstOrDefault();
                var mcset = (from mc in ctx.MeervoudigeCombinatiesOpbouws
                             where mc.R_NR == optie.OptieID
                             select mc.MC_NR).ToList();
                var mcrids = (from mr in ctx.MeervoudigeCombinatiesOpbouws
                              where mcset.Contains(mr.MC_NR)
                              select mr.R_NR).ToList();
                int cntr = 0;
                foreach (OptieKeuze ok in Inputlist)
                {
                    if (mcrids.Contains(ok.OptieID))
                    {
                        cntr++;
                    }
                }
                if (cntr == mcrids.Count && grayed != null)
                {
                    mli.Beschikbaar = !(bool)grayed;
                }
                //add unlocks
                var multi = from m in ctx.MeervoudigeCombinatiesOpbouws
                            where m.R_NR == optie.OptieID && m.IsAfhankelijk == false
                            select m.MC_NR;
                foreach (string s in multi)
                {
                    var foo = (from mu in ctx.MeervoudigeCombinatiesOpbouws
                               where mu.MC_NR == s && mu.R_NR != optie.OptieID
                               select mu.R_NR).ToList();
                    foreach (string bar in foo)
                    {
                        mli.Unlocks.Add(bar);
                    }
                }
                if (!mli.Beschikbaar)
                {
                    Disabled.Add(mli);
                }
                return(mli);
            }
            var ruimte = item as RuimteOfferte;

            if (ruimte != null)
            {
                var mli = new CustomListItem(ruimte.Omschrijving, ruimte.Omschrijving, item.IsEnabled, false, this, gpnm);
                //var sli = new MultiListItem(ruimte.Omschrijving, ruimte.Omschrijving, item.IsEnabled);
                if (!mli.Beschikbaar)
                {
                    Disabled.Add(mli);
                }
                //add excludes
                return(mli);
            }
            return(null);
        }