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 void AddParameterValues(SqlCommand storedProcedure, ModeratorDO moderatorDO)
 {
     storedProcedure.Parameters.AddWithValue("@Name", moderatorDO.Name);
     storedProcedure.Parameters.AddWithValue("@ChemicalFormula", (object)moderatorDO.ChemicalFormula ?? DBNull.Value);
     storedProcedure.Parameters.AddWithValue("@Nucleus", moderatorDO.Nucleus);
     storedProcedure.Parameters.AddWithValue("@AtomicMass", moderatorDO.AtomicMass);
     storedProcedure.Parameters.AddWithValue("@EnergyDecrement", (moderatorDO.EnergyDecrement != 0) ? (object)moderatorDO.EnergyDecrement : DBNull.Value);
     storedProcedure.Parameters.AddWithValue("@NumberOfCollisions", (moderatorDO.Collisions != 0) ? (object)moderatorDO.Collisions : DBNull.Value);
     storedProcedure.Parameters.AddWithValue("@ScatteringXS", (moderatorDO.ScatteringXS != 0) ? (object)moderatorDO.ScatteringXS : DBNull.Value);
     storedProcedure.Parameters.AddWithValue("@AbsorptionXS", (moderatorDO.AbsorptionXS != 0) ? (object)moderatorDO.AbsorptionXS : DBNull.Value);
     storedProcedure.Parameters.AddWithValue("@Efficiency", (moderatorDO.ModerationEfficiency != 0) ? (object)moderatorDO.ModerationEfficiency : DBNull.Value);
 }
        public ModeratorDO ObtainModeratorByID(int id)
        {
            ModeratorDO    moderatorDO         = null;
            SqlConnection  connectionToSql     = null;
            SqlCommand     obtainModeratorInfo = null;
            SqlDataAdapter adapter             = null;
            DataTable      moderatorInfo       = new DataTable();

            try
            {
                connectionToSql                 = new SqlConnection(_connectionString);
                obtainModeratorInfo             = new SqlCommand("OBTAIN_MODERATOR_BY_ID", connectionToSql);
                obtainModeratorInfo.CommandType = CommandType.StoredProcedure;
                obtainModeratorInfo.Parameters.AddWithValue("@ModeratorID", id);

                connectionToSql.Open();

                adapter = new SqlDataAdapter(obtainModeratorInfo);
                adapter.Fill(moderatorInfo);

                if (moderatorInfo.Rows.Count > 0)
                {
                    DataRow row = moderatorInfo.Rows[0];
                    moderatorDO = Mapping.Mapper.ModeratorTableRowToDO(row);
                }
                else
                {
                    _logger.LogMessage("Warning",
                                       "Queried ID not found",
                                       MethodBase.GetCurrentMethod().ToString(),
                                       "Did not create moderatorDO. No rows found in moderatorInfo table.");
                }
            }
            catch (Exception ex)
            {
                _logger.LogMessage(ex, "Fatal");
                throw ex;
            }
            finally
            {
                if (connectionToSql != null)
                {
                    connectionToSql.Close();
                    connectionToSql.Dispose();
                }
                if (adapter != null)
                {
                    adapter.Dispose();
                }
            }
            return(moderatorDO);
        }
        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);
        }
        public void UpdateModerator(ModeratorDO moderatorDO)
        {
            int           rowsAffected    = 0;
            SqlConnection connectionToSql = null;
            SqlCommand    updateModerator = null;

            try
            {
                _logger.LogMessage("Info", "Update Moderator start", MethodBase.GetCurrentMethod().ToString(),
                                   "Request to update moderator with ID #" + moderatorDO.ModeratorID + " received.");
                _logger.LogMessage("Instantiating SQL connection from connection string.");
                connectionToSql = new SqlConnection(_connectionString);
                _logger.LogMessage("Instantiating SQL command for stored procedure.");
                updateModerator             = new SqlCommand("UPDATE_MODERATOR", connectionToSql);
                updateModerator.CommandType = CommandType.StoredProcedure;

                _logger.LogMessage("Adding parameters to stored procedure.");
                updateModerator.Parameters.AddWithValue("@ModeratorID", moderatorDO.ModeratorID);
                AddParameterValues(updateModerator, moderatorDO);

                _logger.LogMessage("Opening SQL connection.");
                connectionToSql.Open();
                rowsAffected = updateModerator.ExecuteNonQuery();
                if (rowsAffected > 0)
                {
                    _logger.LogMessage("Info", "Nonquery completed", MethodBase.GetCurrentMethod().ToString(),
                                       "Moderator information was updated.");
                }
                else
                {
                    _logger.LogMessage("Warning", "No rows affected in nonquery", MethodBase.GetCurrentMethod().ToString(),
                                       "Moderator information was not updated.");
                }
            }
            catch (Exception ex)
            {
                _logger.LogMessage(ex, "Fatal");
                throw ex;
            }
            finally
            {
                if (connectionToSql != null)
                {
                    connectionToSql.Close();
                    connectionToSql.Dispose();
                }
            }
        }
        public int AddNewModerator(ModeratorDO moderatorDO)
        {
            int           rowsAffected    = 0;
            SqlConnection connectionToSql = null;
            SqlCommand    addModerator    = null;

            try
            {
                _logger.LogMessage("Info", "Add New Moderator start", MethodBase.GetCurrentMethod().ToString(),
                                   "Request to add new moderator to database received.");
                _logger.LogMessage("Instantiating SQL connection from connection string.");
                connectionToSql = new SqlConnection(_connectionString);
                _logger.LogMessage("Instantiating SQL command for stored procedure.");
                addModerator             = new SqlCommand("ADD_NEW_MODERATOR", connectionToSql);
                addModerator.CommandType = CommandType.StoredProcedure;

                _logger.LogMessage("Adding parameters to stored procedure.");
                AddParameterValues(addModerator, moderatorDO);

                _logger.LogMessage("Opening SQL connection.");
                connectionToSql.Open();
                rowsAffected = addModerator.ExecuteNonQuery();
                if (rowsAffected > 0)
                {
                    _logger.LogMessage("Info", "Nonquery completed", MethodBase.GetCurrentMethod().ToString(),
                                       "New moderator information was added to the database.");
                }
                else
                {
                    _logger.LogMessage("Warning", "No rows affected in nonquery", MethodBase.GetCurrentMethod().ToString(),
                                       "Moderator information was not added to the database.");
                }
            }
            catch (Exception ex)
            {
                _logger.LogMessage(ex, "Fatal");
                throw ex;
            }
            finally
            {
                if (connectionToSql != null)
                {
                    connectionToSql.Close();
                    connectionToSql.Dispose();
                }
            }
            return(rowsAffected);
        }
