Esempio n. 1
0
        private List <ResultGrouped> CalculateGroupedResults(IEnumerable <ResultTypeNew> results, string dzivnieks)
        {
            double first  = 0;
            double second = 0;
            double third  = 0;
            double fourth = 0;
            double fifth  = 0;
            double sum    = 0;

            var prices = CenasLogic.PopulatePrices();

            foreach (var result in results)
            {
                switch (GetBonitateFromResult(result, dzivnieks))
                {
                case 1:
                    first += result.NogabalaPlatiba;
                    sum   += result.NogabalaPlatiba;
                    break;

                case 2:
                    second += result.NogabalaPlatiba;
                    sum    += result.NogabalaPlatiba;
                    break;

                case 3:
                    third += result.NogabalaPlatiba;
                    sum   += result.NogabalaPlatiba;
                    break;

                case 4:
                    fourth += result.NogabalaPlatiba;
                    sum    += result.NogabalaPlatiba;
                    break;

                case 5:
                    fifth += result.NogabalaPlatiba;
                    sum   += result.NogabalaPlatiba;
                    break;
                }
            }

            var resultList = new List <ResultGrouped>
            {
                new ResultGrouped
                {
                    Bonitate = "1",
                    Platiba  = first,
                    // ReSharper disable once PossibleNullReferenceException
                    Cena = first * prices.FirstOrDefault(x => x.Dzivnieks == DzivnieksStringToEnum(dzivnieks)).CenaParPirmoBonitati
                },
                new ResultGrouped
                {
                    Bonitate = "2",
                    Platiba  = second,
                    // ReSharper disable once PossibleNullReferenceException
                    Cena = second * prices.FirstOrDefault(x => x.Dzivnieks == DzivnieksStringToEnum(dzivnieks)).CenaParOtroBonitati
                },
                new ResultGrouped
                {
                    Bonitate = "3",
                    Platiba  = third,
                    // ReSharper disable once PossibleNullReferenceException
                    Cena = third * prices.FirstOrDefault(x => x.Dzivnieks == DzivnieksStringToEnum(dzivnieks)).CenaParTresoBonitati
                },
                new ResultGrouped
                {
                    Bonitate = "4",
                    Platiba  = fourth,
                    // ReSharper disable once PossibleNullReferenceException
                    Cena = fourth * prices.FirstOrDefault(x => x.Dzivnieks == DzivnieksStringToEnum(dzivnieks)).CenaParCeturtoBonitati
                },
                new ResultGrouped
                {
                    Bonitate = "5",
                    Platiba  = fifth,
                    // ReSharper disable once PossibleNullReferenceException
                    Cena = fifth * prices.FirstOrDefault(x => x.Dzivnieks == DzivnieksStringToEnum(dzivnieks)).CenaParPiektoBonitati
                },
                new ResultGrouped
                {
                    Bonitate = "Kopa",
                    Platiba  = sum,
                    // ReSharper disable once PossibleNullReferenceException
                    Cena = first * prices.FirstOrDefault(x => x.Dzivnieks == DzivnieksStringToEnum(dzivnieks)).CenaParPirmoBonitati +
                           second * prices.FirstOrDefault(x => x.Dzivnieks == DzivnieksStringToEnum(dzivnieks)).CenaParOtroBonitati +
                           third * prices.FirstOrDefault(x => x.Dzivnieks == DzivnieksStringToEnum(dzivnieks)).CenaParTresoBonitati +
                           fourth * prices.FirstOrDefault(x => x.Dzivnieks == DzivnieksStringToEnum(dzivnieks)).CenaParCeturtoBonitati +
                           fifth * prices.FirstOrDefault(x => x.Dzivnieks == DzivnieksStringToEnum(dzivnieks)).CenaParPiektoBonitati
                }
            };

            return(resultList);
        }
Esempio n. 2
0
 private void PopulatePrices()
 {
     PricesDataGrid.ItemsSource = CenasLogic.PopulatePrices();
 }