/// <summary> /// Updates the Expense information into the database. /// </summary> /// <param name="expense">An Expense object.</param> private Expense UpdateExpense(Expense expense) { // Business logic. expense.DateModified = DateTime.Now; Console.WriteLine(expense.ToString()); // Persist data. ExpenseDataAccess dac = new ExpenseDataAccess(); try { dac.Update(expense); } catch (Exception ex) { Console.WriteLine(ex.Message); throw ex; } return expense; }
/// <summary> /// Creates a new Expense record in the database. /// </summary> /// <param name="expense">An Expense object.</param> private Expense CreateExpense(Expense expense) { // Business logic. expense.IsCompleted = false; expense.DateSubmitted = DateTime.Now; expense.DateModified = DateTime.Now; Console.WriteLine(expense.ToString()); // Persist data. ExpenseDataAccess dac = new ExpenseDataAccess(); try { return dac.Create(expense); } catch (Exception ex) { Console.WriteLine(ex.Message); throw ex; } }
/// <summary> /// Resets the database to initial state. This should only be done in demos /// and not in real-life. /// </summary> public void Purge() { using (TransactionScope ts = new TransactionScope(TransactionScopeOption.Required)) { try { ExpenseDataAccess dac = new ExpenseDataAccess(); dac.Purge(); ts.Complete(); } catch (Exception ex) { Console.WriteLine(ex.Message); throw ex; } } }
/// <summary> /// Returns a list of Expenses that belongs to an employee. /// </summary> /// <param name="employeeID">An EmployeeID</param> /// <returns>A List of Expenses</returns> public List<Expense> ListExpensesForEmployee(string employeeID) { // Retrieve data. ExpenseDataAccess dac = new ExpenseDataAccess(); try { return dac.SelectForEmployee(employeeID); } catch (Exception ex) { Console.WriteLine(ex.Message); throw ex; } }
/// <summary> /// Returns a list of Expenses that is assigned to a reviewer. /// </summary> /// <param name="reviewerID">A ReviewerID</param> /// <returns>A List of Expenses</returns> public List<Expense> ListExpensesForApproval(string reviewerID) { // Retrieve data. ExpenseDataAccess dac = new ExpenseDataAccess(); try { return dac.SelectForApproval(reviewerID); } catch (Exception ex) { Console.WriteLine(ex.Message); throw ex; } }
public List<Expense> ListActiveExpenses() { // Retrieve data. ExpenseDataAccess dac = new ExpenseDataAccess(); try { return dac.SelectActive(); } catch (Exception ex) { Console.WriteLine(ex.Message); throw ex; } }