Ejemplo n.º 8
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);
        }
Ejemplo n.º 9
0
        public static ModeratorDO ModeratorTableRowToDO(DataRow row)
        {
            ModeratorDO moderatorDO = new ModeratorDO();

            moderatorDO.ModeratorID          = int.Parse(row["ModeratorID"].ToString());
            moderatorDO.Name                 = row["Name"].ToString().Trim();
            moderatorDO.ChemicalFormula      = row["ChemicalFormula"].ToString().Trim();
            moderatorDO.Nucleus              = row["Nucleus"].ToString().Trim();
            moderatorDO.AtomicMass           = (int.TryParse(row["AtomicMass"].ToString(), out int atomicMass) ? atomicMass : default(int));
            moderatorDO.EnergyDecrement      = (float.TryParse(row["EnergyDecrement"].ToString(), out float energyDecrement) ? energyDecrement : default(float));
            moderatorDO.Collisions           = (int.TryParse(row["NumberOfCollisions"].ToString(), out int collisions) ? collisions : default(int));
            moderatorDO.ScatteringXS         = (float.TryParse(row["ScatteringXS"].ToString(), out float sigmaS) ? sigmaS : default(float));
            moderatorDO.AbsorptionXS         = (float.TryParse(row["AbsorptionXS"].ToString(), out float sigmaA) ? sigmaA : default(float));
            moderatorDO.ModerationEfficiency = (float.TryParse(row["Efficiency"].ToString(), out float efficiency) ? efficiency : default(float));
            return(moderatorDO);
        }
        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));
        }
        public List <ModeratorDO> ObtainAllModerators()
        {
            List <ModeratorDO> moderatorList    = new List <ModeratorDO>();
            SqlConnection      connectionToSql  = null;
            SqlCommand         obtainModerators = null;
            SqlDataAdapter     adapter          = null;
            DataTable          moderatorsTable  = new DataTable();

            try
            {
                connectionToSql              = new SqlConnection(_connectionString);
                obtainModerators             = new SqlCommand("OBTAIN_MODERATORS", connectionToSql);
                obtainModerators.CommandType = CommandType.StoredProcedure;

                connectionToSql.Open();
                adapter = new SqlDataAdapter(obtainModerators);
                adapter.Fill(moderatorsTable);

                foreach (DataRow row in moderatorsTable.Rows)
                {
                    ModeratorDO moderatorDO = Mapping.Mapper.ModeratorTableRowToDO(row);
                    moderatorList.Add(moderatorDO);
                }
            }
            catch (Exception ex)
            {
                _logger.LogMessage(ex, "Fatal");
                throw ex;
            }
            finally
            {
                if (connectionToSql != null)
                {
                    connectionToSql.Close();
                    connectionToSql.Dispose();
                }
                if (adapter != null)
                {
                    adapter.Dispose();
                }
            }
            return(moderatorList);
        }