public ActionResult EditOfficialTerm(OfficialTerm term) { try { if (term.StartYear >= (int)term.EndYear) { TempData["alert-type"] = "alert-warning"; TempData["alert-header"] = "Warning"; TempData["alert-msg"] = "The start year cannot be identical and greater than the end year."; return(RedirectToAction("EditOfficialTerm")); } entities.Entry(term).State = System.Data.Entity.EntityState.Modified; entities.SaveChanges(); // Audit Trail string userId = User.Identity.GetUserId(); string endYear = term.EndYear.ToString(); new AuditTrailer().Record("End year of an official term is set to " + endYear + ".", AuditTrailer.BARANGAY_OFFICIAL_TYPE, userId); TempData["alert-type"] = "alert-success"; TempData["alert-header"] = "Success"; TempData["alert-msg"] = "The end year of the current was successfully updated."; return(RedirectToAction("OfficialsChart")); } catch (Exception e) { TempData["alert-type"] = "alert-danger"; TempData["alert-header"] = "Error"; TempData["alert-msg"] = "Something went wrong, please try again later."; return(View()); } }
public ActionResult ElectCouncilors() { try { TempData["user-profile-photo"] = UserHelper.GetDisplayPicture(User.Identity.GetUserId(), entities); // obtain the record that has a null end year, meaning that is the latest term. OfficialTerm officialTerm = entities.OfficialTerms.Where(m => m.EndYear == null).FirstOrDefault(); BarangayChairman chairman = entities.BarangayChairmen.Where(m => m.OfficialTermId == officialTerm.OfficialTermId).FirstOrDefault(); BarangayCounselor chairmanCouncelor = entities.BarangayCounselors.Where(m => m.ChairmanId == chairman.ChairmanId).FirstOrDefault(); if (chairmanCouncelor != null) { TempData["alert-type"] = "alert-warning"; TempData["alert-header"] = "Warning"; TempData["alert-msg"] = "The current Chairman already has its councilors."; return(RedirectToAction("Index", "Dashboard")); } // Verify first if skChairman has already elected councilors // update the view, display the current councilors TempData["ChairmanFN"] = chairman.ResidentsInformation.FirstName; TempData["ChairmanMN"] = chairman.ResidentsInformation.MiddleName; TempData["ChairmanLN"] = chairman.ResidentsInformation.LastName; List <string> skCouncilorsId = chairman.SKChairman.SKCouncelors.Select(m => m.ResidentId).ToList(); int legalYear = DateTime.Now.Date.Year - 18; int day = DateTime.Now.Date.Day; int month = DateTime.Now.Month; var residents = entities.ResidentsInformations .Where(m => m.Birthday <= new DateTime(legalYear, month, day) && m.ResidentId != chairman.ResidentId && !skCouncilorsId.Contains(m.ResidentId) && m.ResidentId != chairman.SKChairman.ResidentId) .ToList(); return(View(residents)); } catch (Exception e) { TempData["alert-type"] = "alert-danger"; TempData["alert-header"] = "Error"; TempData["alert-msg"] = "Something went wrong, please try again later."; return(View()); } }
public ActionResult AssignSpecialOfficials() { try { TempData["user-profile-photo"] = UserHelper.GetDisplayPicture(User.Identity.GetUserId(), entities); OfficialTerm term = null; term = entities.OfficialTerms.Where(m => m.EndYear == null).FirstOrDefault(); // if there is no null endyear record, then retrieve the highest end year. It is the latest record if (term == null) { term = entities.OfficialTerms.OrderByDescending(m => m.EndYear).FirstOrDefault(); } BarangayChairman chairman = entities.BarangayChairmen.Where(m => m.OfficialTermId == term.OfficialTermId).FirstOrDefault(); string chairmanId = chairman.ResidentId; List <string> councelorIds = chairman.BarangayCounselors.Select(m => m.ResidentId).ToList(); string skChairmanId = chairman.SKChairman.ResidentId; List <string> skCouncelorIds = chairman.SKChairman.SKCouncelors.Select(m => m.ResidentId).ToList(); List <string> specialPos = chairman.AssignedOfficials.Select(m => m.ResidentId).ToList(); TempData["Positions"] = entities.AssignedPositions.ToList(); int legalYear = DateTime.Now.Date.Year - 18; int day = DateTime.Now.Date.Day; int month = DateTime.Now.Month; var residents = entities.ResidentsInformations .Where(m => m.Birthday <= new DateTime(legalYear, month, day) && m.ResidentId != chairmanId && !councelorIds.Contains(m.ResidentId) && m.ResidentId != skChairmanId && !skCouncelorIds.Contains(m.ResidentId) && !specialPos.Contains(m.ResidentId)) .ToList(); return(View(residents)); } catch (Exception e) { TempData["alert-type"] = "alert-danger"; TempData["alert-header"] = "Error"; TempData["alert-msg"] = "Something went wrong, please try again later." + e.ToString(); return(View()); } }
/* * A post method, but is only triggered by a button not a form. */ public ActionResult ElectBrgyCaptain(string residentId) { try { OfficialTerm newTerm = new OfficialTerm() { OfficialTermId = KeyGenerator.GenerateId(), StartYear = (int)DateTime.Now.Year }; entities.OfficialTerms.Add(newTerm); entities.SaveChanges(); // Get the newly elected SK Chairman, The record that is not in the BarangayCaptainTable means its the new record List <string> SK = entities.BarangayChairmen.Select(m => m.SKChairmanId).ToList(); SKChairman skChairman = entities.SKChairmen.Where(m => !SK.Contains(m.SKChairmanId)).FirstOrDefault(); // Now, elect the barangay Chairman BarangayChairman barangayCaptain = new BarangayChairman() { ChairmanId = KeyGenerator.GenerateId(residentId), OfficialTermId = newTerm.OfficialTermId, ResidentId = residentId, SKChairmanId = skChairman.SKChairmanId, }; entities.BarangayChairmen.Add(barangayCaptain); entities.SaveChanges(); // Audit Trail string userId = User.Identity.GetUserId(); ResidentsInformation tempResInfo = entities.ResidentsInformations.Where(m => m.ResidentId == residentId).FirstOrDefault(); new AuditTrailer().Record("Elected " + tempResInfo.FirstName + " " + tempResInfo.LastName + " as Barangay Chairman.", AuditTrailer.BARANGAY_OFFICIAL_TYPE, userId); TempData["alert-type"] = "alert-success"; TempData["alert-header"] = "Success"; TempData["alert-msg"] = tempResInfo.FirstName + " " + tempResInfo.LastName + " was elected successfully as the Sinisian Barangay."; return(RedirectToAction("ElectCouncilors")); } catch (Exception e) { TempData["alert-type"] = "alert-danger"; TempData["alert-header"] = "Error"; TempData["alert-msg"] = "Unable to elect Barangay Captain, please try again later " + e.Message; return(RedirectToAction("ElectCaptain")); } }
public ActionResult ElectCouncilors(string[] residentIds) { try { if (residentIds == null) { TempData["alert-type"] = "alert-warning"; TempData["alert-header"] = "Warning"; TempData["alert-msg"] = "It appears that you have not selected any residents as Councilors."; return(RedirectToAction("ElectCouncilors")); } if (residentIds.Length < BARANGAY_COUNCELOR_MAX_OFFICIAL || residentIds.Length > BARANGAY_COUNCELOR_MAX_OFFICIAL) { TempData["alert-type"] = "alert-warning"; TempData["alert-header"] = "Warning"; TempData["alert-msg"] = "Elected councilors needs to be " + BARANGAY_COUNCELOR_MAX_OFFICIAL + "."; return(RedirectToAction("ElectCouncilors")); } // obtain the record that has a null end year, meaning that is the latest term. OfficialTerm officialTerm = entities.OfficialTerms.Where(m => m.EndYear == null).FirstOrDefault(); BarangayChairman chairman = entities.BarangayChairmen.Where(m => m.OfficialTermId == officialTerm.OfficialTermId).FirstOrDefault(); //Audit Trail string userId = User.Identity.GetUserId(); for (int i = 0; i < residentIds.Length; i++) { entities.BarangayCounselors.Add(new BarangayCounselor() { BarangayCounselorId = KeyGenerator.GenerateId(residentIds[i]), ResidentId = residentIds[i], ChairmanId = chairman.ChairmanId }); entities.SaveChanges(); //Audit Trail string resId = residentIds[i]; ResidentsInformation tempResInformation = entities.ResidentsInformations.Where(m => m.ResidentId == resId).FirstOrDefault(); new AuditTrailer().Record("Elected " + tempResInformation.FirstName + " " + tempResInformation.LastName + " as Barangay Councelor.", AuditTrailer.BARANGAY_OFFICIAL_TYPE, userId); } List <string> ids = new List <string>(); for (int i = 0; i < residentIds.Length; i++) { ids.Add(residentIds[i]); } TempData["Ids"] = ids; TempData["alert-type"] = "alert-success"; TempData["alert-header"] = "Success"; TempData["alert-msg"] = "New batch of Councilors have been elected."; return(RedirectToAction("Index", "Dashboard")); } catch (Exception e) { TempData["alert-type"] = "alert-danger"; TempData["alert-header"] = "Error"; TempData["alert-msg"] = "Something went wrong, please try again later " + e.Message; return(RedirectToAction("ElectCouncilors")); } }
public ActionResult ElectSKChairman() { try { TempData["user-profile-photo"] = UserHelper.GetDisplayPicture(User.Identity.GetUserId(), entities); // Check first if a barangay captain was elected already // returns the barangaycaptain object that is elected but does not have elected councilors List <BarangayChairman> chairmanWithCouncilors = entities.BarangayCounselors.Select(m => m.BarangayChairman).ToList(); var ids = chairmanWithCouncilors.Select(m => m.ResidentId).ToList(); BarangayChairman chairmanWithNoCouncilors = entities.BarangayChairmen.Where(m => !ids.Contains(m.ResidentId)).FirstOrDefault(); if (chairmanWithNoCouncilors != null) { TempData["alert-type"] = "alert-info"; TempData["alert-header"] = "Information"; TempData["alert-msg"] = "It appears that there is already an elected Barangay Chairman."; return(RedirectToAction("ElectCouncilors")); } if (entities.OfficialTerms.Where(m => m.EndYear == null).FirstOrDefault() != null) { TempData["alert-type"] = "alert-info"; TempData["alert-header"] = "Information"; TempData["alert-msg"] = "It appears that the last recorded official term's end year has not beend updated. Please update the record first before starting election."; return(RedirectToAction("EditOfficialTerm")); } else { OfficialTerm latestTerm = entities.OfficialTerms.OrderByDescending(m => m.EndYear).FirstOrDefault(); if (latestTerm.EndYear != DateTime.Now.Year) { TempData["alert-type"] = "alert-info"; TempData["alert-header"] = "Information"; TempData["alert-msg"] = "It appears that the last recorded official term has not ended yet."; return(RedirectToAction("OfficialsChart")); } } // Get the newly elected SK Chairman, The record that is not in the BarangayCaptainTable means its the new record List <string> SK = entities.BarangayChairmen.Select(m => m.SKChairmanId).ToList(); SKChairman sKChairman = entities.SKChairmen.Where(m => !SK.Contains(m.SKChairmanId)).FirstOrDefault(); if (sKChairman != null) { TempData["alert-type"] = "alert-info"; TempData["alert-header"] = "Information"; TempData["alert-msg"] = "It appears that you have already elected an SK Chairman."; return(RedirectToAction("ElectSKCouncilors")); } int legalYear = DateTime.Now.Date.Year - 18; int day = DateTime.Now.Date.Day; int month = DateTime.Now.Month; var residents = entities.ResidentsInformations.Where(m => m.Birthday <= new DateTime(legalYear, month, day)).ToList(); return(View(residents)); } catch (Exception e) { TempData["alert-type"] = "alert-danger"; TempData["alert-header"] = "Error"; TempData["alert-msg"] = "Something went wrong, please try again later."; return(View()); } }