/// <summary> /// Creator: Jordan Lindo /// Created: 3//2020 /// Approver: Chase Schulte /// /// Inserts a base scchedule and deacitveats the old schedule /// </summary> /// <remarks> /// Updater: NA /// Updated: NA /// Update: NA /// </remarks> /// <param name="baseScheduleVM"></param> /// <returns></returns> public int AddBaseSchedule(BaseScheduleVM baseScheduleVM) { int result = 0; bool goodCount = true; foreach (BaseScheduleLine line in baseScheduleVM.BaseScheduleLines) { if (goodCount && line.Count < 0) { goodCount = false; } } try { if (goodCount) { result = _baseScheduleAccessor.InsertBaseScheduleVM(baseScheduleVM); } else { throw new ApplicationException("A count entered is invalid"); } } catch (Exception ex) { throw new ApplicationException("Base Schedule not added.", ex); } return(result); }
public void AddBaseScheduleTestGood() { IBaseScheduleManager baseScheduleManager = new BaseScheduleManager(_baseScheduleAccessor); BaseScheduleVM goodVM = new BaseScheduleVM() { Active = true, BaseScheduleID = 1000001, CreatingUserID = 100000, CreationDate = DateTime.Now, BaseScheduleLines = new List <BaseScheduleLine>() { new BaseScheduleLine() { BaseScheduleID = 1000001, DepartmentID = "Management", ERoleID = "Manager", ShiftTimeID = 1000000, Count = 1 }, new BaseScheduleLine() { BaseScheduleID = 1000001, DepartmentID = "Sales", ERoleID = "Cashier", ShiftTimeID = 1000004, Count = 6 } } }; int result = baseScheduleManager.AddBaseSchedule(goodVM); Assert.AreEqual(true, (result != 0)); }
/// <summary> /// Creator: Jordan Lindo /// Created: 3/17/2020 /// Approver: Chase Schulte /// /// Fake insert /// </summary> /// <remarks> /// Updater: Zach Behrensmeyer /// Updated: 4/9/2020 /// Update: Added if else block and result value to logic /// /// </remarks> /// <param name="baseScheduleVM"></param> /// <returns></returns> public int InsertBaseScheduleVM(BaseScheduleVM baseScheduleVM) { int result = 0; if (baseScheduleVM != null) { _baseSchedules.Add(baseScheduleVM); result = 1; } else { throw new ApplicationException("Could not insert data"); } return(result); }
/// <summary> /// Creator: Jordan Lindo /// Created: 4/8/2020 /// Approver: /// /// Gets the current base schedule. /// </summary> /// <remarks> /// Updater: NA /// Updated: NA /// Update: NA /// /// </remarks> private void getBaseSchedule() { try { _baseScheduleVM = _baseScheduleManager.GetActiveBaseSchedule(); if (_baseScheduleVM == null) { throw new ApplicationException("No base schedule stored. Please set one."); } } catch (Exception ex) { WPFErrorHandler.ErrorMessage("Data not found. " + ex.Message); } }
/// <summary> /// Creator: Jordan Lindo /// Created: 3/18/2020 /// Approver: Chase Schulte /// /// This is a method gets the active base schedule. /// </summary> /// <remarks> /// Updater: NA /// Updated: NA /// Update: NA /// /// </remarks> private void getBaseScheduleVM() { try { _baseScheduleVM = _baseScheduleManager.GetActiveBaseSchedule(); if (null != _baseScheduleVM) { _lines = _baseScheduleVM.BaseScheduleLines; } } catch (Exception ex) { WPFErrorHandler.ErrorMessage("Data not found.", ex.Message); } }
/// <summary> /// Creator: Jordan Lindo /// Created: 3/15/2020 /// Approver: Chase Schulte /// /// Retrieves the active base schedule. /// </summary> /// <remarks> /// Updater: NA /// Updated: NA /// Update: NA /// /// </remarks> /// <returns></returns> public BaseScheduleVM RetrieveActiveBaseSchedule() { BaseScheduleVM baseScheduleVM = null; var conn = DBConnection.GetConnection(); var cmd = new SqlCommand("sp_select_active_baseschedule", conn); cmd.CommandType = CommandType.StoredProcedure; try { conn.Open(); var reader = cmd.ExecuteReader(); while (reader.Read()) { baseScheduleVM = new BaseScheduleVM() { BaseScheduleID = reader.GetInt32(0), CreatingUserID = reader.GetInt32(1), CreationDate = reader.GetDateTime(2), Active = reader.GetBoolean(3) }; } if (null != baseScheduleVM) { baseScheduleVM.BaseScheduleLines = RetrieveBaseScheduleLinesByBaseScheduleID(baseScheduleVM.BaseScheduleID); } } catch (Exception) { throw; } finally { conn.Close(); } return(baseScheduleVM); }
/// <summary> /// Creator: Jordan Lindo /// Created: 4/1/2020 /// Approver: Chase Schulte /// /// This stores the changes in the data store. /// </summary> /// <remarks> /// Updater: /// Updated: /// Update: /// /// </remarks> /// <param name="sender"></param> /// <param name="e"></param> private void btnSetBaseSchedule_Click(object sender, RoutedEventArgs e) { BaseScheduleVM newBaseScheduleVM = new BaseScheduleVM { BaseScheduleLines = _newLines, CreatingUserID = _user.PUUserID, CreationDate = DateTime.Now }; try { _baseScheduleManager.AddBaseSchedule(newBaseScheduleVM); getBaseScheduleVM(); WPFErrorHandler.SuccessMessage("Base Schedule Added."); setNewLines(); setDataGird(); } catch (Exception ex) { WPFErrorHandler.ErrorMessage("Schedule not added. " + ex.Message); } }
public void GetActiveBaseSchedule() { IBaseScheduleManager baseScheduleManager = new BaseScheduleManager(_baseScheduleAccessor); BaseScheduleVM vM = new BaseScheduleVM() { Active = true, BaseScheduleID = 1000000, CreatingUserID = 100000, CreationDate = DateTime.Parse("2020-01-03") }; bool success = false; BaseScheduleVM otherVM = baseScheduleManager.GetActiveBaseSchedule(); if (vM.BaseScheduleID == otherVM.BaseScheduleID && vM.CreatingUserID == otherVM.CreatingUserID && vM.CreationDate.Equals(otherVM.CreationDate)) { success = true; } Assert.AreEqual(true, success); }
/// <summary> /// Creator: Jordan Lindo /// Created: 3/15/2020 /// Approver: Chase Schulte /// /// Inserts a new base schedule. /// sp_insert_baseschedule deactivates old base schedules if the insert is /// successfull. /// </summary> /// <remarks> /// Updater: Jordan Lindo /// Updated: 4/1/2020 /// Update: fixed the cast for the return from cmd /// /// </remarks> /// <param name="baseScheduleVM"></param> /// <returns></returns> public int InsertBaseScheduleVM(BaseScheduleVM baseScheduleVM) { var conn = DBConnection.GetConnection(); var cmd = new SqlCommand("sp_insert_baseschedule", conn); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@CreatingUserID", baseScheduleVM.CreatingUserID); cmd.Parameters.AddWithValue("@CreationDate", baseScheduleVM.CreationDate); try { conn.Open(); var result = cmd.ExecuteScalar(); baseScheduleVM.BaseScheduleID = int.Parse(result.ToString()); foreach (var line in baseScheduleVM.BaseScheduleLines) { var cmd2 = new SqlCommand("sp_insert_basescheduleline", conn); cmd2.CommandType = CommandType.StoredProcedure; cmd2.Parameters.AddWithValue("@ERoleID", line.ERoleID); cmd2.Parameters.AddWithValue("@BaseScheduleID", baseScheduleVM.BaseScheduleID); cmd2.Parameters.AddWithValue("@ShiftTimeID", line.ShiftTimeID); cmd2.Parameters.AddWithValue("@Count", line.Count); cmd2.ExecuteNonQuery(); } } catch (Exception) { throw; } finally { conn.Close(); } return(baseScheduleVM.BaseScheduleID); }