Ejemplo n.º 1
0
        public ActionResult Create([Bind(Include = "ID,DayShift,ShiftDurationHours")] Shift shift)
        {
            if (ModelState.IsValid)
            {
                db.Shifts.Add(shift);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(shift));
        }
Ejemplo n.º 2
0
        public ActionResult Create([Bind(Include = "ID,StartDateOfLeave,EndDateOfLeave,Type")] Leave leave)
        {
            if (ModelState.IsValid)
            {
                db.Leaves.Add(leave);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(leave));
        }
        public ActionResult Create([Bind(Include = "ID,Name,Address")] Department department)
        {
            if (ModelState.IsValid)
            {
                db.Departments.Add(department);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(department));
        }
        public ActionResult Create([Bind(Include = "StartEvaluationDate,EndEvaluationDate")] Evaluation evaluation)
        {
            if (ModelState.IsValid)
            {
                db.Evaluations.Add(evaluation);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(evaluation));
        }
Ejemplo n.º 5
0
        public Request MakeARequestForLeave(EmployeeProjectDbContext db, Employee employee, Leave leave)
        {
            var request = new Request()
            {
                Employee           = employee,
                Leave              = leave,
                DateRequestedLeave = DateTime.Now.Date,
                IsAccepted         = true
            };

            if (employee.RemaingDaysOfLeave < leave.HowManyDays || leave.HowManyDays <= 0)
            {
                request.IsAccepted = false;
            }

            if (request.IsAccepted)
            {
                employee.RemaingDaysOfLeave -= leave.HowManyDays;
            }

            try
            {
                db.Leaves.Add(leave);
                db.Requests.Add(request);
                db.SaveChanges();
            }
            catch (DataException e)
            {
                throw new DataException(e.Message);
            }


            return(request);
        }
Ejemplo n.º 6
0
        public ActionResult Create([Bind(Include = "ID,Name,LastName,MyStatus,Insurance,WorkRole,RemaingDaysOfLeave,Salary,DepartmentID")] Employee employee)
        {
            if (ModelState.IsValid)
            {
                db.Employees.Add(employee);
                db.SaveChanges();

                return(RedirectToAction("Index"));
            }

            ViewBag.ID           = new SelectList(db.Accounts, "EmployeeID", "Email", employee.ID);
            ViewBag.ID           = new SelectList(db.ContactDetails, "EmployeeID", "MobilePhone", employee.ID);
            ViewBag.DepartmentID = new SelectList(db.Departments, "ID", "Address", employee.DepartmentID);
            ViewBag.ID           = new SelectList(db.PersonalDetails, "EmployeeID", "SSN", employee.ID);
            ViewBag.ID           = new SelectList(db.WorkContracts, "EmployeeID", "EmployeeID", employee.ID);
            return(View(employee));
        }
        public ActionResult Create(PerformanceData performanceData)
        {
            var performance = new Performance()
            {
                FormID        = performanceData.FormId,
                EmployeeID    = performanceData.Employee.ID,
                EvaluationID  = performanceData.Evaluation.ID,
                DateEvaluated = DateTime.Now,
                OveralRating  = OverallRatingCalculate(performanceData.Answers)
            };

            if (db.Performances.Any(p => p.EmployeeID == performance.EmployeeID && p.EvaluationID == performance.EvaluationID))
            {
                performanceData.ExistingPerformance = true;
                performanceData.Forms       = db.Forms;
                performanceData.Employees   = db.Employees;
                performanceData.Evaluations = db.Evaluations.ToList();
                performanceData.Questions   = performanceData.GetFormQuestions(performanceData.FormId);
                return(View("Create", performanceData));
            }

            db.Performances.Add(performance);
            db.SaveChanges();



            for (int i = 0; i < performanceData.Questions.Count; i++)
            {
                performanceData.Answers[i].QuestionID = performanceData.Questions[i].ID;
            }

            foreach (var answer in performanceData.Answers)
            {
                answer.PerformanceID = performance.ID;
                db.Answers.Add(answer);
            }
            db.SaveChanges();



            return(RedirectToAction("Index", "Home"));
        }
