public static AdvancedVervangRegel GetNewTegelRegel(ObservableCollection <AdvancedTegelInfo> tegelsInput, int index, string eenheid) { var nwRegel = new AdvancedVervangRegel { Status = StatusType.Leeg, RegelIndex = index, VervangInfo = new AdvancedVervangActie { Wijzigstand = true, GekozenMeters = 0.0, //Opmerking = "Eerste vervang regel", Tegels = tegelsInput }, Eenheid = eenheid }; return(nwRegel); }
public static AdvancedTegelSubCatInfo GetNewAccentModel(SubCatPerPakket subc, Product gekozenTegel, double totaalMeters) { // var ctx = Acumulator.Instance().ctx; var data = new AdvancedTegelSubCatInfo(); data.TotaalMeters = totaalMeters; var HC = (from cc in ctx.Categorieëns where cc.C_ID == subc.CategorieNR select cc.HC_NR).FirstOrDefault(); data.HCNR = HC; data.SubCatNR = subc.SubCatNR; var sctitle = (from c in ctx.HoofdCategorieëns where c.HC_ID == HC select c.Omschrijving).FirstOrDefault().ToString(); data.SubCatTitle = sctitle; var prodCheck = (from vapp in ctx.VrijAccentProductInfos where vapp.PD_NR == gekozenTegel.ID && vapp.HC_NR == HC select vapp).FirstOrDefault(); if (prodCheck != null) { var ppm = (from acprod in ctx.VrijAccentProductInfos where acprod.PD_NR == gekozenTegel.ID && acprod.HC_NR == HC select(from or in acprod.AccentSetOpbouw where or.VrijAccentRegel_NR == or.VrijAccentProductInfo.VAPP_ID select or.Prijs).FirstOrDefault()).FirstOrDefault(); data.BasisTegel = new AdvancedTegelInfo { ImgPath = gekozenTegel.ImgPath, TegelOmschrijving = gekozenTegel.Omschrijving, TegelDetails = gekozenTegel.Naam, InwisselPrijs = (double)ppm, PrijsPerMeter = (double)ppm - (double)ppm, InstapPrijs = 0.0, IsGekozen = true, ProductId = gekozenTegel.ID, Lengte = gekozenTegel.Lengte, Breedte = gekozenTegel.Breedte, NSNR = (from acprod in ctx.VrijAccentProductInfos where acprod.PD_NR == gekozenTegel.ID && acprod.HC_NR == HC select acprod.NS_NR).FirstOrDefault(), ProdSoort = HC != "HC6" ? ProductSoort.Tegel : ProductSoort.Dorpel }; if (HC == null) { return(null); } if (Acumulator.Instance().BB.HuidigRuimte == null || Acumulator.Instance().BB.HuidigRuimte.GekozenPakket == null) { return(null); } var validpdinf = (from prds in ctx.VrijAccentProductInfos where prds.HC_NR == HC && prds.PD_NR != data.BasisTegel.ProductId select prds); if (validpdinf == null || validpdinf.Count() <= 0) { return(null); } data.TegelInput = validpdinf; var atiList = GetTegelColl(validpdinf, (double)ppm, data.BasisTegel.ProdSoort); atiList.Insert(0, data.BasisTegel); // atiList.Reverse(); var eh = (from x in ctx.SubCats where x.SCB_ID == subc.SubCatNR select x.eenheidMETERS).FirstOrDefault().ToString(); data.Regels = new ObservableCollection <AdvancedVervangRegel> { new AdvancedVervangRegel { GekozenTegel = data.BasisTegel, Status = StatusType.Basis, RegelIndex = 0, VervangInfo = new AdvancedVervangActie { Wijzigstand = false, GekozenMeters = data.TotaalMeters, //Opmerking ="Standaard keuze uit pakket", Tegels = atiList }, Eenheid = eh }, AdvancedVervangRegel.GetNewTegelRegel(GetTegelColl(validpdinf, (double)ppm, ProductSoort.Tegel), 1, eh) }; // return(data); } else { return(null); } }