public AssignEmployeeViewModel(string connectionString, int id)
        {
            _connectionString = connectionString;

            ///Get the employee information

            employee = GetEmployee(id);
            ///Get the employees already assigned training programs
            ThisEmployeeTrainingPrograms = GetThisEmployeesTrainingPrograms(id);
            ///Get all the available training programs
            AllFutureAvailableTrainingPrograms = GetAllTraining();

            ///Remove any of the employees training programs from availability
            AllFutureAvailableTrainingPrograms.ExceptWith(ThisEmployeeTrainingPrograms);

            TrainingPrograms = AllFutureAvailableTrainingPrograms
                               .Select(training => new SelectListItem
            {
                Text  = $"{training.Name}",
                Value = training.Id.ToString()
            })
                               .ToList();

            TrainingPrograms.Insert(0, new SelectListItem
            {
                Text  = "Choose a Training Program",
                Value = "0"
            });
        }
        public ActionResult DeleteConfirmed(int id)
        {
            TrainingPrograms trainingPrograms = db.TrainingPrograms.Find(id);

            db.TrainingPrograms.Remove(trainingPrograms);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
 public ActionResult Edit([Bind(Include = "Id,Description,Name,MaxCapacity,StartDate,EndDate")] TrainingPrograms trainingPrograms)
 {
     if (ModelState.IsValid)
     {
         db.Entry(trainingPrograms).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(trainingPrograms));
 }
        public ActionResult Create([Bind(Include = "Id,Description,Name,MaxCapacity,StartDate,EndDate")] TrainingPrograms trainingPrograms)
        {
            if (ModelState.IsValid)
            {
                db.TrainingPrograms.Add(trainingPrograms);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(trainingPrograms));
        }
        // GET: TrainingPrograms/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            TrainingPrograms trainingPrograms = db.TrainingPrograms.Find(id);

            if (trainingPrograms == null)
            {
                return(HttpNotFound());
            }
            return(View(trainingPrograms));
        }
        public EmployeeTrainingProgramViewModel(Employee employee, List <TrainingProgram> trainingProgramList)
        {
            Employee         = employee;
            TrainingPrograms = trainingProgramList
                               .Select(trainingProgram => new SelectListItem
            {
                Text  = trainingProgram.Name,
                Value = trainingProgram.Id.ToString()
            })
                               .ToList();

            TrainingPrograms.Insert(0, new SelectListItem
            {
                Text  = "Choose a training program...",
                Value = "0"
            });
        }
Beispiel #7
0
        // GET: EmployeesController/Details/5
        public ActionResult Details(int id)
        {
            using (SqlConnection conn = Connection)
            {
                conn.Open();
                using (SqlCommand cmd = conn.CreateCommand())
                {
                    cmd.CommandText = @"
                      SELECT e.FirstName AS [First Name], e.LastName AS [Last Name], d.[Name] AS [Department Name],
                       c.Make AS [Computer Make], c.Manufacturer AS [Computer Manufacturer], tP.[Name] AS [Training Program]
                       FROM Employee e
                       LEFT JOIN Department d on e.DepartmentId = d.Id
                       LEFT JOIN ComputerEmployee cE on cE.EmployeeId = e.Id
                       LEFT JOIN Computer c on cE.ComputerId = c.Id
                       LEFT JOIN EmployeeTraining eT on eT.EmployeeId = e.Id
                       LEFT JOIN TrainingProgram tP on eT.TrainingProgramId = tP.Id
                       WHERE e.Id = @id AND cE.UnassignDate is NULL";
                    cmd.Parameters.Add(new SqlParameter("@id", id));
                    SqlDataReader reader = cmd.ExecuteReader();

                    Employees employee = null;

                    while (reader.Read())
                    {
                        if (employee == null && reader.IsDBNull(reader.GetOrdinal("Training Program")) && reader.IsDBNull(reader.GetOrdinal("Computer Make")))
                        {
                            employee = new Employees

                            {
                                FirstName  = reader.GetString(reader.GetOrdinal("First Name")),
                                LastName   = reader.GetString(reader.GetOrdinal("Last Name")),
                                department = new Departments
                                {
                                    Name = reader.GetString(reader.GetOrdinal("Department Name")),
                                },
                                computer = new Computers
                                {
                                    Make         = reader.GetString(reader.GetOrdinal("Computer Make")),
                                    Manufacturer = reader.GetString(reader.GetOrdinal("Computer Manufacturer"))
                                }
                            }
                        }
                        ;
                        else if (employee == null && !reader.IsDBNull(reader.GetOrdinal("Training Program")) && !reader.IsDBNull(reader.GetOrdinal("Computer Make")))
                        {
                            employee = new Employees
                            {
                                FirstName  = reader.GetString(reader.GetOrdinal("First Name")),
                                LastName   = reader.GetString(reader.GetOrdinal("Last Name")),
                                department = new Departments
                                {
                                    Name = reader.GetString(reader.GetOrdinal("Department Name")),
                                },
                                computer = new Computers
                                {
                                    Make         = reader.GetString(reader.GetOrdinal("Computer Make")),
                                    Manufacturer = reader.GetString(reader.GetOrdinal("Computer Manufacturer"))
                                }
                            }
                        }
                        ;
                        TrainingPrograms TrainingProgramList = new TrainingPrograms
                        {
                            Name = reader.GetString(reader.GetOrdinal("Training Program"))
                        };

                        employee.TrainingProgramList.Add(TrainingProgramList);
                    }
                    reader.Close();

                    return(View(employee));
                }
            }
        }