示例#1
0
        //// TODO Items: ////

        // Allow any of the CRUD operations to occur here
        internal static void RunEmployeeQueries(Employee employee, string crudOperation)
        {
            switch (crudOperation)
            {
            case "update":
                var employeeToUpdate = db.Employees.Where(e => e.EmployeeId == employee.EmployeeId).FirstOrDefault();
                employeeToUpdate = employee;
                break;

            case "read":
                UserInterface.DisplayEmployeeInfo(employee);
                break;

            case "delete":
                db.Employees.DeleteOnSubmit(employee);
                db.SubmitChanges();
                break;

            case "create":
                db.Employees.InsertOnSubmit(employee);
                db.SubmitChanges();
                break;

            default:
                Console.WriteLine("Not a valid query");
                break;
            }
        }
示例#2
0
        private static void UpdateEmployee(Employee employee)
        {
            try
            {
                Employee      employeeToUpdate = db.Employees.FirstOrDefault(e => e.FirstName == employee.FirstName && e.LastName == employee.LastName && e.EmployeeNumber == employee.EmployeeNumber);
                List <string> options          = new List <string>()
                {
                    "What would you like to update? Please enter number of option. When done updating.", "1: First Name", "2: Last Name", "3: Employee Number", "4: Email", "5: Username", "6: Password", "7: Submit Changes"
                };
                Dictionary <string, string> valuesToUpdate = new Dictionary <string, string>();

                int           input           = 0;
                var           employees       = db.Employees.ToList <Employee>();
                List <int?>   employeeNumbers = employees.Select(a => a.EmployeeNumber).ToList <int?>();
                List <string> usernames       = employees.Select(a => a.UserName).ToList <string>();
                GetNewValuesForDictionary(input, options, valuesToUpdate, employeeNumbers, usernames);
                SubmitDictionaryToDB(valuesToUpdate, employeeToUpdate);
                UserInterface.DisplayEmployeeInfo(employeeToUpdate);
            }
            catch (Exception)
            {
                UserInterface.DisplayUserOptions("Employee not found. Please try again.");
                UserInterface.Pause();
            }
        }
示例#3
0
        internal static void ReadEmployee(Employee employee)
        {
            var thisEmployee = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber).FirstOrDefault();

            UserInterface.DisplayEmployeeInfo(thisEmployee);
            TryDBChanges();
        }
示例#4
0
        //Allow any of the CRUD operations to occur here
        internal static void RunEmployeeQueries(Employee employee, string crudOperation)
        {
            switch (crudOperation)
            {
            case "create":
                db.Employees.InsertOnSubmit(employee);
                db.SubmitChanges();
                break;

            case "read":
                UserInterface.DisplayEmployeeInfo(employee);
                break;

            case "update":
                Employee updatedEmployee = db.Employees.Where(e => e.EmployeeId == employee.EmployeeId).Single();
                updatedEmployee.FirstName      = employee.FirstName;
                updatedEmployee.LastName       = employee.LastName;
                updatedEmployee.EmployeeNumber = employee.EmployeeNumber;
                updatedEmployee.Email          = employee.Email;
                db.SubmitChanges();
                break;

            case "delete":
                db.Employees.DeleteOnSubmit(employee);
                db.SubmitChanges();
                break;

            default:
                break;
            }
        }
示例#5
0
        //// TODO Items: ////

        // TODO: Allow any of the CRUD operations to occur here
        internal static void RunEmployeeQueries(Employee employee, string crudOperation)
        {
            switch (crudOperation)
            {
            case "create":
                db.Employees.InsertOnSubmit(employee);
                db.SubmitChanges();
                break;

            case "read":
                try
                {
                    Employee readEmployeeFromDb = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber).FirstOrDefault();
                    UserInterface.DisplayEmployeeInfo(readEmployeeFromDb);
                }
                catch (NullReferenceException e)
                {
                    Console.WriteLine(e);
                }
                break;

            case "update":
                UpdateEmployee(employee);
                break;

            case "delete":
                Employee employeeFromDb = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber && e.LastName == employee.LastName).FirstOrDefault();
                db.Employees.DeleteOnSubmit(employeeFromDb);
                db.SubmitChanges();
                break;

            default:
                break;
            }
        }
