コード例 #1
0
ファイル: IssueController.cs プロジェクト: sini87/MApp
        /// <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));
        }
コード例 #2
0
ファイル: IssueController.cs プロジェクト: sini87/MApp
        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));
        }