//tegel regels
        //normaal
        private void BewerkingTegelRegel(SubCatPerPakket scpp, Product tegel, ExtraMeters accentInfo)
        {
            //not sure if true

            var nRegel = new NabewerkingUiRegel
            {
                Meters           = accentInfo != null ? accentInfo.Meters :scpp.TotaalMeters,
                Eenheid          = GetEenheid(tegel.LinkedSubCat),
                InfoText         = tegel.Omschrijving.Split('€')[0],
                IsBasis          = accentInfo == null,
                SubCat           = accentInfo != null ? accentInfo.LinkedSubCat :scpp.SubCatNR,
                bewerkingenVoeg  = scpp.Children.OfType <Nabewerking>().Where(x => x.BewerkingCat_NR == "NC1").ToList(),
                bewerkingVerwerk = scpp.Children.OfType <Nabewerking>().Where(x => x.BewerkingCat_NR == "NC2").ToList(),
                ProductId        = tegel.ID
            };

            foreach (var nb in nRegel.bewerkingenVoeg)
            {
                nb.Kenmerk = tegel.ID + nRegel.SubCat;
            }
            foreach (var nb in nRegel.bewerkingVerwerk)
            {
                nb.Kenmerk = tegel.ID + nRegel.SubCat;
            }
            UiRegelCollection.Add(nRegel);
        }
Example #2
0
        private bool addHoekLine(AdvancedVervangRegel rgl, bool BasisReplaced)
        {
            var result    = true;
            var ctx       = Acumulator.Instance().ctx;
            var curRuimte = Acumulator.Instance().BB.HuidigRuimte;
            var lsc       = rgl.Status == StatusType.Basis ? InternData.SubCatNR : "Sub4Accent" + Ruimte.GenerateScbNr4Accent(InternData.SubCatNR).SCB_ID;


            var hoekprof = (from prf in ctx.Productens
                            where prf.PD_ID == rgl.GekozenTegel.ProductId
                            select new HoekProfiel()
            {
                ProfielID = prf.PD_ID,
                volgorde = (int)prf.volgorde,
                VerpakkingsToeslag = rgl.GekozenTegel.InstapPrijs,
                LinkedSubCat = lsc,
                Omschrijving = prf.Omschrijving,
                Kleur = (from kleur in ctx.Kleurens
                         where kleur.K_ID == prf.PKC_NR
                         select kleur.Omschrijving).FirstOrDefault().ToString(),
                KleurVolgorde = (from kleur in ctx.Kleurens
                                 where kleur.K_ID == prf.PKC_NR
                                 select(int) kleur.volgorde).FirstOrDefault(),
                KleurCode = prf.PKC_NR,
                Breedte = (int)prf.breedte,
                Lengte = (int)prf.lengte,
                ProfielImg = prf.ImagePath,
                Meters = rgl.VervangInfo.GekozenMeters,
                IsExpertMode = true,
            }).FirstOrDefault();

            if (hoekprof != null)
            {
                if (rgl.Status != StatusType.Basis || BasisReplaced)
                {
                    curRuimte.GekozenProfielen.Add(hoekprof);
                }



                var extMeters = new ExtraMeters
                {
                    LinkedHoekProf   = hoekprof,
                    LinkedSubCat     = InternData.SubCatNR,
                    Meters           = rgl.VervangInfo.GekozenMeters,
                    RegelIndex       = rgl.RegelIndex,
                    NabewerkingSetNR = rgl.GekozenTegel.NSNR,
                    IsBasis          = rgl.Status == StatusType.Basis ? !BasisReplaced : false,
                    Meerprijs        = rgl.GekozenTegel.PrijsPerMeter,
                    Opmerking        = rgl.VervangInfo.Opmerking,
                    ProdSoort        = ProductSoort.HoekProfiel
                };
                curRuimte.AanvullendeMeters.Add(extMeters);
            }

            return(result);
        }
