Пример #1
0
        public PartialViewResult GetCriteriaAlternativesMenuFullPartialView(int id, int kriterij)
        {
            AHPEntities4 db = new AHPEntities4();

            List <Kriterij>                      kriteriji                     = GetListOfCriteria(id);
            Projekt                              odabraniProjekt               = db.Projekts.Where(x => x.id == id).SingleOrDefault();
            List <Alternativa>                   alternative                   = db.Alternativas.Where(x => (x.projekt == id && x.obrisana != true)).ToList();
            List <AlternativaKriterij>           alternativaKriterij           = db.AlternativaKriterijs.Where(x => (x.kriterij == kriterij && x.Alternativa1.obrisana != true)).ToList();
            Kriterij                             odabraniKriterij              = db.Kriterijs.Where(x => x.id == kriterij).SingleOrDefault();
            List <AlternativesComparedViewModel> alternativesComparedViewModel = new List <AlternativesComparedViewModel>();

            foreach (var alternativa1 in alternative)
            {
                foreach (var alternativa2 in alternative)
                {
                    if (alternativa1.id != alternativa2.id)
                    {
                        if (alternativesComparedViewModel.Where(x => ((x.Alternativa1.id == alternativa1.id && x.Alternativa2.id == alternativa2.id) || (x.Alternativa2.id == alternativa1.id && x.Alternativa1.id == alternativa2.id))).Count() == 0)
                        {
                            alternativesComparedViewModel.Add(new AlternativesComparedViewModel(alternativa1, alternativa2));
                        }
                    }
                }
            }

            List <UsporedbaAlternativaPremaKriteriju> usporedbaAlternativaPremaKriteriju = odabraniKriterij.UsporedbaAlternativaPremaKriterijus.Where(x => (x.Kriterij1.id == kriterij)).ToList();


            EvaluationAlternativesViewModel evaluationAlternativesViewModel = new EvaluationAlternativesViewModel();

            evaluationAlternativesViewModel.Projekt                            = odabraniProjekt;
            evaluationAlternativesViewModel.AlternativaKriterij                = alternativaKriterij;
            evaluationAlternativesViewModel.Kriteriji                          = kriteriji;
            evaluationAlternativesViewModel.Kriterij                           = odabraniKriterij;
            evaluationAlternativesViewModel.Alternative                        = alternative;
            evaluationAlternativesViewModel.ListaKombinacijaAlternativa        = alternativesComparedViewModel;
            evaluationAlternativesViewModel.UsporedbaAlternativaPremaKriteriju = usporedbaAlternativaPremaKriteriju;

            return(PartialView("_CriteriaMenuAlternativesPartial", evaluationAlternativesViewModel));
        }
Пример #2
0
        public ActionResult Alternatives(int projekt, int kriterij)
        {
            AHPEntities4 db = new AHPEntities4();
            Projekt      odabraniProjekt = db.Projekts.Where(x => x.id == projekt).SingleOrDefault();

            if (kriterij != -1)
            {
                List <Kriterij>            kriteriji           = GetListOfCriteria(projekt);
                List <Alternativa>         alternative         = db.Alternativas.Where(x => (x.projekt == projekt && x.obrisana != true)).ToList();
                List <AlternativaKriterij> alternativaKriterij = db.AlternativaKriterijs.Where(x => (x.kriterij == kriterij && x.Alternativa1.obrisana != false)).ToList();


                Kriterij odabraniKriterij = db.Kriterijs.Where(x => x.id == kriterij).SingleOrDefault();

                List <AlternativesComparedViewModel> alternativesComparedViewModel = new List <AlternativesComparedViewModel>();

                foreach (var alternativa1 in alternative)
                {
                    foreach (var alternativa2 in alternative)
                    {
                        if (alternativa1.id != alternativa2.id)
                        {
                            if (alternativesComparedViewModel.Where(x => ((x.Alternativa1.id == alternativa1.id && x.Alternativa2.id == alternativa2.id) || (x.Alternativa2.id == alternativa1.id && x.Alternativa1.id == alternativa2.id))).Count() == 0)
                            {
                                alternativesComparedViewModel.Add(new AlternativesComparedViewModel(alternativa1, alternativa2));
                            }
                        }
                    }
                }



                List <UsporedbaAlternativaPremaKriteriju> usporedbaAlternativaPremaKriteriju = odabraniKriterij.UsporedbaAlternativaPremaKriterijus.Where(x => (x.Kriterij1.id == kriterij)).ToList();

                EvaluationAlternativesViewModel evaluationAlternativesViewModel = new EvaluationAlternativesViewModel();
                evaluationAlternativesViewModel.Kriterij                           = odabraniKriterij;
                evaluationAlternativesViewModel.Projekt                            = odabraniProjekt;
                evaluationAlternativesViewModel.AlternativaKriterij                = alternativaKriterij;
                evaluationAlternativesViewModel.Kriteriji                          = kriteriji;
                evaluationAlternativesViewModel.Alternative                        = alternative;
                evaluationAlternativesViewModel.ListaKombinacijaAlternativa        = alternativesComparedViewModel;
                evaluationAlternativesViewModel.UsporedbaAlternativaPremaKriteriju = usporedbaAlternativaPremaKriteriju;
                return(View(evaluationAlternativesViewModel));
            }
            else
            {
                List <Kriterij> kriteriji = GetListOfCriteria(projekt);

                kriterij = kriteriji[0].id;
                List <Alternativa>         alternative         = db.Alternativas.Where(x => (x.projekt == projekt && x.obrisana != true)).ToList();
                List <AlternativaKriterij> alternativaKriterij = db.AlternativaKriterijs.Where(x => (x.kriterij == kriterij && x.Alternativa1.obrisana != false)).ToList();


                Kriterij odabraniKriterij = db.Kriterijs.Where(x => x.id == kriterij).SingleOrDefault();

                List <AlternativesComparedViewModel> alternativesComparedViewModel = new List <AlternativesComparedViewModel>();

                foreach (var alternativa1 in alternative)
                {
                    foreach (var alternativa2 in alternative)
                    {
                        if (alternativa1.id != alternativa2.id)
                        {
                            if (alternativesComparedViewModel.Where(x => ((x.Alternativa1.id == alternativa1.id && x.Alternativa2.id == alternativa2.id) || (x.Alternativa2.id == alternativa1.id && x.Alternativa1.id == alternativa2.id))).Count() == 0)
                            {
                                alternativesComparedViewModel.Add(new AlternativesComparedViewModel(alternativa1, alternativa2));
                            }
                        }
                    }
                }



                List <UsporedbaAlternativaPremaKriteriju> usporedbaAlternativaPremaKriteriju = odabraniKriterij.UsporedbaAlternativaPremaKriterijus.Where(x => (x.Kriterij1.id == kriterij)).ToList();

                EvaluationAlternativesViewModel evaluationAlternativesViewModel = new EvaluationAlternativesViewModel();
                evaluationAlternativesViewModel.Kriterij                           = odabraniKriterij;
                evaluationAlternativesViewModel.Projekt                            = odabraniProjekt;
                evaluationAlternativesViewModel.AlternativaKriterij                = alternativaKriterij;
                evaluationAlternativesViewModel.Kriteriji                          = kriteriji;
                evaluationAlternativesViewModel.Alternative                        = alternative;
                evaluationAlternativesViewModel.ListaKombinacijaAlternativa        = alternativesComparedViewModel;
                evaluationAlternativesViewModel.UsporedbaAlternativaPremaKriteriju = usporedbaAlternativaPremaKriteriju;
                return(View(evaluationAlternativesViewModel));
            }
        }