예제 #1
0
        public IActionResult GetAll()
        {
            var grades    = _gradeService.GetAll();
            var gradesDto = _mapper.Map <IList <GradeDto> >(grades);

            return(Ok(gradesDto));
        }
        public void BindGradeList(long id = 0)
        {
            if (id == 0)
            {
                ViewBag.GradeList = _gradeService.GetAll().Where(a => a.IsDelete == false).Select(a =>
                                                                                                  new SelectListItem()
                {
                    Value = a.Id.ToString(),
                    Text  = a.Name,
                }).OrderBy(a => a.Text).ToList();
            }
            else
            {
                List <SelectListItem> lstGradeItems = new List <SelectListItem>();

                var lstSelectedGrade = new List <SelectListItem>();
                lstSelectedGrade = _gradeService.GetAll().Where(a => a.IsDelete == false && a.Id == id).Select(a =>
                                                                                                               new SelectListItem()
                {
                    Selected = true,
                    Value    = a.Id.ToString(),
                    Text     = a.Name,
                }).OrderBy(a => a.Text).ToList();

                foreach (var i in lstSelectedGrade)
                {
                    var data = lstGradeItems.Where(x => x.Value == i.Value).Count();
                    if (data == 0)
                    {
                        lstGradeItems.Add(i);
                    }
                }


                var lstUnSelectedGrade = new List <SelectListItem>();
                lstUnSelectedGrade = _gradeService.GetAll().Where(x => x.Id != id && x.IsDelete == false).Select(a =>
                                                                                                                 new SelectListItem()
                {
                    Value    = a.Id.ToString(),
                    Text     = a.Name,
                    Selected = false
                }).OrderBy(a => a.Text).ToList();
                foreach (var i in lstUnSelectedGrade)
                {
                    var data = lstGradeItems.Where(x => x.Value == i.Value).Count();
                    if (data == 0)
                    {
                        lstGradeItems.Add(i);
                    }
                }
                ViewBag.GradeList = lstGradeItems;
            }
        }
        public IActionResult GetLessonList()
        {
            var gradeList = Mapper.Map <List <GradeDto> >(_gradeService.GetAll(x => x.IsActive && !x.IsDelete));

            foreach (var grade in gradeList)
            {
                grade.lessonList = new List <LessonDto>();
                var llist = Mapper.Map <List <LessonDto> >(_lessonService.GetAll(x => x.GradeId == grade.Id && !x.IsDelete).ToList());
                if (llist.Count > 0)
                {
                    grade.lessonList.AddRange(llist);
                }
            }
            return(Json(gradeList));
        }
예제 #4
0
        public ActionResult Student()
        {
            var identity = (ClaimsIdentity)User.Identity;
            var id       = identity.Claims.FirstOrDefault(x => x.Type == ClaimTypes.NameIdentifier).Value;
            var user     = userService.Get(int.Parse(id));
            List <StudentTaskViewModelPartial> tasks = new List <StudentTaskViewModelPartial>();

            foreach (UserTask task in userTaskService.GetAll().Where(x => x.UserID == user.ID))
            {
                tasks.Add(new StudentTaskViewModelPartial
                {
                    ID      = task.ID,
                    Task    = taskService.Get(task.TaskID),
                    Answer  = task.Answer,
                    Comment = task.Comment,
                    Grade   = task.Grade
                });
            }
            GradeActivityViewModel model = new GradeActivityViewModel()
            {
                Grades     = gradeService.GetAll().Where(x => x.UserID == user.ID),
                Activities = activityService.GetAll().Where(x => x.UserID == user.ID),
                Tasks      = tasks
            };

            return(PartialView("_StudentPartial", model));
        }
예제 #5
0
        public ActionResult Report(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            User user = userService.Get(id);

            if (user == null)
            {
                return(HttpNotFound());
            }
            ReportViewModel model = new ReportViewModel()
            {
                User       = user,
                Activities = activityService.GetAll().Where(x => x.UserID == id),
                Grades     = gradeService.GetAll().Where(x => x.UserID == id),
                Tasks      = userTaskService.GetAll().Where(x => x.UserID == id)
                             .Select(x => new ExtentionTaskViewModel
                {
                    ID      = x.ID,
                    Answer  = x.Answer,
                    Comment = x.Comment,
                    Grade   = x.Grade,
                    Task    = taskService.Get(x.TaskID),
                    User    = userService.Get(x.UserID)
                })
            };

            return(View(model));
        }
