Exemple #1
0
        public List <MultipleVoteItem> GetMultiVoteItems()
        {
            var builder = new MultiVoteTicketBuilder();
            var items   = Context.MultipleVotes
                          .Include("Candidate").Include("Candidate.Job")
                          .Select(builder.GetModel).Where(x => !x.IsWriteIn).ToList();

            return(items);
        }
Exemple #2
0
        public List <MultipleVoteItem> GetMultiVoteItemsByIds(List <Guid?> ids)
        {
            var builder = new MultiVoteTicketBuilder();
            var items   = Context.MultipleVotes
                          .Include("Candidate").Include("Candidate.Job")
                          .Select(builder.GetModel).ToList();

            items = items.Where(x => ids.Contains(x.MultipleVoteItemId)).ToList();
            return(items);
        }
Exemple #3
0
        public List <VoteResult> AddMultiVoteWriteInToElection(List <VoteResult> electionResults, MultipleVoteItem voteItem, Guid ballotId, MultipleVoteItem existingVoteItem)
        {
            var multiVote = CheckForExistingCandidate(voteItem, existingVoteItem);

            var multiVoteId = Context.MultipleVotes.FirstOrDefault(x => x.CandidateId == multiVote.CandidateId);

            if (multiVoteId == null)
            {
                var builder       = new MultiVoteTicketBuilder();
                var multiVoteItem = new MultipleVoteItem()
                {
                    MultipleVoteItemId = Guid.NewGuid(),
                    CandidateItem      = new CandidateItem()
                    {
                        CandidateId = Guid.NewGuid(),
                        Name        = voteItem.CandidateItem.Name,
                        JobId       = existingVoteItem.CandidateItem.JobId
                    },
                    IsWriteIn = true
                };

                Context.MultipleVotes.Add(builder.GetEntity(multiVoteItem));
                Context.SaveChanges();

                electionResults.Add(new VoteResult
                {
                    VoteResultsId  = Guid.NewGuid(),
                    BallotId       = ballotId,
                    MultipleVoteId = multiVoteItem.MultipleVoteItemId,
                    VotedFor       = voteItem.VotedFor,
                });
            }
            else
            {
                electionResults.Add(new VoteResult
                {
                    VoteResultsId  = Guid.NewGuid(),
                    BallotId       = ballotId,
                    MultipleVoteId = multiVoteId.MultipleVoteId,
                    VotedFor       = voteItem.VotedFor,
                });
            }



            return(electionResults);
        }