示例#6
0
        public static void ReadEmployee(Employee employee, string read)
        {
            HumaneSocietyDataContext context = new HumaneSocietyDataContext();
            var employeeRecord = (from e in context.Employees where e.ID == employee.ID select e).FirstOrDefault();

            UserInterface.DisplayEmployeeInfo(employeeRecord);
        }
示例#7
0
        //// TODO Items: ////

        // TODO: Allow any of the CRUD operations to occur here
        internal static void RunEmployeeQueries(Employee employee, string crudOperation)
        {
            if (crudOperation == "create")
            {
                db.Employees.InsertOnSubmit(employee);
                db.SubmitChanges();
            }
            else if (crudOperation == "read")
            {
                UserInterface.DisplayEmployeeInfo(employee = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber).Single());
            }
            else if (crudOperation == "update")
            {
                Employee employeeFromDb = null;
                employeeFromDb           = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber).Single();
                employeeFromDb.FirstName = employee.FirstName;
                employeeFromDb.LastName  = employee.LastName;
                employeeFromDb.Email     = employee.Email;
                db.SubmitChanges();
            }
            else if (crudOperation == "delete")
            {
                Employee employeeFromDb = db.Employees.Where(e => e.EmployeeId == employee.EmployeeId).Single();
                db.Employees.DeleteOnSubmit(employeeFromDb);
                db.SubmitChanges();
            }
        }
示例#8
0
        //// TODO Items: ////

        // TODO: Allow any of the CRUD operations to occur here
        internal static void RunEmployeeQueries(Employee employee, string crudOperation)
        {
            crudOperation.ToLower();
            switch (crudOperation)
            {
            case "create":
                db.Employees.InsertOnSubmit(employee);
                break;

            case "read":
                Employee employeeDB = db.Employees.Where(e => e.EmployeeId == employee.EmployeeId).FirstOrDefault();
                UserInterface.DisplayEmployeeInfo(employeeDB);
                break;

            case "update":
                db.Employees.InsertOnSubmit(employee);
                break;

            case "delete":
                db.Employees.DeleteOnSubmit(employee);
                break;

            default:
                break;
            }
            db.SubmitChanges();
        }
示例#9
0
        //// TODO Items: ////

        // TODO: Allow any of the CRUD operations to occur here
        internal static void RunEmployeeQueries(Employee employee, string crudOperation)
        {
            // As a developer, I want to implement the Query.RunEmployeeQueries() method so that any CRUD operation can be applied to an employee.

            switch (crudOperation.ToLower())
            {
            case "create":
                AddNewEmployee(employee.FirstName, employee.LastName, employee.UserName, employee.Password, employee.Email);
                break;

            case "read":
                UserInterface.DisplayEmployeeInfo(employee);
                break;

            case "update":
                UpdateEmployee();     // LOGIC NOT DONE
                break;

            case "delete":
                DeleteEmployee();     // LOGIC NOT DONE
                break;

            default:
                UserInterface.DisplayUserOptions("Input not recognized please try again.");
                RunEmployeeQueries(employee, crudOperation);
                break;
            }
        }
        internal static void GetEmployeeByEmployeeNumber(Employee employee)
        {
            HumaneSocietyDataContext db = new HumaneSocietyDataContext();
            Employee employeeFromDb     = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber).Single();

            UserInterface.DisplayEmployeeInfo(employeeFromDb);
        }