Ejemplo n.º 8
0
 public void Delete(EmployeeProjectDbContext db, Employee employee)
 {
     try
     {
         db.Entry(employee).State = EntityState.Deleted;
         db.SaveChanges();
     }
     catch (Exception e)
     {
         Console.WriteLine(e.Message);
     }
 }
Ejemplo n.º 9
0
        //ctrors

        //methods;

        //post create
        public Employee Create(EmployeeProjectDbContext db, Employee employee)
        {
            try
            {
                db.Employees.Add(employee);
                db.SaveChanges();
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
            return(employee);
        }
Ejemplo n.º 10
0
 private void CreateANewWeeklySchedule(EmployeeProjectDbContext db, WeeklySchedule weeklySchedule)
 {
     try
     {
         if (weeklySchedule != null)
         {
             db.WeeklySchedules.Add(weeklySchedule);
             db.SaveChanges();
         }
     }
     catch (DataException e)
     {
         throw new DataException(e.Message);
     }
 }
Ejemplo n.º 11
0
 private void CreateANewShift(EmployeeProjectDbContext db, Shift shift)
 {
     try
     {
         if (shift != null)
         {
             db.Shifts.Add(shift);
             db.SaveChanges();
         }
     }
     catch (DataException e)
     {
         throw new DataException(e.Message);
     }
 }
Ejemplo n.º 12
0
 private void CreateANewWorkDay(EmployeeProjectDbContext db, WorkDay workDay)
 {
     try
     {
         if (workDay != null)
         {
             db.WorkDays.Add(workDay);
             db.SaveChanges();
         }
     }
     catch (DataException e)
     {
         throw new DataException(e.Message);
     }
 }
Ejemplo n.º 13
0
        public void AssignEmployeesToShift(EmployeeProjectDbContext db, Shift shift, Department department)
        {
            //an den yparxei h vardia sth vash tote thn dhmiourgw
            if (!db.Shifts.Contains(shift))
            {
                CreateANewShift(db, shift);
            }

            //fernw olous tous ergazomenous poy douleyoun sto department
            var allEmployeesOfDepartment = db.Employees
                                           .Where(d => d.Department.ID == department.ID);


            foreach (var employee in allEmployeesOfDepartment)
            {
                //gia department me 3 vardies
                var listMorningIDs = new List <int>()
                {
                    shift.ID, shift.ID - 1, shift.ID + 1, shift.ID + 2, shift.ID + 3, shift.ID + 4
                };
                var listEveningIDs = new List <int>()
                {
                    shift.ID, shift.ID - 1, shift.ID + 1
                };
                var listNightIDs = new List <int>()
                {
                    shift.ID, shift.ID - 1, shift.ID - 2, shift.ID + 1
                };

                switch (shift.DayShift)
                {
                case Shifts.Morning:
                    if (!employee.Posts.Select(post => post.Shift.ID)
                        .Intersect(listMorningIDs)
                        .Any())
                    {
                        var post = new Post()
                        {
                            Shift    = shift,
                            Employee = employee
                        };

                        try
                        {
                            employee.Posts.Add(post);
                            db.SaveChanges();
                        }
                        catch (DataException e)
                        {
                            throw new DataException(e.Message);
                        }
                    }
                    break;

                case Shifts.Evening:
                    if (!employee.Posts.Select(post => post.Shift.ID)
                        .Intersect(listEveningIDs)
                        .Any())
                    {
                        var post = new Post()
                        {
                            Shift    = shift,
                            Employee = employee
                        };

                        try
                        {
                            employee.Posts.Add(post);
                            db.SaveChanges();
                        }
                        catch (DataException e)
                        {
                            throw new DataException(e.Message);
                        }
                    }
                    break;

                case Shifts.Night:
                    if (!employee.Posts.Select(post => post.Shift.ID)
                        .Intersect(listNightIDs)
                        .Any())
                    {
                        var post = new Post()
                        {
                            Shift    = shift,
                            Employee = employee
                        };

                        try
                        {
                            employee.Posts.Add(post);
                            db.SaveChanges();
                        }
                        catch (DataException e)
                        {
                            throw new DataException(e.Message);
                        }
                    }
                    break;

                default:

                    break;
                }
            }
        }