コード例 #1
0
        public IActionResult Update(Models.Lesson lesson)
        {
            if (lesson == null)
            {
                return(RedirectToAction("Error", "Home"));
            }

            _lessonRepository.Update(lesson);
            _lessonRepository.Save();
            return(RedirectToAction("Index", "Lesson", "Admin"));
        }
コード例 #2
0
        public ResultHandler <LessonDto> Update(LessonDto lessonDto)
        {
            ResultHandler <LessonDto> resultHandler = new ResultHandler <LessonDto>();

            if (lessonDto.Id == Guid.Empty)
            {
                resultHandler.Errors.Add("Id can't be empty");
                return(resultHandler);
            }

            try
            {
                Lesson lesson = _lessonRepository.FindOne(lessonDto.Id);
                if (lesson == null)
                {
                    resultHandler.Errors.Add("No such lesson exists");
                    return(resultHandler);
                }

                Student student = _studentRepository.FindOne(lessonDto.StudentId);
                if (student == null)
                {
                    resultHandler.Errors.Add("Student could not be found");
                    return(resultHandler);
                }

                Trainer trainer = _trainerRepository.FindOne(lessonDto.TrainerId);
                if (trainer == null)
                {
                    resultHandler.Errors.Add("Trainer could not be found");
                    return(resultHandler);
                }

                if (!_lesson.HasDublicateLesson(lesson, student, lessonDto.DateTime, lessonDto.Hour, lessonDto.Minutes))
                {
                    lesson = _lesson.Update(lesson, student, trainer, lessonDto.DateTime, lessonDto.Hour, lessonDto.Minutes, lessonDto.IsCompleted);
                }
                else
                {
                    resultHandler.Errors.Add("There is a dublicate lesson");
                    return(resultHandler);
                }

                _lessonRepository.Update(lesson);
                resultHandler.Data = AutoMapper.Mapper.Map <Lesson, LessonDto>(lesson);
            }
            catch (Exception ex)
            {
                resultHandler.Errors.Add(ex.Message);
            }

            return(resultHandler);
        }