예제 #6
0
 /// 编辑
 /// </summary>
 /// <param name="_UserInfoVM"></param>
 /// <returns></returns>
 public ActionResult Edit(UserInfoVM _UserInfoVM)
 {
     _UserInfoVM.UserInfo     = _userInfo.GetById(_UserInfoVM.Id) ?? new UserInfo();
     _UserInfoVM.ImgInfo      = _imageInfoService.GetById(_UserInfoVM.UserInfo.ImageInfoId) ?? new ImageInfo();
     _UserInfoVM.SysGroupList = _sysGroupService.GetAll().ToList();
     _UserInfoVM.GradeList    = _gradeService.GetAll().ToList();
     return(View(_UserInfoVM));
 }
예제 #7
0
 public void BindGradeDropdown()
 {
     ViewBag.GradeList = _gradeService.GetAll(x => x.IsActive == true && x.IsDelete == false).Select(x => new SelectListItem
     {
         Text  = x.Name,
         Value = x.Id.ToString()
     }).OrderBy(x => x.Text).ToList();
 }
예제 #8
0
        // GET: /Grades/
        public IActionResult Index()
        {
            var getAllGradesResponse = _gradeService.GetAll(new GetAllGradesRequest());

            if (getAllGradesResponse.IsSuccess == true)
            {
                return(View(
                           "Index",
                           new GradeIndexViewModel()
                {
                    GradeViews = getAllGradesResponse.GradeViews,
                }));
            }
            else
            {
                ModelState.AddModelError(string.Empty, "Loading Error");
                return(View("Index"));
            }
        }
예제 #9
0
        public IHttpActionResult Get()
        {
            var grades = _gradeService.GetAll();

            return(Ok(grades
                      .Select(g =>
            {
                return GetGradeDto(g);
            })));
        }
예제 #10
0
        public IActionResult GetAllGrades()
        {
            var result = _gradeService.GetAll();

            if (result.Success)
            {
                return(Ok(result));
            }

            return(BadRequest(result));
        }
예제 #11
0
 public ActionResult Index()
 {
     try
     {
         return(View(Mapper.Map <IEnumerable <GradeViewModel> >(_gradeService.GetAll())));
     }
     catch (Exception ex)
     {
         return(JavaScript($"ShowResult('{ex.Message}','failure')"));
     }
 }
예제 #12
0
        public IActionResult Get()
        {
            IEnumerable <GradeDTO> gradeDTO  = gradeService.GetAll();
            List <GradeViewModel>  gradeList = new List <GradeViewModel>();

            ViewBag.Teachers = Map(teacherService.GetAll());
            foreach (var grade in gradeDTO)
            {
                gradeList.Add(Map(grade));
            }
            return(View("index", gradeList));
        }
예제 #13
0
        public void BindGradeList(long id)
        {
            if (id == 0)
            {
                ViewBag.GradeList = _gradeService.GetAll().Where(a => a.IsDelete == false).Select(a =>
                                                                                                  new SelectListItem()
                {
                    Value = a.Id.ToString(),
                    Text  = a.Name,
                }).OrderBy(a => a.Text).ToList();
            }
            else
            {
                ViewBag.GradeList = _gradeService.GetAll().Where(a => a.IsDelete == false).Select(a =>
                                                                                                  new SelectListItem()
                {
                    Selected = long.Equals(a.Id, id),

                    Value = a.Id.ToString(),
                    Text  = a.Name,
                }).OrderBy(a => a.Text).ToList();
            }
        }
예제 #14
0
        public IEnumerable <Grade> Get()
        {
            var grade = new Grade()
            {
                Title   = "اول",
                Courses = new List <Course>()
                {
                    new Course()
                    {
                        Title = "فارسی"
                    },
                    new Course()
                    {
                        Title = "ریاضی"
                    }
                }
            };
            var result = _gradeService.Add(grade);

            return(_gradeService.GetAll());
        }