Example #3
0
        private bool addDorpelLine(AdvancedVervangRegel rgl, bool BasisReplaced)
        {
            var result    = true;
            var ctx       = Acumulator.Instance().ctx;
            var curRuimte = Acumulator.Instance().BB.HuidigRuimte;
            var lsc       = rgl.Status == StatusType.Basis ? InternData.SubCatNR : "Sub4Accent" + Ruimte.GenerateScbNr4Accent(InternData.SubCatNR).SCB_ID;


            var dorpl = (from prdct in ctx.Productens
                         where prdct.PD_ID == rgl.GekozenTegel.ProductId
                         select new Product()
            {
                ID = prdct.PD_ID,
                volgorde = (int)prdct.volgorde,
                VerpakkingsToeslag = rgl.GekozenTegel.InstapPrijs,             //(double)prdct.verpakkingstoeslag,
                LinkedSubCat = lsc,
                LinkedMainCat = InternData.HCNR,
                Omschrijving = prdct.Omschrijving,
                Kleur = (from kleur in ctx.Kleurens
                         where kleur.K_ID == prdct.PKC_NR
                         select kleur.Omschrijving).FirstOrDefault().ToString(),
                kleurVolgorde = (from kleur in ctx.Kleurens
                                 where kleur.K_ID == prdct.PKC_NR
                                 select(int) kleur.volgorde).FirstOrDefault(),
                KleurCode = prdct.PKC_NR,
                Breedte = (int)prdct.breedte,
                Lengte = (int)prdct.lengte,
                ImgPath = prdct.ImagePath,
                productcode = prdct.productcode
            }).FirstOrDefault();

            if (dorpl != null)
            {
                if (rgl.Status != StatusType.Basis || BasisReplaced)
                {
                    curRuimte.GekozenAccenten.Add(dorpl);
                }

                var extMeters = new ExtraMeters
                {
                    LinkedProduct    = dorpl,
                    LinkedSubCat     = InternData.SubCatNR,
                    Meters           = rgl.VervangInfo.GekozenMeters,
                    RegelIndex       = rgl.RegelIndex,
                    NabewerkingSetNR = rgl.GekozenTegel.NSNR,
                    IsBasis          = rgl.Status == StatusType.Basis ? !BasisReplaced : false,
                    Meerprijs        = rgl.GekozenTegel.PrijsPerMeter,
                    Opmerking        = rgl.VervangInfo.Opmerking,
                    ProdSoort        = ProductSoort.Dorpel
                };

                curRuimte.AanvullendeMeters.Add(extMeters);
            }

            return(result);
        }
        //accent
        private void BewerkingDorpelRegelAccent(Product accentDorpel, ExtraMeters accentInfo)
        {
            var nRegel = new NabewerkingUiRegel
            {
                Meters   = accentInfo.Meters,
                Eenheid  = GetEenheid(accentInfo.LinkedSubCat),
                InfoText = accentDorpel.Omschrijving.Split('€')[0],
                IsBasis  = false,
                SubCat   = TranslateSubCat(accentInfo.LinkedSubCat)
            };

            UiRegelCollection.Add(nRegel);
        }
        //dorpel regels
        //normaal
        private void BewerkingDorpelRegel(SubCatPerPakket scpp, Product dorpel, ExtraMeters accentInfo)
        {
            var nRegel = new NabewerkingUiRegel
            {
                Meters   = accentInfo != null ? accentInfo.Meters : scpp.TotaalMeters,
                Eenheid  = GetEenheid(dorpel.LinkedSubCat),
                InfoText = dorpel.Omschrijving.Split('€')[0],
                IsBasis  = accentInfo == null,
                SubCat   = accentInfo != null ? accentInfo.LinkedSubCat : scpp.SubCatNR
            };

            UiRegelCollection.Add(nRegel);
        }
        //accent
        private void BewerkingTegelRegelAccent(Product accentTegel, ExtraMeters accentInfo)
        {
            var nRegel = new NabewerkingUiRegel
            {
                Meters           = accentInfo.Meters,
                Eenheid          = GetEenheid(accentTegel.LinkedSubCat),
                InfoText         = accentTegel.Omschrijving.Split('€')[0],
                IsBasis          = false,
                SubCat           = TranslateSubCat(accentInfo.LinkedSubCat),
                bewerkingenVoeg  = GetNabewerkingSet(accentInfo.NabewerkingSetNR, accentInfo.LinkedSubCat).Where(x => x.BewerkingCat_NR == "NC1").ToList(),
                bewerkingVerwerk = GetNabewerkingSet(accentInfo.NabewerkingSetNR, accentInfo.LinkedSubCat).Where(x => x.BewerkingCat_NR == "NC2").ToList(),
                ProductId        = accentTegel.ID
            };

            foreach (var nb in nRegel.bewerkingenVoeg)
            {
                nb.Kenmerk = accentTegel.ID + nRegel.SubCat + "A";
            }
            foreach (var nb in nRegel.bewerkingVerwerk)
            {
                nb.Kenmerk = accentTegel.ID + nRegel.SubCat + "A";
            }
            UiRegelCollection.Add(nRegel);
        }