Beispiel #1
0
 public ActionResult ReportClass(Models.PerformComment.ReportClass vm)
 {
     if (vm.ClassId == 0 || vm.ClassId == null)
     {
         return(Code.MvcHelper.Post(null, Url.Action("ReportAll", new { yearId = vm.YearId })));
     }
     else
     {
         return(Code.MvcHelper.Post(null, Url.Action("ReportClass", new { yearId = vm.YearId, classId = vm.ClassId })));
     }
 }
Beispiel #2
0
        public ActionResult ReportClass()
        {
            using (var db = new XkSystem.Models.DbContext())
            {
                var vm = new Models.PerformComment.ReportClass();
                vm.YearList = Basis.Controllers.YearController.SelectList(Code.EnumHelper.YearType.Section);
                if (vm.YearId == 0 && vm.YearList.Count > 0)
                {
                    vm.YearId = vm.YearList.OrderByDescending(d => d.Selected).FirstOrDefault().Value.ConvertToInt();
                }

                vm.ClassList       = Basis.Controllers.ClassController.SelectList(vm.YearId);
                vm.ReportClassList = (from p in db.Table <Basis.Entity.tbClassStudent>()
                                      where p.tbClass.Id == vm.ClassId &&
                                      p.tbStudent.IsDeleted == false &&
                                      (p.tbStudent.StudentCode.Contains(vm.SearchText) || p.tbStudent.StudentName.Contains(vm.SearchText))
                                      orderby p.tbStudent.StudentCode
                                      select new Dto.PerformComment.ReportClass
                {
                    Id = p.Id,
                    StudentId = p.tbStudent.Id,
                    StudentCode = p.tbStudent.StudentCode,
                    StudentName = p.tbStudent.StudentName
                }).ToList();
                var data = (from p in db.Table <Perform.Entity.tbPerformComment>()
                            join q in db.Table <Basis.Entity.tbClassStudent>() on p.tbStudent.Id equals q.tbStudent.Id
                            where p.tbYear.Id == vm.YearId
                            select new
                {
                    StudentId = p.tbStudent.Id,
                    CommentId = p.Id
                }).ToList();
                foreach (var a in vm.ReportClassList)
                {
                    var exist = data.Where(d => d.StudentId == a.StudentId).FirstOrDefault();
                    if (exist != null)
                    {
                        a.Status    = true;
                        a.CommentId = exist.CommentId;
                    }
                }

                return(View(vm));
            }
        }