public ModeratorPO CalculationHandler(ModeratorPO form)
        {
            _logger.LogMessage("Calculating Energy Decrement per collision.");
            form.EnergyDecrement = (float)_moderatorBLO.CalculateEnergyDecrement(form.AtomicMass);
            if (form.EnergyDecrement != 0)
            {
                _logger.LogMessage("Calculating number of collisions to thermalize fission neutrons.");
                form.Collisions = _moderatorBLO.CalculateCollisions(form.EnergyDecrement);

                if (form.ScatteringXS != 0 && form.AbsorptionXS != 0)
                {
                    _logger.LogMessage("Calculating Moderation Efficiency.");
                    form.ModerationEfficiency =
                        _moderatorBLO.CalculateModerationEfficiency(form.EnergyDecrement, form.ScatteringXS, form.AbsorptionXS);
                }
                else
                {
                    _logger.LogMessage("Scattering or Absorption cross section not provided. " +
                                       "Did not calculate Moderation Efficiency.");
                }
            }
            else
            {
                _logger.LogMessage("Warning", "Energy Decrement 0", MethodBase.GetCurrentMethod().ToString(),
                                   "Possible error in energy decrement calculation. " +
                                   "Did not calculate Collisions or Moderation Efficiency.");
            }
            return(form);
        }
        public ActionResult ModeratorDetails(int id)
        {
            ActionResult response = null;

            try
            {
                ModeratorDO moderatorDO = _moderatorDAO.ObtainModeratorByID(id);
                if (moderatorDO != null)
                {
                    _logger.LogMessage("Info", "Moderator Details", MethodBase.GetCurrentMethod().ToString(),
                                       "User request to view details of moderator with ID #" + id + " is valid.");
                    ModeratorPO moderatorPO = Mapping.Mapper.ModeratorDOtoPO(moderatorDO);
                    response = View(moderatorPO);
                }
                else
                {
                    _logger.LogMessage("Warning", "Page not found", MethodBase.GetCurrentMethod().ToString(),
                                       "User attempted to navigate to ModeratorDetails 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 moderator list.";
                    response = RedirectToAction("Index");
                }
            }
            catch (Exception ex)
            {
                _logger.LogMessage(ex, "Fatal");
            }
            finally { }
            return(response);
        }
        public ActionResult UpdateModerator(ModeratorPO form)
        {
            ActionResult response = null;

            try
            {
                _logger.LogMessage("Info", "Update Moderator Post", MethodBase.GetCurrentMethod().ToString(),
                                   "Request to update information for moderator with ID #" + form.ModeratorID + " received.");
                if (ModelState.IsValid)
                {
                    _logger.LogMessage("Info", "Model State check passed", MethodBase.GetCurrentMethod().ToString(),
                                       "ModeratorPO form model state is valid.");
                    form = CalculationHandler(form);
                    _logger.LogMessage("Attempting to map Moderator PO to DO.");
                    ModeratorDO moderatorDO = Mapping.Mapper.ModeratorPOtoDO(form);
                    _moderatorDAO.UpdateModerator(moderatorDO);

                    TempData["updateModerator"] = "Moderator information updated.";
                    response = RedirectToAction("ModeratorDetails", "Moderator", new { id = form.ModeratorID });
                }
                else
                {
                    _logger.LogMessage("Warning", "Model State check failed", MethodBase.GetCurrentMethod().ToString(),
                                       "ModeratorPO form model state was not valid. Returning user to View.");
                    response = View(form);
                }
            }
            catch (Exception ex)
            {
                _logger.LogMessage(ex, "Fatal");
            }
            finally { }
            return(response);
        }
        public ActionResult AddModerator(ModeratorPO form)
        {
            ActionResult response = null;
            int          rowsAffected;

            try
            {
                _logger.LogMessage("Info", "Add Moderator Post request", MethodBase.GetCurrentMethod().ToString(),
                                   "Request to add Moderator information received.");
                if (ModelState.IsValid)
                {
                    _logger.LogMessage("Info", "Model State check passed", MethodBase.GetCurrentMethod().ToString(),
                                       "ModeratorPO form model state is valid.");
                    form = CalculationHandler(form);

                    _logger.LogMessage("Attempting to map Moderator PO to DO.");
                    ModeratorDO moderatorDO = Mapping.Mapper.ModeratorPOtoDO(form);
                    rowsAffected = _moderatorDAO.AddNewModerator(moderatorDO);

                    if (rowsAffected > 0)
                    {
                        _logger.LogMessage("Info", "New moderator information added", MethodBase.GetCurrentMethod().ToString(),
                                           form.Name + " moderator was added to database.");
                        TempData["addNew"] = "Moderator added to database successfully.";
                    }
                    else
                    {
                        _logger.LogMessage("Warning", "Add Moderator attempt failed", MethodBase.GetCurrentMethod().ToString(),
                                           "Attempt to add new moderator ("
                                           + form.Name + ") showed no database rows affected.");
                        TempData["addNew"] = "Failed to add new moderator to the database.";
                    }
                    response = RedirectToAction("Index");
                }
                else
                {
                    _logger.LogMessage("Warning", "Model State check failed", MethodBase.GetCurrentMethod().ToString(),
                                       "ModeratorPO form model state was not valid. Returning user to View.");
                    response = View(form);
                }
            }
            catch (Exception ex)
            {
                _logger.LogMessage(ex, "Fatal");
            }
            finally { }

            return(response);
        }
Exemplo n.º 5
0
        public static ModeratorPO ModeratorDOtoPO(ModeratorDO from)
        {
            ModeratorPO to = new ModeratorPO();

            to.ModeratorID          = from.ModeratorID;
            to.Name                 = from.Name;
            to.ChemicalFormula      = from.ChemicalFormula;
            to.Nucleus              = from.Nucleus;
            to.AtomicMass           = from.AtomicMass;
            to.EnergyDecrement      = from.EnergyDecrement;
            to.Collisions           = from.Collisions;
            to.ScatteringXS         = from.ScatteringXS;
            to.AbsorptionXS         = from.AbsorptionXS;
            to.ModerationEfficiency = from.ModerationEfficiency;
            return(to);
        }
        public ActionResult AddModerator()
        {
            try
            {
                _logger.LogMessage("Info", "Add Moderator Get request", MethodBase.GetCurrentMethod().ToString(),
                                   "Request to view Add Moderator form received.");
            }
            catch (Exception ex)
            {
                _logger.LogMessage(ex, "Fatal");
            }
            finally { }

            ModeratorPO form = new ModeratorPO();

            return(View(form));
        }
        public ActionResult UpdateModerator(int id)
        {
            ModeratorPO form = new ModeratorPO();

            try
            {
                _logger.LogMessage("Info", "Update Moderator Get request", MethodBase.GetCurrentMethod().ToString(),
                                   "Request for update form for moderator with ID#" + id + " received.");
                ModeratorDO moderatorDO = _moderatorDAO.ObtainModeratorByID(id);
                form = Mapping.Mapper.ModeratorDOtoPO(moderatorDO);
            }
            catch (Exception ex)
            {
                _logger.LogMessage(ex, "Fatal");
            }
            finally { }
            return(View(form));
        }
        // GET: Moderator
        public ActionResult Index()
        {
            List <ModeratorPO> moderatorPOList = new List <ModeratorPO>();

            try
            {
                List <ModeratorDO> moderatorDOList = _moderatorDAO.ObtainAllModerators();
                foreach (ModeratorDO moderatorDO in moderatorDOList)
                {
                    ModeratorPO moderatorPO = Mapping.Mapper.ModeratorDOtoPO(moderatorDO);
                    moderatorPOList.Add(moderatorPO);
                }
            }
            catch (Exception ex)
            {
                _logger.LogMessage(ex, "Fatal");
            }
            finally { }
            return(View(moderatorPOList));
        }
 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 { }
 }