Ejemplo n.º 1
0
        public async Task <Response> GetListLesson(string courseID, string UserID, string ClientID)
        {
            try
            {
                if (CheckLogin(UserID, ClientID))
                {
                    var data = await _lessionService.CreateQuery().Find(o => o.CourseID == courseID && o.CreateUser == _currentUser.ID).ToListAsync();

                    if (data == null)
                    {
                        return(new Response(404, "Data not Found", null));
                    }
                    return(new Response(200, "Success get all", data));
                }
                else
                {
                    return(new Response(301, "Lỗi xác thực", null));
                }
            }
            catch (Exception ex)
            {
                await _logs.WriteLogsError("GetListLesson", ex);

                return(new Response(500, ex.Message, null));
            }
        }
        public IActionResult Detail(ModChapterModel model)
        {
            ViewBag.Title = "Nội dung chương";

            ViewData.Model = model;
            var item = new ModChapterEntity();

            if (string.IsNullOrEmpty(model.ID))
            {
                if (!string.IsNullOrEmpty(model.CourseID) && model.CourseID != "0")
                {
                    return(RedirectToAction("Detail", "ModCourses", new { ID = model.CourseID }));
                }
                else
                {
                    return(RedirectToAction("Index", "ModCourses"));
                }
            }
            else
            {
                item           = _service.GetByID(model.ID);
                model.CourseID = item.CourseID;
                if (item == null)
                {
                    SetMessageError("Không tìm thấy chương");
                    return(RedirectToAction("Detail", "ModCourses", new { ID = item.CourseID }));
                }
                ViewBag.Data = item;
            }

            var course        = _courseService.GetByID(item.CourseID);
            var lessonsCourse = _lessonService.CreateQuery().Find(o => o.CreateUser == _currentUser.ID && o.IsParentCourse == true && o.CourseID == item.CourseID).ToList();

            ViewBag.LessonCourse = lessonsCourse;
            if (course == null)
            {
                return(RedirectToAction("Index", "ModCourses"));
            }
            ViewBag.Course = course;

            var chapters = _service.Find(true, o => o.CourseID == item.CourseID);

            ViewBag.Chapters = chapters.Select(o => new ModChapterViewModel(o)
            {
                Parent = (!string.IsNullOrEmpty(o.ParentID) && o.ParentID != "0")
                    ? chapters.FirstOrDefault(t => t.ID == o.ParentID)
                    : new ModChapterEntity {
                    Order = o.Order
                },
                ChildNode = _service.CreateQuery().Find(x => x.ParentID == o.ID).ToList(),
                ItemChild = _lessonService.CreateQuery().Find(x => x.IsParentCourse == false && x.ChapterID == o.ID).ToList()
            }).OrderBy(o => o.Parent.Order).ThenBy(o => o.Order).ToList();

            ViewBag.CurrentChapter = item.ID;

            return(View());
        }
        public ActionResult Index(DefaultModel model)
        {
            var data = _service.CreateQuery().FindList(!string.IsNullOrEmpty(model.SearchText), o => o.Name.Contains(model.SearchText) || o.Code.Contains(model.SearchText))
                       .Where(!string.IsNullOrEmpty(model.ID), o => o.ID == model.ID)
                       .OrderByDescending(o => o.ID)
                       .ToList();

            ViewBag.Data      = data.Skip(model.PageSize * model.PageIndex).Take(model.PageSize).ToList();
            model.TotalRecord = data.Count;
            ViewBag.Model     = model;
            return(View());
        }
        public IActionResult Detail(string ID)
        {
            DefaultModel model = new DefaultModel
            {
                ID = ID
            };

            ViewBag.Title = "";
            if (string.IsNullOrEmpty(ID))
            {
                return(RedirectToAction("Create"));
            }
            else
            {
                var item = _service.GetByID(ID);

                if (item == null)
                {
                    SetMessageError("Không tìm thấy đối tượng");
                }
                ViewBag.Title  = item.Name;
                ViewBag.Course = item;
                var lessonsCourse = _lessonService.CreateQuery().Find(o => o.CreateUser == _currentUser.ID && o.IsParentCourse == true && o.CourseID == item.ID).ToList();
                ViewBag.LessonCourse = lessonsCourse;
                ViewBag.Data         = new ModCourseViewModel(item)
                {
                    Program    = _programService.GetByID(item.ProgramID),
                    Grade      = _gradeService.GetByID(item.GradeID),
                    Subject    = _subjectService.GetByID(item.SubjectID),
                    ListLesson = lessonsCourse
                };
                var chapters = _chapterService.Find(true, o => o.CourseID == item.ID);
                ViewBag.Chapters = chapters.Select(o => new ModChapterViewModel(o)
                {
                    Parent = (!string.IsNullOrEmpty(o.ParentID) && o.ParentID != "0")
                        ? chapters.FirstOrDefault(t => t.ID == o.ParentID)
                        : new ModChapterEntity {
                        Order = o.Order
                    },
                    ChildNode = _chapterService.CreateQuery().Find(x => x.ParentID == ID).ToList(),
                    ItemChild = _lessonService.CreateQuery().Find(x => x.IsParentCourse == false && x.ChapterID == ID).ToList()
                }).OrderBy(o => o.Parent.Order).ThenBy(o => o.Order).ToList();
            }
            return(View());
        }