public KontrollProduktPresentasjon opprettNyttTilvalg(TilvalgElement tilvalgElement)
        {
            KontrollProduktPresentasjon tilvalg = null;

            switch (tilvalgElement.PrisTypeBeregning)
            {
            case TilvalgElement.PrisBeregningType.normal:
                tilvalg = new TilvalgEnkelPris(tilvalgElement.TilvalgTittel, tilvalgElement.Pris);
                break;

            case TilvalgElement.PrisBeregningType.totalsumXprosent:
                tilvalg = new TilvalgTotalsumXprosentTilvalg(tilvalgElement.TilvalgTittel, tilvalgElement.Pris, forslag, tilvalgElement.MinstePris);
                break;

            case TilvalgElement.PrisBeregningType.noramlTusendel:
                tilvalg = new TilvalgEnkelPrisTusendel(tilvalgElement.TilvalgTittel, tilvalgElement.Pris);
                break;

            case TilvalgElement.PrisBeregningType.kvadratmeter:
                tilvalg = new TilvalgKvadratmeterPris(tilvalgElement.TilvalgTittel, tilvalgElement.Pris);
                break;

            case TilvalgElement.PrisBeregningType.egendefinert:
                tilvalg = new TilvalgEgendefinertPris(tilvalgElement.TilvalgTittel, tilvalgElement.Pris);
                break;
            }

            return(tilvalg);
        }
Beispiel #2
0
        public HeltreForslagKontroll(DataAksess2 db)
        {
            InitializeComponent();

            heltreForslagService = new HeltreForslagService(db);

            //#Hardkoding av standard tilvalg
            foreach (Modell.Tilvalg.TilvalgGruppe item in db.Produktbeholder.Tilvalgliste)
            {
                if (item.GruppeTittel.ToLower().Contains("profilfresing") && item.tilvalgListe.Count > 0)
                {
                    TilvalgEnkelPrisTusendel k = new TilvalgEnkelPrisTusendel(item.tilvalgListe[0].TilvalgTittel, item.tilvalgListe[0].Pris);
                    k.AntallEnheter = 0;
                    heltreForslagService.ForslagSomVises.AddTilvalg(k);
                    break;
                }
            }

            //foreach (Modell.Tilvalg.TilvalgGruppe item in db.Produktbeholder.Tilvalgliste)
            //{
            //    if (item.GruppeTittel.ToLower().Contains("vedlikeholdspakke") && item.tilvalgListe.Count > 0)
            //    {
            //        KontrollProduktPresentasjon k = new TilvalgEnkelPris(item.tilvalgListe[0].TilvalgTittel, item.tilvalgListe[0].Pris);
            //        heltreForslagService.ForslagSomVises.AddTilvalg(k);
            //        break;
            //    }
            //}
            //###

            nyHeltreKnapp.Click     += nyHeltreKnapp_Click;
            kummerKnapp.Click       += kummerKnapp_Click;
            annetTilvalgKnapp.Click += annetTilvalgKnapp_Click;
            kundeKnapp.Click        += kundeKnapp_Click;
            print.Click             += print_Click;
            sendTilEpostKnapp.Click += sendTilEpostKnapp_Click;
            lagreSomPDF.Click       += lagreSomPDF_Click;

            forslagListBoks.DataContext = null;
            forslagListBoks.DataContext = heltreForslagService.ForslagSomVises;

            tilvalgListView.DataContext = null;
            tilvalgListView.DataContext = heltreForslagService.ForslagSomVises;

            totalprisLabel.DataContext = null;
            totalprisLabel.DataContext = heltreForslagService.ForslagSomVises;

            totalprisIScrollLabel.DataContext = null;
            totalprisIScrollLabel.DataContext = heltreForslagService.ForslagSomVises;
        }
        private void PrisRadioButton_Click(object sender, RoutedEventArgs e)
        {
            RadioButton knapp = sender as RadioButton;

            if (knapp == null)
            {
                return;
            }
            sistePrisKlikket = knapp;

            ListViewItem lvitem = Hjelpeklasser.VisualTree.getParentKontroll <ListViewItem>(knapp);

            if (lvitem != null && lvitem.Content is CorianProdukt)
            {
                CorianProdukt cp = lvitem.Content as CorianProdukt;
                if (cp.Prisgruppe == null)
                {
                    return;
                }

                TilvalgEnkelPris p = null;

                string navn = "";
                if (cmbFargevelger2.SelectedItem is Farge)
                {
                    //HACK: Hardcoding av alle farger sånn at stålkummene ikke vises med farge.
                    if (cp.Prisgruppe.Farger.PrisgruppeNavn.ToLower().Trim() == "alle farger")
                    {
                        navn = cp.Navn; //+ ", " + cp.Prisgruppe.Farger.PrisgruppeNavn;
                    }
                    else
                    {
                        navn = (cp.Navn + ", " + cp.Prisgruppe.Farger.PrisgruppeNavn + ", " + cmbFargevelger2.SelectedItem as string).Trim().TrimEnd(',');
                    }
                    //navn = (cp.Navn + ", " + (cmbFargevelger2.SelectedItem as Farge).FargeBeholderSomFargenErI.PrisgruppeNavn + ", " + cmbFargevelger2.SelectedItem as string).Trim().TrimEnd(',');
                }
                else
                {
                    navn = (cp.Navn + ", " + cmbFargevelger2.SelectedItem as string).Trim().TrimEnd(',');
                }

                if (cp.PrisPer == CorianProdukt.PerPrisType.perAntall)
                {
                    p = new TilvalgEnkelPris(navn, cp.Prisgruppe.Pris);
                }
                else
                {
                    p = new TilvalgEnkelPrisTusendel(navn, cp.Prisgruppe.Pris);
                }


                p.ProduktKommentar = cp.ProduktKategori + ": ";
                Produkt            = p;


                if (cmbFargevelger2.SelectedItem is Farge)
                {
                    Produkt.Merknader3 = (cmbFargevelger2.SelectedItem as Farge).FargeMerknader.ToArray();
                }

                if (Produkt != null)
                {
                    innhold.Content = Produkt.Kontroll;
                }
            }



            if (innhold.Content == null)
            {
                LeggTilKnapp.IsEnabled = false;
            }
            else
            {
                LeggTilKnapp.IsEnabled = true;
            }
        }