Esempio n. 1
0
        public ActionResult Edit(String ConstituencyID)
        {
            AspNetUser aspnetuser = db.AspNetUsers.Where(u => u.UserName.Equals(User.Identity.Name)).First();
            Agent      agent      = aspnetuser.Agent;

            if (agent == null)
            {
                return(RedirectToAction("Edit", "Account", new { ID = aspnetuser.Id }));
            }
            else
            {
                //IEnumerable<CollationEntry> exep;
                //exep = db.CollationEntries.ToList().GroupBy(c => c.ConstituencyID).Select(group => group.First());

                List <SelectListItem> itemConstituencies = new List <SelectListItem>();
                List <SelectListItem> itemPolling        = new List <SelectListItem>();

                //List<vConstituency> lstConst = db.vConstituencies.Where(c => c.RegionID == agent.RegionID).ToList();
                foreach (var cst in db.Constituencies.Where(c => c.District.RegionID == agent.RegionID))
                {
                    itemConstituencies.Add(new SelectListItem {
                        Value = cst.ConstituencyNo, Text = cst.ConstituencyName
                    });
                }

                VoteCollationModelView lstCol = new VoteCollationModelView();

                ViewBag.itemConstituencies = itemConstituencies;
                ViewBag.itemPolling        = itemPolling;
                return(View(lstCol));
            }
        }
Esempio n. 2
0
        public ActionResult Edit(VoteCollationModelView model)
        {
            if (ModelState.IsValid)
            {
                String AgentID = db.AspNetUsers.Where(u => u.UserName.Equals(User.Identity.Name)).First().Agent.UserID;
                List <CollationEntry> check = db.CollationEntries.Where(o => o.PollingStationID == model.PollingStationID).ToList();
                if (check.Count() == 0)
                {
                    CollationEntry NDCEntry = new CollationEntry();
                    NDCEntry.AgentID          = AgentID;
                    NDCEntry.ConstituencyID   = model.ConstituencyID;
                    NDCEntry.DateSend         = DateTime.Now;
                    NDCEntry.PartyID          = db.Parties.Where(c => c.Abrev.Equals("NDC")).FirstOrDefault().ID;
                    NDCEntry.NumberOfVote     = model.NDC;
                    NDCEntry.PollingStationID = model.PollingStationID;



                    CollationEntry NPPEntry = new CollationEntry();
                    NPPEntry.AgentID          = AgentID;
                    NPPEntry.ConstituencyID   = model.ConstituencyID;
                    NPPEntry.DateSend         = DateTime.Now;
                    NPPEntry.PartyID          = db.Parties.Where(c => c.Abrev.Equals("NPP")).FirstOrDefault().ID;
                    NPPEntry.NumberOfVote     = model.NPP;
                    NPPEntry.PollingStationID = model.PollingStationID;

                    CollationEntry CPPEntry = new CollationEntry();
                    CPPEntry.AgentID          = AgentID;
                    CPPEntry.ConstituencyID   = model.ConstituencyID;
                    CPPEntry.DateSend         = DateTime.Now;
                    CPPEntry.PartyID          = db.Parties.Where(c => c.Abrev.Equals("CPP")).FirstOrDefault().ID;
                    CPPEntry.NumberOfVote     = model.CPP;
                    CPPEntry.PollingStationID = model.PollingStationID;

                    CollationEntry PPPEntry = new CollationEntry();
                    PPPEntry.AgentID          = AgentID;
                    PPPEntry.ConstituencyID   = model.ConstituencyID;
                    PPPEntry.DateSend         = DateTime.Now;
                    PPPEntry.PartyID          = db.Parties.Where(c => c.Abrev.Equals("PPP")).FirstOrDefault().ID;
                    PPPEntry.NumberOfVote     = model.PPP;
                    PPPEntry.PollingStationID = model.PollingStationID;

                    CollationEntry OTHERSEntry = new CollationEntry();
                    OTHERSEntry.AgentID          = AgentID;
                    OTHERSEntry.ConstituencyID   = model.ConstituencyID;
                    OTHERSEntry.DateSend         = DateTime.Now;
                    OTHERSEntry.PartyID          = db.Parties.Where(c => c.Abrev.Equals("OTH")).FirstOrDefault().ID;
                    OTHERSEntry.NumberOfVote     = model.OTHERS;
                    OTHERSEntry.PollingStationID = model.PollingStationID;

                    CollationEntry REJECTEDEntry = new CollationEntry();
                    REJECTEDEntry.AgentID          = AgentID;
                    REJECTEDEntry.ConstituencyID   = model.ConstituencyID;
                    REJECTEDEntry.DateSend         = DateTime.Now;
                    REJECTEDEntry.PartyID          = db.Parties.Where(c => c.Abrev.Equals("IRB")).FirstOrDefault().ID;
                    REJECTEDEntry.NumberOfVote     = model.REJECTED;
                    REJECTEDEntry.PollingStationID = model.PollingStationID;

                    db.CollationEntries.Add(NDCEntry);
                    db.CollationEntries.Add(NPPEntry);
                    db.CollationEntries.Add(CPPEntry);
                    db.CollationEntries.Add(PPPEntry);
                    db.CollationEntries.Add(OTHERSEntry);
                    db.CollationEntries.Add(REJECTEDEntry);

                    db.SaveChanges();
                    return(this.RedirectToAction("Index"));
                }
                else
                {
                    throw new HttpException(string.Format("The Polling Station {0} has already posted", db.PollingStations.Find(model.PollingStationID).PollingStationName));
                }
            }
            else
            {
                return(View(model));
            }
        }