// GET: Subject/Details/
 public ActionResult Details(int id)
 {
     using (DBmodel DBmodel = new DBmodel())
     {
         SubjectDetailsViewModel model = new SubjectDetailsViewModel();
         try
         {
             var subject    = DBmodel.SubjectTBs.Where(x => x.SubjectCode == id).FirstOrDefault();
             var subDetails = DBmodel.SubjectDetails.Where(x => x.SubjectID == id).FirstOrDefault();
             model.Subject = new SubjectViewModel
             {
                 Grade       = subject.GradeList.Grade,
                 TeacherName = subject.TeacherList.teacher_name,
                 SubjectCode = subject.SubjectCode,
                 SubjectName = subject.SubjectName
             };
             if (subDetails != null)
             {
                 model.Subject.Hall      = subDetails.Hall;
                 model.Subject.Day       = subDetails.Day;
                 model.Subject.StartTime = subDetails.StartTime;
                 model.Subject.EndTime   = subDetails.EndTime;
             }
         }
         catch (Exception ex)
         {
         }
         return(View(model));
     }
 }
 public SubjectDetails(ObservableCollection <Subject> viewModelSubjects, MainWindowViewModel mainWindowViewModel)
 {
     _mainWindowViewModel = mainWindowViewModel;
     _adding    = true;
     _viewModel = new SubjectDetailsViewModel(_mainWindowViewModel);
     Init(viewModelSubjects);
 }
        public SubjectDetails(string id, ObservableCollection <Subject> viewModelSubjects,
                              MainWindowViewModel mainWindowViewModel)
        {
            _mainWindowViewModel = mainWindowViewModel;
            _adding    = false;
            _viewModel = new SubjectDetailsViewModel(id, _mainWindowViewModel);
            Init(viewModelSubjects);

            var course = _viewModel.Courses.FirstOrDefault(c => c.Id == _viewModel.Course.Id);

            CourseComboBox.SelectedIndex = _viewModel.Courses.IndexOf(course);
        }
        // GET: Subject/Create
        public ActionResult Create()
        {
            ViewBag.IsError = false;
            SubjectDetailsViewModel model = new SubjectDetailsViewModel();

            model.Subject = new SubjectViewModel()
            {
                SubjectName = ""
            };
            using (DBmodel DBmodel = new DBmodel())
            {
                model.Teachers = DBmodel.TeacherLists.ToList <TeacherList>();
                model.Grades   = DBmodel.GradeLists.ToList <GradeList>();
            }
            return(View(model));
        }
        // GET: Subject/Edit/
        public ActionResult Edit(int id)
        {
            SubjectDetailsViewModel model = new SubjectDetailsViewModel();

            using (DBmodel DBmodel = new DBmodel())
            {
                model.Subject = DBmodel.SubjectTBs.Where(x => x.SubjectCode == id).Select(s => new SubjectViewModel
                {
                    Grade       = s.Grade,
                    SubjectCode = s.SubjectCode,
                    SubjectName = s.SubjectName,
                    TeacherName = s.TeacherList.teacher_name
                }).FirstOrDefault();
                model.Teachers = DBmodel.TeacherLists.ToList <TeacherList>();
                model.Grades   = DBmodel.GradeLists.ToList <GradeList>();

                return(View(model));
            }
        }
