public ActionResult AddReactor(ReactorPO form) { ActionResult response = null; int rowsAffected; try { _logger.LogMessage("Info", "Add Reactor Post request", MethodBase.GetCurrentMethod().ToString(), "Request to add Reactor information received."); if (ModelState.IsValid) { _logger.LogMessage("Info", "Model State check passed", MethodBase.GetCurrentMethod().ToString(), "ReactorPO form model state is valid."); //If thermal and electric power entered, calculate efficiency with BLO if (form.ThermalPower != 0 && form.ElectricPower != 0) { _logger.LogMessage("Attempting to calculate efficiency."); ReactorBO reactorBO = Mapping.Mapper.ReactorPOtoBO(form); form.Efficiency = _reactorBLO.CalculateEfficiency(reactorBO); } else { _logger.LogMessage("Thermal Power or Electric Power not provided. Did not calculate efficiency."); } _logger.LogMessage("Attempting to map Reactor PO to DO."); ReactorDO reactorDO = Mapping.Mapper.ReactorPOtoDO(form); rowsAffected = _reactorDAO.AddNewReactor(reactorDO); if (rowsAffected > 0) { _logger.LogMessage("Info", "New reactor information added", MethodBase.GetCurrentMethod().ToString(), form.Name + " reactor was added to database."); TempData["addNew"] = "Reactor added successfully."; } else { _logger.LogMessage("Warning", "Add Reactor attempt failed", MethodBase.GetCurrentMethod().ToString(), "Attempt to add new reactor showed no database rows affected."); TempData["addNew"] = "Failed to add new reactor to database."; } response = RedirectToAction("Index"); } else { _logger.LogMessage("Warning", "Model State check failed", MethodBase.GetCurrentMethod().ToString(), "ReactorPO form model state was not valid. Returning user to View."); FillGenerationDropDown(form); FillModeratorDropDown(form); response = View(form); } } catch (Exception ex) { _logger.LogMessage(ex, "Fatal"); } finally { } return(response); }
// GET: Reactor public ActionResult Index() { List <ReactorPO> reactorPOList = new List <ReactorPO>(); try { List <ReactorDO> reactorDOList = _reactorDAO.ObtainAllReactors(); foreach (ReactorDO reactorDO in reactorDOList) { ReactorPO reactorPO = Mapping.Mapper.ReactorDOtoPO(reactorDO); if (reactorPO.ModeratorID != 0) { reactorPO.ModeratorName = _reactorDAO.ObtainModeratorNameByID(reactorPO.ModeratorID); } reactorPOList.Add(reactorPO); } if (Session["ID"] != null) { List <BookmarkDO> bookmarkDOList = _bookmarkDAO.ObtainBookmarksByUserID(int.Parse(Session["ID"].ToString())); if (bookmarkDOList.Count > 0) { List <int> bookmarkReactorIDs = new List <int>(); foreach (BookmarkDO bookmarkDO in bookmarkDOList) { bookmarkReactorIDs.Add(bookmarkDO.ReactorID); } ViewBag.Bookmarks = bookmarkReactorIDs; } else { List <int> emptyList = new List <int>(); ViewBag.Bookmarks = emptyList; } } else { } } catch (Exception ex) { _logger.LogMessage(ex, "Fatal"); } finally { } return(View(reactorPOList)); }
public ActionResult UpdateReactor(ReactorPO form) { ActionResult response = null; try { _logger.LogMessage("Info", "Update Reactor Post", MethodBase.GetCurrentMethod().ToString(), "Request to update information for reactor with ID #" + form.ReactorID + " received."); if (ModelState.IsValid) { _logger.LogMessage("Info", "Model State check passed", MethodBase.GetCurrentMethod().ToString(), "ReactorPO form model state is valid."); if (form.ThermalPower != 0 && form.ElectricPower != 0) { _logger.LogMessage("Attempting to calculate efficiency."); ReactorBO reactorBO = Mapping.Mapper.ReactorPOtoBO(form); form.Efficiency = _reactorBLO.CalculateEfficiency(reactorBO); } else { _logger.LogMessage("Thermal Power or Electric Power not provided. Did not calculate efficiency."); } _reactorDAO.UpdateReactor(Mapping.Mapper.ReactorPOtoDO(form)); TempData["updateReactor"] = "Reactor information updated."; response = RedirectToAction("ReactorDetails", "Reactor", new { id = form.ReactorID }); } else { _logger.LogMessage("Warning", "Model State check failed", MethodBase.GetCurrentMethod().ToString(), "ReactorPO form model state was not valid. Returning user to View."); FillGenerationDropDown(form); FillModeratorDropDown(form); response = View(form); } } catch (Exception ex) { _logger.LogMessage(ex, "Fatal"); } finally { } return(response); }
public ActionResult UpdateReactor(int id) { ReactorPO form = new ReactorPO(); try { _logger.LogMessage("Info", "Update Reactor Get request", MethodBase.GetCurrentMethod().ToString(), "Request for update form for reactor with ID#" + id + " received."); ReactorDO reactorDO = _reactorDAO.ObtainReactorByID(id); form = Mapping.Mapper.ReactorDOtoPO(reactorDO); FillGenerationDropDown(form); FillModeratorDropDown(form); } catch (Exception ex) { Console.WriteLine(ex.Message); } finally { } return(View(form)); }
public ActionResult AddReactor() { try { _logger.LogMessage("Info", "Add Reactor Get request", MethodBase.GetCurrentMethod().ToString(), "Request to view Add Reactor form received."); } catch (Exception ex) { _logger.LogMessage(ex, "Fatal"); } finally { } ReactorPO form = new ReactorPO(); FillGenerationDropDown(form); FillModeratorDropDown(form); return(View(form)); }
public static ReactorPO ReactorDOtoPO(ReactorDO from) { ReactorPO to = new ReactorPO(); to.ReactorID = from.ReactorID; to.Name = from.Name; to.FullName = from.FullName; to.IsThermal = from.IsThermal; to.ModeratorID = from.ModeratorID; to.PrimaryCoolant = from.PrimaryCoolant; to.Fuel = from.Fuel; to.ThermalPower = from.ThermalPower; to.ElectricPower = from.ElectricPower; to.Efficiency = from.Efficiency; to.Year = from.Year; to.Generation = from.Generation; to.CountryOfOrigin = from.CountryOfOrigin; to.NumberActive = from.NumberActive; to.Notes = from.Notes; return(to); }
public void FillGenerationDropDown(ReactorPO form) { form.GenerationDropDown = new List <SelectListItem>(); form.GenerationDropDown.Add(new SelectListItem { Text = "--Select--", Value = "" }); form.GenerationDropDown.Add(new SelectListItem { Text = "I", Value = "I" }); form.GenerationDropDown.Add(new SelectListItem { Text = "II", Value = "II" }); form.GenerationDropDown.Add(new SelectListItem { Text = "III", Value = "III" }); form.GenerationDropDown.Add(new SelectListItem { Text = "IV", Value = "IV" }); form.GenerationDropDown.Add(new SelectListItem { Text = "V", Value = "V" }); }
public ActionResult Index(int userID) { ActionResult response = null; List <BookmarkPO> bookmarks = new List <BookmarkPO>(); try { if (int.TryParse(Session["ID"].ToString(), out int accessorID) && (accessorID == userID || accessorID >= 3)) { List <BookmarkDO> bookmarkDOList = _bookmarkDAO.ObtainBookmarksByUserID(userID); foreach (BookmarkDO bookmarkDO in bookmarkDOList) { BookmarkPO bookmarkPO = Mapping.Mapper.BookmarkDOtoPO(bookmarkDO); ReactorPO reactorPO = Mapping.Mapper.ReactorDOtoPO(_reactorDAO.ObtainReactorByID(bookmarkPO.ReactorID)); if (reactorPO.ModeratorID != 0) { reactorPO.ModeratorName = _reactorDAO.ObtainModeratorNameByID(reactorPO.ModeratorID); } else { } bookmarkPO.ReactorInfo = reactorPO; bookmarks.Add(bookmarkPO); } response = View(bookmarks); } else { TempData["notFound"] = "The page you were looking for could not be found. You have been redirected to the home page."; response = RedirectToAction("Index", "Home"); } } catch (Exception ex) { _logger.LogMessage(ex, "Fatal"); } finally { } return(response); }
public void FillModeratorDropDown(ReactorPO form) { form.ModeratorDropDown = new List <SelectListItem>(); form.ModeratorDropDown.Add(new SelectListItem { Text = "None", Value = "0" }); try { List <ModeratorDO> moderatorDOList = _moderatorDAO.ObtainAllModerators(); foreach (ModeratorDO moderatorDO in moderatorDOList) { ModeratorPO moderatorPO = Mapping.Mapper.ModeratorDOtoPO(moderatorDO); form.ModeratorDropDown.Add(new SelectListItem { Text = moderatorPO.Name, Value = moderatorPO.ModeratorID.ToString() }); } } catch (Exception ex) { _logger.LogMessage(ex, "Fatal"); } finally { } }
public ActionResult ReactorDetails(int id) { ActionResult response = null; try { ReactorDO reactorDO = _reactorDAO.ObtainReactorByID(id); if (reactorDO != null) { _logger.LogMessage("Info", "Reactor Details", MethodBase.GetCurrentMethod().ToString(), "User request to view details of reactor with ID #" + id + " is valid."); ReactorPO reactorPO = Mapping.Mapper.ReactorDOtoPO(reactorDO); if (reactorPO.ModeratorID != 0) { reactorPO.ModeratorName = _reactorDAO.ObtainModeratorNameByID(reactorPO.ModeratorID); } else { } if (Session["ID"] != null) { List <BookmarkDO> bookmarkDOList = _bookmarkDAO.ObtainBookmarksByUserID(int.Parse(Session["ID"].ToString())); if (bookmarkDOList.Count > 0) { List <int> bookmarkReactorIDs = new List <int>(); foreach (BookmarkDO bookmarkDO in bookmarkDOList) { bookmarkReactorIDs.Add(bookmarkDO.ReactorID); } if (bookmarkReactorIDs.Contains(id)) { ViewBag.isBookmarked = true; } else { ViewBag.isBookmarked = false; } } else { ViewBag.isBookmarked = false; } } else { } response = View(reactorPO); } else { _logger.LogMessage("Warning", "Page not found", MethodBase.GetCurrentMethod().ToString(), "User attempted to navigate to ReactorDetails on null ID " + id + ". " + "Redirecting to Index."); TempData["idNotFound"] = "The page you were looking for could not be found." + "You have been returned to the reactor list."; response = RedirectToAction("Index"); } } catch (Exception ex) { _logger.LogMessage(ex, "Fatal"); } finally { } return(response); }