示例#11
0
        //// TODO Items: ////

        // TODO: Allow any of the CRUD operations to occur here
        internal static void RunEmployeeQueries(Employee employee, string crudOperation)
        {
            switch (crudOperation)
            {
            case ("create"):
            {
                CreateEmployee(employee);
                break;
            }

            case ("read"):
            {
                UserInterface.DisplayEmployeeInfo(ReadEmployee(employee));
                break;
            }

            case ("update"):
            {
                UpdateEmployee(employee);
                break;
            }

            case ("delete"):
            {
                DeleteEmployee(employee);
                break;
            }
            }
        }
        // TODO: Allow any of the CRUD operations to occur here
        internal static void RunEmployeeQueries(Employee employee, string crudOperation)
        {
            switch (crudOperation)
            {
            case "create":
                db.Employees.InsertOnSubmit(employee);
                db.SubmitChanges();
                break;

            case "delete":
                Employee employeeToDelete = db.Employees.Where(emp => emp.EmployeeNumber == employee.EmployeeNumber).FirstOrDefault();

                db.Employees.DeleteOnSubmit(employeeToDelete);
                db.SubmitChanges();
                break;

            case "read":
                var employeeToInfo = db.Employees.Where(emp => emp.EmployeeNumber == employee.EmployeeNumber).FirstOrDefault();
                UserInterface.DisplayEmployeeInfo(employeeToInfo);
                break;

            case "update":
                Employee employeeToUpdate = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber).SingleOrDefault();
                employeeToUpdate.FirstName      = employee.FirstName;
                employeeToUpdate.LastName       = employee.LastName;
                employeeToUpdate.EmployeeNumber = employee.EmployeeNumber;
                employeeToUpdate.Email          = employee.Email;
                db.SubmitChanges();
                break;

            default:
                break;
            }
        }
示例#13
0
        //// TODO Items: ////

        // TODO: Allow any of the CRUD operations to occur here
        internal static void RunEmployeeQueries(Employee employee, string crudOperation)
        {
            Employee EmployeeFromDB = null;

            switch (crudOperation)
            {
            case "read":
                EmployeeFromDB = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber).SingleOrDefault();
                UserInterface.DisplayEmployeeInfo(EmployeeFromDB);
                break;

            case "delete":
                EmployeeFromDB = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber).SingleOrDefault();
                db.Employees.DeleteOnSubmit(EmployeeFromDB);
                db.SubmitChanges();
                break;

            case "create":
                db.Employees.InsertOnSubmit(employee);
                db.SubmitChanges();
                break;

            case "update":
                EmployeeFromDB           = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber).SingleOrDefault();
                EmployeeFromDB.FirstName = employee.FirstName;
                EmployeeFromDB.LastName  = employee.LastName;
                EmployeeFromDB.Email     = employee.Email;
                db.SubmitChanges();
                break;
            }
        }
示例#14
0
        public static void ReadEmployeeInfo(Employee employee, string read)
        {
            HumaneSocietyDataContext db = new HumaneSocietyDataContext();
            var employeeInfo            = (from i in db.Employees where i.ID == employee.ID select i).FirstOrDefault();

            UserInterface.DisplayEmployeeInfo(employeeInfo);
        }
示例#15
0
 internal static void DisplayEmployee(Employee employee)   // employee only contains EmployeeNumber
 {
     try
     {
         Employee employeeFromDb = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber).Single();
         UserInterface.DisplayEmployeeInfo(employeeFromDb);
     }
     catch (InvalidOperationException e)
     {
         Console.WriteLine($"No employee exists with that {employee.EmployeeNumber} employee number.");
     }
 }
示例#16
0
        //// TODO Items: ////

        // TODO: Allow any of the CRUD operations to occur here
        internal static void RunEmployeeQueries(Employees employee, string crudOperation)
        {
            var foundEmployee = db.Employees.Where(x => x.EmployeeId == employee.EmployeeId).FirstOrDefault();

            switch (crudOperation.ToLower())
            {
            case "delete":
                var query = db.Animals.Where(x => x.EmployeeId == employee.EmployeeId).Select(x => x);

                foreach (var item in query)
                {
                    item.EmployeeId = null;
                }

                db.Employees.Remove(foundEmployee);
                db.SaveChanges();
                break;

            case "create":
                db.Employees.Add(employee);
                db.SaveChanges();
                break;

            case "read":
                UserInterface.DisplayEmployeeInfo(employee);
                break;

            case "update":
                if (employee.FirstName != null)
                {
                    foundEmployee.FirstName = employee.FirstName;
                }
                if (employee.LastName != null)
                {
                    foundEmployee.LastName = employee.LastName;
                }
                if (employee.Email != null)
                {
                    foundEmployee.Email = employee.Email;
                }
                if (employee.Password != null)
                {
                    foundEmployee.Password = employee.Password;
                }
                if (employee.EmployeeNumber != null)
                {
                    foundEmployee.EmployeeNumber = employee.EmployeeNumber;
                }

                db.SaveChanges();
                break;
            }
        }