示例#6
0
        public async Task <ActionResult <string> > Details(int id)
        {
            var subjectModel = await this.subjectService.Details(id);

            if (subjectModel == null)
            {
                return(NotFound());
            }

            var teacher = await this.userService.GetUserById(subjectModel.TeacherId);

            var subjectViewModel = new SubjectDetailsViewModel()
            {
                Id              = subjectModel.Id,
                Name            = subjectModel.Name,
                Description     = subjectModel.Description,
                TeacherFullName = $"{teacher.Title} {teacher.FirstName} {teacher.LastName}",
                Topics          = await this.topicService.GetAllBySubjectId(subjectModel.Id),
            };

            return(View(subjectViewModel));
        }
        public ActionResult Create(SubjectDetailsViewModel viewModel)
        {
            using (DBmodel DBmodel = new DBmodel())
            {
                ViewBag.IsError = false;
                try
                {
                    if (ModelState.IsValid)
                    {
                        SubjectTB       model         = new SubjectTB();
                        subject         model_subject = new subject();
                        teacher_grade   model_grade   = new teacher_grade();
                        teacher_subject model_teacher = new teacher_subject();

                        model.Grade       = viewModel.Subject.Grade;
                        model.SubjectName = viewModel.Subject.SubjectName;
                        model.Teacher     = viewModel.Subject.Teacher;


                        if (!DBmodel.SubjectTBs.Any(x => x.Teacher == viewModel.Subject.Teacher && x.Grade == viewModel.Subject.Grade && x.SubjectName == viewModel.Subject.SubjectName))
                        {
                            DBmodel.SubjectTBs.Add(model);
                            DBmodel.SaveChanges();

                            List <SubjectTB> list  = DBmodel.SubjectTBs.ToList();
                            SubjectTB        index = list.Last();

                            model_subject.subject_id = index.SubjectCode;
                            model_subject.subject1   = index.SubjectName;

                            model_grade.grade       = index.Grade;
                            model_grade.teacher_id  = index.Teacher;
                            model_grade.grade_id    = DBmodel.GradeLists.Find(index.Grade).ID;
                            model_grade.subjectCode = index.SubjectCode;

                            model_teacher.subject_id = index.SubjectCode;
                            model_teacher.teacher_id = index.Teacher;

                            DBmodel.subjects.Add(model_subject);
                            DBmodel.teacher_grade.Add(model_grade);
                            DBmodel.teacher_subject.Add(model_teacher);

                            DBmodel.SaveChanges();

                            return(RedirectToAction("SubjectList"));
                        }
                        else
                        {
                            ViewBag.DuplicateMessage = "Subject Details already exist.";
                            ViewBag.IsError          = true;
                        }
                    }
                }
                catch
                {
                }
                viewModel.Teachers = DBmodel.TeacherLists.ToList <TeacherList>();
                viewModel.Grades   = DBmodel.GradeLists.ToList <GradeList>();
            }
            return(View(viewModel));
        }
        public ActionResult Edit(int id, SubjectDetailsViewModel model)
        {
            using (DBmodel DBmodel = new DBmodel())
            {
                ViewBag.IsError = false;

                try
                {
                    if (ModelState.IsValid)
                    {
                        subject         model_subject = DBmodel.subjects.Find(id);
                        teacher_grade   model_grade   = DBmodel.teacher_grade.Find(id);
                        teacher_subject model_teacher = DBmodel.teacher_subject.Find(id);

                        model.Subject.SubjectCode = id;
                        var subject = DBmodel.SubjectTBs.Where(x => x.SubjectCode == id).FirstOrDefault();
                        if (subject != null)
                        {
                            subject.Grade       = model.Subject.Grade;
                            subject.Teacher     = model.Subject.Teacher;
                            subject.SubjectName = model.Subject.SubjectName;
                        }

                        if (!DBmodel.SubjectTBs.Any(x => x.Teacher == model.Subject.Teacher && x.Grade == model.Subject.Grade && x.SubjectName == model.Subject.SubjectName))
                        {
                            DBmodel.Entry(subject).State = EntityState.Modified;
                            DBmodel.SaveChanges();

                            model_subject.subject1 = model.Subject.SubjectName;

                            model_grade.grade      = model.Subject.Grade;
                            model_grade.teacher_id = model.Subject.Teacher;
                            model_grade.grade_id   = DBmodel.GradeLists.Find(model.Subject.Grade).ID;

                            model_teacher.teacher_id = model.Subject.Teacher;

                            DBmodel.Entry(model_subject).State = EntityState.Modified;
                            DBmodel.Entry(model_grade).State   = EntityState.Modified;
                            DBmodel.Entry(model_teacher).State = EntityState.Modified;
                            DBmodel.SaveChanges();

                            return(RedirectToAction("SubjectList"));
                        }
                        else
                        {
                            ViewBag.DuplicateMessage = "Subject Details already exist.";
                            ViewBag.IsError          = true;
                        }
                    }
                }

                catch (Exception ex)
                {
                }

                model.Teachers = DBmodel.TeacherLists.ToList <TeacherList>();
                model.Grades   = DBmodel.GradeLists.ToList <GradeList>();
            }

            return(View(model));
        }