예제 #15
0
        public IActionResult Index(string Surname, int?Age, string GradeName)
        {
            GradeViewModel grade = String.IsNullOrEmpty(GradeName) == false?Map(gradeService.GetAll().Where(x => x.Name == GradeName).FirstOrDefault()) : null;

            IEnumerable <PupilDTO> PupilDTO  = pupilService.GetAll();
            List <PupilViewModel>  pupilList = new List <PupilViewModel>();

            foreach (var pupil in PupilDTO)
            {
                bool ok = true;
                if (!String.IsNullOrEmpty(Surname))
                {
                    if (!pupil.Surname.ToLower().Contains(Surname.ToLower()))
                    {
                        ok = false;
                    }
                }
                if (Age != null)
                {
                    if (pupil.Age != Age)
                    {
                        ok = false;
                    }
                }
                if (grade != null)
                {
                    if (pupil.GradePropId != grade.Id)
                    {
                        ok = false;
                    }
                }
                if (ok)
                {
                    pupilList.Add(Map(pupil));
                }
            }
            return(View("View", pupilList));
        }
예제 #16
0
 public IQueryable <Grade> GetAll()
 {
     return(_server.GetAll());
 }
예제 #17
0
 // GET: Grades
 public ActionResult Index()
 {
     return(View(gradeService.GetAll()));
 }
예제 #18
0
        public ActionResult Create(ReportTemplateViewModel report)
        {
            if (ModelState.IsValid)
            {
                string path = System.Web.HttpContext.Current.Server.MapPath("~/Content/Uploads/");
                if (System.IO.File.Exists(path + report.ReportLink))
                {
                    System.IO.File.Delete(path + report.ReportLink);
                }

                var student = userService.Get(report.ID);

                #region Activity
                double          period     = (student.Group.End - student.Group.Start).TotalDays;
                List <Activity> activities = activityService.GetAll().Where(x => x.User.ID == report.ID).ToList();
                int             count      = activities.Count();
                double          percent    = 0;
                if (period > 0)
                {
                    percent = (count / period) * 100;
                }
                #endregion
                #region Test
                List <Grade> grades = gradeService.GetAll().Where(x => x.UserID == report.ID).ToList();
                List <Test>  tests  = new List <Test>();
                foreach (var section in groupSectionService.GetAll().Where(x => x.GroupID == student.GroupID))
                {
                    tests.AddRange(testService.GetAll().Where(x => x.SectionID == section.SectionID));
                }
                Dictionary <Test, double> gradesTests = new Dictionary <Test, double>();
                foreach (var test in tests)
                {
                    foreach (var grade in grades)
                    {
                        if (grade.TestID == test.ID)
                        {
                            gradesTests.Add(test, grade.Value);
                            break;
                        }
                    }
                    if (!gradesTests.ContainsKey(test))
                    {
                        gradesTests.Add(test, 0);
                    }
                }
                #endregion
                #region Task
                List <UserTask> taskGrades = userTaskService.GetAll().Where(x => x.UserID == report.ID).ToList();
                List <Task>     tasks      = new List <Task>();
                foreach (var section in groupSectionService.GetAll().Where(x => x.GroupID == student.GroupID))
                {
                    tasks.AddRange(taskService.GetAll().Where(x => x.SectionID == section.SectionID));
                }
                Dictionary <Task, double> gradesTasks = new Dictionary <Task, double>();
                foreach (var task in tasks)
                {
                    foreach (var grade in taskGrades)
                    {
                        if (grade.TaskID == task.ID)
                        {
                            double normalize;
                            switch (grade.Grade)
                            {
                            case "Отлично":
                                normalize = 1;
                                break;

                            case "Хорошо":
                                normalize = 0.75;
                                break;

                            case "Удовлетворительно":
                                normalize = 0.5;
                                break;

                            case "Неудовлетворительно":
                                normalize = 0.25;
                                break;

                            default:
                                normalize = 0;
                                break;
                            }

                            gradesTasks.Add(task, normalize);
                            break;
                        }
                    }
                    if (!gradesTasks.ContainsKey(task))
                    {
                        gradesTasks.Add(task, 0);
                    }
                }
                #endregion

                Report result = new Report
                {
                    Link = CreatePDF(student, gradesTests, gradesTasks, percent, report.Review, activities)
                };
                var oldReport = student.Report;
                student.Report = result;
                userService.Edit(student);
                if (oldReport != null && oldReport.ID != 0)
                {
                    reportService.Delete(oldReport);
                }
                return(RedirectToAction("Index"));
            }
            ViewBag.ID = new SelectList(userService.GetAll().Where(x => x.Role.Value.Equals("Студент")), "ID", "Surname");
            return(View(report));
        }
예제 #19
0
        public async Task <IActionResult> GetGrades()
        {
            var exams = await gradeService.GetAll();

            return(Ok(exams));
        }