示例#17
0
        internal static void DisplayEmployee(Employee employee)
        {
            Employee employeeToRead = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber).FirstOrDefault();

            if (employeeToRead != null)
            {
                UserInterface.DisplayEmployeeInfo(employeeToRead);
            }
            else
            {
                throw new NullReferenceException();
            }
        }
示例#18
0
        //// TODO Items: ////

        // TODO: Allow any of the CRUD operations to occur here
        internal static void RunEmployeeQueries(Employee employee, string crudOperation)
        {
            switch (crudOperation)
            {
            case "create":
                db.Employees.InsertOnSubmit(employee);
                db.SubmitChanges();
                return;

            case "read":
                Employee employeeFromDb = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber).FirstOrDefault();
                if (employeeFromDb == null)
                {
                    throw new NullReferenceException();
                }
                else
                {
                    UserInterface.DisplayEmployeeInfo(employeeFromDb);
                }
                return;

            case "update":
                Employee employeeToUpdate = null;
                try
                {
                    employeeToUpdate = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber).FirstOrDefault();
                }
                catch (InvalidOperationException)
                {
                    Console.WriteLine("There is no employee with that employee number");
                    Console.WriteLine("No changes were made");
                    return;
                }
                employeeToUpdate.FirstName = employee.FirstName;
                employeeToUpdate.LastName  = employee.LastName;
                employeeToUpdate.Email     = employee.Email;
                db.SubmitChanges();
                return;

            case "delete":
                var employeeToDelete = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber &&
                                                          e.LastName == employee.LastName).FirstOrDefault();
                db.Employees.DeleteOnSubmit(employeeToDelete);
                db.SubmitChanges();
                return;
            }
        }
示例#19
0
 private static Employee GetEmployee(Employee employee)
 {
     try
     {
         var db             = new HumaneSocietyDataContext();
         var employeeResult = (from e in db.Employees where e.employeeNumber == employee.employeeNumber select e).FirstOrDefault();
         if (employeeResult != null)
         {
             UserInterface.DisplayEmployeeInfo(employeeResult);
             return(employeeResult);
         }
         else
         {
             UserInterface.DisplayUserOptions($"Unable to locate employee # {employee.employeeNumber}.");
             return(null);
         }
     }
     catch (Exception)
     {
         return(null);
     }
 }
示例#20
0
文件: Query.cs 项目: jrapkin/HumaneS
        //// TODO Items: ////

        // TODO: Allow any of the CRUD operations to occur here
        internal static void RunEmployeeQueries(Employee employee, string crudOperation)
        {
            switch (crudOperation)
            {
            case "create":
                CreateEmployee(employee);
                break;

            case "read":
                Employee fetchedEmployee = FetchEmployeeInfo(employee);
                UserInterface.DisplayEmployeeInfo(fetchedEmployee);
                break;

            case "update":
                UpdateEmployee(employee);
                break;

            case "delete":
                DeleteEmployee(employee);
                break;
            }
        }
