Example #1
0
        /// <summary>
        /// MVC get method for alternatives evaluation (Evaulation.cshtml)
        /// </summary>
        /// <param name="issueId">issue id</param>
        /// <returns>alternatives evaluation view (Evaulation.cshtml)</returns>
        public ActionResult Evaluation(int issueId)
        {
            IssueCreating   ic     = new IssueCreating();
            EvaluationVM    evm    = new EvaluationVM();
            IssueEvaluation ie     = new IssueEvaluation();
            int             userId = GetUserIdFromClaim();

            evm.Issue = ic.GetIssue(issueId);
            if (evm.Issue.Status == "CREATING" || evm.Issue.Status == "BRAINSTORMING1" || evm.Issue.Status == "BRAINSTORMING2")
            {
                return(RedirectToAction("Creating", "Issue", new { issueId = issueId }));
            }
            //ToDo check viewsettings & issueOwner
            evm.AllRatings   = ie.GetAllIssueRatings(issueId, userId);
            evm.UserRatings  = ie.GetIssueUserRatings(issueId, userId);
            evm.Criterias    = ie.GetIssueCrtieria(issueId, userId);
            evm.Alternatives = ie.GetIssueAlternatives(issueId, userId);
            evm.RatedUsers   = ie.GetRatedUsersForIssue(issueId, userId);
            evm.RatedUserCnt = evm.RatedUsers.Count;
            evm.AccessRight  = ic.AccessRightOfUserForIssue(userId, issueId).Right;
            evm.UserId       = userId;

            if (evm.Issue.Setting == "B")
            {
                IssueCriterionWeight icw = new IssueCriterionWeight();
                evm.SliderValues    = ie.GetSliderValues();
                evm.PairwiseRatings = ie.GetPairwiseAlternativeRatings(issueId, userId);
            }

            return(View(evm));
        }
Example #2
0
        /// <summary>
        /// MVC get method for criteria weighting view (CriteriaRating.cshtml)
        /// </summary>
        /// <param name="issueId">issue id</param>
        /// <returns>criteria weighting view (CriteraRating.cshtml)</returns>
        public ActionResult CriteriaRating(int issueId)
        {
            CriteriaWeightsVM    vm  = new CriteriaWeightsVM();
            IssueCreating        ic  = new IssueCreating();
            IssueCriterionWeight icw = new IssueCriterionWeight();
            int userId = GetUserIdFromClaim();

            vm.Issue = ic.GetIssue(issueId);
            if (vm.Issue.Status == "CREATING" || vm.Issue.Status == "BRAINSTORMING1")
            {
                return(RedirectToAction("Creating", "Issue", new { issueId = issueId }));
            }
            vm.AccessRight = ic.AccessRightOfUserForIssue(userId, issueId).Right;
            vm.UserId      = userId;

            if (vm.Issue.Setting == "B")
            {
                vm.PCCriteria   = icw.GetPCCriteria(issueId, userId);
                vm.SliderValues = icw.GetSliderValues();
            }

            vm.UserWeights  = icw.GetUserWeights(issueId, userId);
            vm.OtherWeights = icw.GetIssueWeights(issueId, userId);
            vm.VotedUsers   = new List <UserWithCW>();
            int i = 0;

            foreach (List <CriterionWeightModel> cwmL in vm.OtherWeights)
            {
                vm.VotedUsers.Add(new UserWithCW(cwmL.FirstOrDefault().UserId, cwmL.FirstOrDefault().Name));
                vm.VotedUsers[i].UserCriterionWeights = vm.OtherWeights[i];
                i++;
            }

            return(View(vm));
        }
Example #3
0
        public ActionResult CriteriaRating([FromJson] CriteriaWeightsVM criteriaWeightsVM)
        {
            IssueCriterionWeight icw = new IssueCriterionWeight();

            if (criteriaWeightsVM.Issue.Setting == "A")
            {
                icw.SaveCriterionWeights(criteriaWeightsVM.UserWeights, criteriaWeightsVM.Issue.Id, GetUserIdFromClaim());

                var context = GlobalHost.ConnectionManager.GetHubContext <NotificationHub>();
                context.Clients.All.updateCriteriaWeights(criteriaWeightsVM.UserWeights, new UserShortModel(criteriaWeightsVM.UserId, GetUserNameFromClaim()));

                var ctx2 = GlobalHost.ConnectionManager.GetHubContext <NotificationHub>();
                ctx2.Clients.All.updateActivity(criteriaWeightsVM.Issue.Id, criteriaWeightsVM.UserId);
            }
            else if (criteriaWeightsVM.Issue.Setting == "B")
            {
                icw.SavePCCriteria(criteriaWeightsVM.PCCriteria, criteriaWeightsVM.UserId, GetUserNameFromClaim());
            }

            return(View(criteriaWeightsVM));
        }
Example #4
0
        public bool SaveCriteriaWeightsAHP(int issueId, List <PairwiseComparisonCriterionModel> list)
        {
            int    userId   = GetUserIdFromClaim();
            string userName = GetUserNameFromClaim();
            IssueCriterionWeight        icw    = new IssueCriterionWeight();
            List <CriterionWeightModel> cwList = icw.SavePCCriteria(list, userId, userName);

            var context = GlobalHost.ConnectionManager.GetHubContext <NotificationHub>();

            context.Clients.All.updateCriteriaWeights(cwList, new UserShortModel(userId, userName));

            var ctx2 = GlobalHost.ConnectionManager.GetHubContext <NotificationHub>();

            ctx2.Clients.All.updateActivity(issueId, userId);

            if (cwList.Count == 0)
            {
                return(false);
            }
            else
            {
                return(true);
            }
        }