Ejemplo n.º 1
0
        private VoteSummary getVoteSummary(VotingSystemResult votingSystemResult)
        {
            VoteSummary      summary    = new VoteSummary(votingSystemResult.votingSystem.name);
            List <Candidate> winnerList = votingSystemResult.getWinnerList();

            if (winnerList == null || winnerList.Count == 0)
            {
                summary.noWinnerFlag = true;
                return(summary);
            }

            if (winnerList.Count == 1)
            {
                summary.deviation = winnerList.First().voter.position.deviation;
                return(summary);
            }

            double averageDeviation = 0.0;

            foreach (Candidate winner in winnerList)
            {
                averageDeviation += winner.voter.position.deviation;
            }
            averageDeviation /= winnerList.Count;

            summary.deviation = averageDeviation;
            summary.tieFlag   = true;
            return(summary);
        }
Ejemplo n.º 2
0
        public ActionResult Dashboard()
        {
            ViewBag.Votes     = VoteSummary.Get();
            ViewBag.ExecVotes = ExecutiveSummary.Get();
            ViewBag.Overall   = OverallSummary.Get();

            return(View());
        }
Ejemplo n.º 3
0
 private static char getResult(VoteSummary summary)
 {
     if (summary.noWinnerFlag)
     {
         return('N');
     }
     if (summary.tieFlag)
     {
         return('T');
     }
     return(' ');
 }
Ejemplo n.º 4
0
        private void printSummary(VoteSummary summary)
        {
            if (summary.noWinnerFlag)
            {
                System.Console.WriteLine("{0}: No Winner", summary.votingSystemName);
                return;
            }

            if (summary.tieFlag)
            {
                System.Console.WriteLine("{0}: Tie with deviation {1}", summary.votingSystemName, summary.deviation);
                return;
            }

            System.Console.WriteLine("{0}: Winner with deviation {1}", summary.votingSystemName, summary.deviation);
        }