示例#21
0
        internal static void RunEmployeeQueries(Employee employee, string thisCase, int employeeNumToUpdate = 0)
        {
            HumaneSocietyDataContext db = new HumaneSocietyDataContext();

            switch (thisCase)
            {
            case "create":
                db.Employees.InsertOnSubmit(employee);
                db.SubmitChanges();
                break;

            case "read":
                Employee employeeToRead = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber).Single();
                UserInterface.DisplayEmployeeInfo(employeeToRead);
                break;

            case "update":
                Employee employeeToUpdate = new Employee();
                employeeToUpdate = (from e in db.Employees
                                    where e.EmployeeNumber == employeeNumToUpdate
                                    select e).Single();
                employeeToUpdate.FirstName      = employee.FirstName;
                employeeToUpdate.EmployeeNumber = employee.EmployeeNumber;
                employeeToUpdate.LastName       = employee.LastName;
                employeeToUpdate.Email          = employee.Email;
                db.SubmitChanges();
                break;

            case "delete":
                Employee employeeToDelete = db.Employees.Where(e => e.LastName == employee.LastName).Single();
                db.Employees.DeleteOnSubmit(employeeToDelete);
                db.SubmitChanges();
                break;

            default:
                break;
            }
        }
示例#22
0
 internal static void GetEmployeeByEmployeeNumber(int?employeeNumber)
 {
     UserInterface.DisplayEmployeeInfo(db.Employees.Where(x => x.EmployeeNumber == employeeNumber).SingleOrDefault());
 }
示例#23
0
        internal static Employee RunEmployeeQueries(Employee employee, string action)
        {
            HumaneSocietyDataContext db = new HumaneSocietyDataContext();

            switch (action)
            {
            case "create":
                db.Employees.InsertOnSubmit(employee);
                db.SubmitChanges();
                return(null);

            //break;
            case "read":
                if (employee.EmployeeNumber != null)
                {
                    employee = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber).First();
                }
                if (employee.EmployeeId != 0)
                {
                    employee = db.Employees.Where(e => e.EmployeeId == employee.EmployeeId).First();
                }
                UserInterface.DisplayEmployeeInfo(employee);
                Console.WriteLine("\nPress enter to continue:");
                Console.ReadLine();
                return(employee);

            //break;
            case "update":
                Employee thisEmployee = db.Employees.Where(e => e.EmployeeId == employee.EmployeeId).Single();
                thisEmployee.LastName   = employee.LastName;
                thisEmployee.FirstName  = employee.FirstName;
                thisEmployee.EmployeeId = employee.EmployeeId;
                thisEmployee.UserName   = employee.UserName;
                thisEmployee.Password   = employee.Password;
                thisEmployee.Email      = employee.Email;
                db.SubmitChanges();
                Console.Clear();
                Console.WriteLine("Updated:");
                UserInterface.DisplayEmployeeInfo(employee);
                Console.WriteLine("\nPress enter to continue:");
                Console.ReadLine();
                return(null);

            //break;
            case "display":                                                                                     // display
                Console.Clear();
                UserInterface.DisplayEmployees(db.Employees.OrderBy(e => e.LastName).ThenBy(e => e.FirstName)); // DisplayEmployees
                return(null);

            //break;
            case "delete":
                employee = db.Employees.Where(e => e.LastName == employee.LastName && e.EmployeeNumber == employee.EmployeeNumber).First();
                db.Employees.DeleteOnSubmit(employee);
                db.SubmitChanges();
                return(null);

            //break;
            default:
                return(null);
            }
        }
示例#24
0
        private static void ReadEmployee(Employee employee)
        {
            Employee employeeFromDB = db.Employees.Where(e => e.EmployeeId == employee.EmployeeId).FirstOrDefault();

            UserInterface.DisplayEmployeeInfo(employeeFromDB);
        }
示例#25
0
        private static void ReadEmployee(Employee employee)
        {
            Employee foundEmployee = db.Employees.FirstOrDefault(a => a.EmployeeNumber == employee.EmployeeNumber);

            UserInterface.DisplayEmployeeInfo(foundEmployee);
        }
示例#26
0
        internal static void ReadEmployee(Employee employee)
        {
            Employee employeeFound = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber).Single();

            UserInterface.DisplayEmployeeInfo(employeeFound);
        }
示例#27
0
        public static void GetRead(Employee employee)
        {
            var readEmployee = db.Employees.Where(e => e.EmployeeNumber == employee.EmployeeNumber).Single();

            UserInterface.DisplayEmployeeInfo(readEmployee);
        }