Exemple #1
0
 public ActionResult List(Models.QualitySelf.List vm)
 {
     return(Code.MvcHelper.Post(null, Url.Action("List", new { yearId = vm.YearId, classId = vm.ClassId, })));
 }
Exemple #2
0
        public ActionResult List()
        {
            if (Code.Common.UserType != Code.EnumHelper.SysUserType.Administrator && Code.Common.UserType != Code.EnumHelper.SysUserType.Teacher)
            {
                return(Content(Code.Common.Redirect(Url.Action("Index", "SysIndex", new { area = "Sys" }), "当前身份类别无法访问该功能!")));
            }

            using (var db = new XkSystem.Models.DbContext())
            {
                var vm = new Models.QualitySelf.List();

                //获取学期信息
                vm.YearList = Basis.Controllers.YearController.SelectList(Code.EnumHelper.YearType.Term);
                //获取当前激活学段
                var section = (from p in db.Table <Basis.Entity.tbYear>()
                               .Include(d => d.tbYearParent)
                               where p.IsDeleted == false &&
                               p.IsDefault == true &&
                               (vm.YearId == 0 ? true : p.tbYearParent.Id == vm.YearId)
                               select p).FirstOrDefault();
                if (vm.YearList.Count > 0 && vm.YearId == 0)
                {
                    vm.YearId = vm.YearList.Where(d => (section != null ? d.Value == section.tbYearParent.Id.ToString() : true)).FirstOrDefault().Value.ConvertToInt();
                }
                //获取学年信息
                var yearId = (from p in db.Table <Basis.Entity.tbYear>()
                              where p.Id == vm.YearId
                              select p.tbYearParent.Id).FirstOrDefault();

                //获取教师所在行政班信息
                vm.ClassList = (from p in db.Table <Basis.Entity.tbClassTeacher>()
                                where p.IsDeleted == false &&
                                p.tbClass.IsDeleted == false &&
                                p.tbTeacher.IsDeleted == false &&
                                p.tbTeacher.tbSysUser.IsDeleted == false &&
                                p.tbClass.tbGrade.IsDeleted == false &&
                                p.tbClass.tbYear.IsDeleted == false &&
                                p.tbClass.tbYear.Id == yearId &&
                                p.tbTeacher.tbSysUser.Id == Code.Common.UserId
                                select new System.Web.Mvc.SelectListItem()
                {
                    Text = p.tbClass.ClassName,
                    Value = p.tbClass.Id.ToString(),
                }).Distinct().ToList();
                //默认取第一个行政班Id去查询后面数据
                if (vm.ClassId == 0 && vm.ClassList.Count > 0)
                {
                    vm.ClassId = vm.ClassList.FirstOrDefault().Value.ConvertToInt();
                }

                //获取学生所在行政班信息
                var studentList = (from p in db.Table <Basis.Entity.tbClassStudent>()
                                   .Include(d => d.tbStudent)
                                   where p.IsDeleted == false &&
                                   p.tbClass.IsDeleted == false &&
                                   p.tbStudent.IsDeleted == false &&
                                   p.tbStudent.tbSysUser.IsDeleted == false &&
                                   p.tbClass.Id == vm.ClassId
                                   select p).ToList();

                var studentIdList = studentList.Select(d => d.tbStudent.Id).ToList();
                //自评
                var selfList = (from p in db.Table <Quality.Entity.tbQualitySelf>()
                                .Include(d => d.tbStudent)
                                where p.IsDeleted == false &&
                                p.tbYear.IsDeleted == false &&
                                studentIdList.Contains(p.tbStudent.Id) &&
                                p.tbYear.Id == vm.YearId
                                select new Dto.QualitySelf.Input
                {
                    Id = p.tbStudent.Id,
                }).ToList();
                //学期期待
                var planList = (from p in db.Table <Quality.Entity.tbQualityPlan>()
                                .Include(d => d.tbStudent)
                                where p.IsDeleted == false &&
                                p.tbYear.IsDeleted == false &&
                                studentIdList.Contains(p.tbStudent.Id) &&
                                p.tbYear.Id == vm.YearId
                                select new Dto.QualitySelf.Input
                {
                    Id = p.tbStudent.Id,
                }).ToList();
                //学期总结
                var summaryList = (from p in db.Table <Quality.Entity.tbQualitySummary>()
                                   .Include(d => d.tbStudent)
                                   where p.IsDeleted == false &&
                                   p.tbYear.IsDeleted == false &&
                                   studentIdList.Contains(p.tbStudent.Id) &&
                                   p.tbYear.Id == vm.YearId
                                   select new Dto.QualitySelf.Input
                {
                    Id = p.tbStudent.Id,
                }).ToList();
                vm.QualitySelfList = (from p in studentList
                                      select new Dto.QualitySelf.List
                {
                    Id = p.tbStudent.Id,
                    StudentCode = p.tbStudent.StudentCode,
                    StudentName = p.tbStudent.StudentName,
                    SelfName = selfList.Where(d => d.Id == p.tbStudent.Id).FirstOrDefault() != null ? "已评" : "未评",
                    PlanName = planList.Where(d => d.Id == p.tbStudent.Id).FirstOrDefault() != null ? "已评" : "未评",
                    SummaryName = summaryList.Where(d => d.Id == p.tbStudent.Id).FirstOrDefault() != null ? "已评" : "未评",
                }).ToList();

                return(View(vm));
            }
        }