Exemple #1
0
 public ActionResult List(Models.StudyData.List vm)
 {
     return(Code.MvcHelper.Post(null, Url.Action("List", new
     {
         searchText = vm.SearchText,
         studyId = vm.StudyId,
         roomOrClassId = vm.RoomOrClassId,
         dateSearch = vm.DateSearch
     })));
 }
Exemple #2
0
        public ActionResult List()
        {
            using (var db = new XkSystem.Models.DbContext())
            {
                var vm = new Models.StudyData.List();

                vm.StudyList = Controllers.StudyController.SelectList();

                if (string.IsNullOrEmpty(vm.DateSearch))
                {
                    vm.DateSearch = DateTime.Now.AddDays(0).ToString("yyyy-MM-dd");
                }

                var vDateSearch = Convert.ToDateTime(vm.DateSearch);

                if (vm.StudyId == 0 && vm.StudyList.Count > 0)
                {
                    vm.StudyId = vm.StudyList.FirstOrDefault().Value.ConvertToInt();
                }

                var tbStudy = (from p in db.Table <Study.Entity.tbStudy>()
                               where p.Id == vm.StudyId &&
                               p.tbYear.IsDeleted == false
                               select p).FirstOrDefault();

                if (tbStudy != null)
                {
                    vm.IsRoomType = tbStudy.IsRoom;//赋值自习模式

                    var tbStudyDataList = from p in db.Table <Study.Entity.tbStudyData>()
                                          where p.InputDate.Day == vDateSearch.Day &&
                                          p.tbStudy.Id == vm.StudyId &&
                                          p.tbStudent.IsDeleted == false &&
                                          p.tbStudyOption.IsDeleted == false &&
                                          p.tbSysUser.IsDeleted == false
                                          select p;
                    //教室模式
                    if (tbStudy.IsRoom)
                    {
                        vm.RoomOrClassList = Controllers.StudyRoomController.SelectList(vm.StudyId);
                        vm.RoomOrClassList.Insert(0, new SelectListItem {
                            Text = "", Value = "0"
                        });

                        var tb = from p in db.Table <Study.Entity.tbStudyRoomStudent>()
                                 where p.tbStudy.Id == vm.StudyId && p.tbRoom.Id == vm.RoomOrClassId &&
                                 p.tbStudy.IsDeleted == false &&
                                 p.tbRoom.IsDeleted == false &&
                                 p.tbStudent.IsDeleted == false
                                 select p;

                        if (string.IsNullOrEmpty(vm.SearchText) == false)
                        {
                            tb = tb.Where(d => d.tbStudent.StudentCode.Contains(vm.SearchText) || d.tbStudent.StudentName.Contains(vm.SearchText));
                        }

                        vm.StudyDataList = (from p in tb
                                            orderby p.tbStudent.StudentCode
                                            select new Dto.StudyData.List
                        {
                            Id = tbStudyDataList.Where(d => d.InputDate.Day == vDateSearch.Day && d.tbStudent.Id == p.tbStudent.Id).Select(d => d.Id).FirstOrDefault(),
                            InputDate = vDateSearch,
                            RoomName = p.tbRoom.RoomName,
                            StudentCode = p.tbStudent.StudentCode,
                            StudentName = p.tbStudent.StudentName,
                            SexName = p.tbStudent.tbSysUser.tbSex.SexName,
                            StudentId = p.tbStudent.Id,
                            StudyId = vm.StudyId,
                            StudyOptionName = tbStudyDataList.Where(d => d.InputDate.Day == vDateSearch.Day && d.tbStudent.Id == p.tbStudent.Id).Select(d => d.tbStudyOption.StudyOptionName).FirstOrDefault(),
                            Remark = tbStudyDataList.Where(d => d.InputDate.Day == vDateSearch.Day && d.tbStudent.Id == p.tbStudent.Id).Select(d => d.Remark).FirstOrDefault(),
                            SysUserName = tbStudyDataList.Where(d => d.InputDate.Day == vDateSearch.Day && d.tbStudent.Id == p.tbStudent.Id).Select(d => d.tbSysUser.UserName).FirstOrDefault()
                        }).ToList();
                    }
                    else//班级模式
                    {
                        vm.RoomOrClassList = Controllers.StudyClassController.SelectList(vm.StudyId);
                        vm.RoomOrClassList.Insert(0, new SelectListItem {
                            Text = "", Value = "0"
                        });

                        var tb = from p in db.Table <Study.Entity.tbStudyClassStudent>()
                                 where p.tbStudy.Id == vm.StudyId && p.tbClass.Id == vm.RoomOrClassId &&
                                 p.tbStudy.IsDeleted == false &&
                                 p.tbClass.IsDeleted == false &&
                                 p.tbStudent.IsDeleted == false
                                 select p;

                        if (string.IsNullOrEmpty(vm.SearchText) == false)
                        {
                            tb = tb.Where(d => d.tbStudent.StudentCode.Contains(vm.SearchText) || d.tbStudent.StudentName.Contains(vm.SearchText));
                        }

                        vm.StudyDataList = (from p in tb
                                            orderby p.tbStudent.StudentCode
                                            select new Dto.StudyData.List
                        {
                            Id = tbStudyDataList.Where(d => d.InputDate.Day == vDateSearch.Day && d.tbStudent.Id == p.tbStudent.Id).Select(d => d.Id).FirstOrDefault(),
                            InputDate = vDateSearch,
                            RoomName = p.tbClass.tbRoom.RoomName,
                            StudentCode = p.tbStudent.StudentCode,
                            StudentName = p.tbStudent.StudentName,
                            SexName = p.tbStudent.tbSysUser.tbSex.SexName,
                            StudentId = p.tbStudent.Id,
                            StudyId = vm.StudyId,
                            StudyOptionName = tbStudyDataList.Where(d => d.InputDate.Day == vDateSearch.Day && d.tbStudent.Id == p.tbStudent.Id).Select(d => d.tbStudyOption.StudyOptionName).FirstOrDefault(),
                            Remark = tbStudyDataList.Where(d => d.InputDate.Day == vDateSearch.Day && d.tbStudent.Id == p.tbStudent.Id).Select(d => d.Remark).FirstOrDefault(),
                            SysUserName = tbStudyDataList.Where(d => d.InputDate.Day == vDateSearch.Day && d.tbStudent.Id == p.tbStudent.Id).Select(d => d.tbSysUser.UserName).FirstOrDefault()
                        }).ToList();
                    }
                }
                return(View(vm));
            }
        }