Пример #1
0
        public Lesson CreateEntityLesson(int InstructorID, Enum.DayOfCourse Day, int CourseID, int StartHour, int EndHour, DateTime Launch)
        {
            Lesson lesson = new Lesson();

            lesson.InstructorID = InstructorID;
            lesson.Course       = db.Courses.FirstOrDefault(c => c.CourseID == CourseID);
            lesson.Day          = Day;
            lesson.StartHour    = StartHour;
            lesson.EndHour      = EndHour;
            lesson.Launch       = Launch;
            return(lesson);
        }
Пример #2
0
        public ActionResult CreateLesson(Enum.DayOfCourse Day, string Course, int StartHour, int EndHour, DateTime Launch)
        {
            if (Session["User"] == null)
            {
                TempData["CreateError"] = "No user connected";
                return(RedirectToAction(nameof(LessonController.Create), "Lesson"));
            }
            else
            {
                Person userConnected = (Person)Session["User"];
                try
                {
                    if (StartHour >= EndHour)
                    {
                        TempData["CreateError"] = "Endhour must be after StartHour";
                        return(RedirectToAction(nameof(LessonController.Create), "Lesson"));
                    }
                    else
                    {
                        int CourseId = int.Parse(Course);


                        // TODO : need to be in a differente layer, not in controller
                        LessonBAL bal = new LessonBAL();
                        //Lesson lesson = bal.CreateEntityLesson();

                        Lesson lesson = new Lesson();

                        lesson.InstructorID = userConnected.ID;
                        lesson.Course       = db.Courses.FirstOrDefault(c => c.CourseID == CourseId);
                        lesson.Day          = Day;
                        lesson.StartHour    = StartHour;
                        lesson.EndHour      = EndHour;
                        lesson.Launch       = Launch;

                        //if(bal.IsPlanningValid(lesson))
                        //{
                        //    TempData["CreateError"] = $"You have already a course between {lesson.StartHour} h and {lesson.EndHour} h {lesson.Day}";
                        //    return RedirectToAction(nameof(LessonController.Create), "Lesson");
                        //}

                        if (!IsLessonValid(lesson))
                        {
                            TempData["CreateError"] = $"You have already a course between {lesson.StartHour} h and {lesson.EndHour} h {lesson.Day}";
                            return(RedirectToAction(nameof(LessonController.Create), "Lesson"));
                        }


                        //bal.AddLesson(lesson, db);

                        db.Lessons.Add(lesson);


                        db.SaveChanges();
                        return(RedirectToAction(nameof(LessonController.Index), "Lesson"));
                    }
                }
                catch (Exception)
                {
                    ModelState.AddModelError("Error", "Error");
                }
            }
            return(RedirectToAction(nameof(LessonController.Index), "Lesson"));
        }