public ActionResult <StaffClassRelateResModel> getRelateFromStaffToClass(StaffClassRelateSearchViewModel staffClassRelateSearchView)
        {
            StaffClassRelateResModel staffClassRelateResModel = new StaffClassRelateResModel();
            var result = _facultystaffService.GetRelateToClassInfo(staffClassRelateSearchView);

            staffClassRelateResModel.IsSuccess = true;
            staffClassRelateResModel.staffClassMiddleModels = result;
            staffClassRelateResModel.TotalNum = result.Count();
            staffClassRelateResModel.baseViewModel.Message      = "查询成功";
            staffClassRelateResModel.baseViewModel.ResponseCode = 200;

            return(Ok(staffClassRelateResModel));
        }
        public Expression <Func <Health_Info, bool> > GetByModelWhere(StaffClassRelateSearchViewModel staffClassRelateSearchView)
        {
            var predicate = WhereExtension.True <Health_Info>();//初始化where表达式

            //姓名
            predicate = predicate.And(p => p.Student_Info.ClassCode.Contains(staffClassRelateSearchView.ClassCode));
            predicate = predicate.And(p => p.Student_Info.GradeCode.Contains(staffClassRelateSearchView.GradeCode));
            predicate = predicate.And(p => p.Name.Contains(staffClassRelateSearchView.Name));
            predicate = predicate.And(p => p.IdNumber.Contains(Dtol.Helper.MD5.Md5Hash(staffClassRelateSearchView.IdNumber)));

            predicate = predicate.And(p => p.IsHot.Contains(staffClassRelateSearchView.IsHot));
            predicate = predicate.And(p => p.IsComeSchool.Contains(staffClassRelateSearchView.isSchool));
            predicate = predicate.And(p => p.Createdate.ToString().Contains(staffClassRelateSearchView.CreateDate == null ? "" : staffClassRelateSearchView.CreateDate.Value.ToString("yyyy-MM-dd")));
            return(predicate);
        }
        public List <StaffClassMiddleModel> GetStudentsByStaff(StaffClassRelateSearchViewModel staffClassRelateSearchView)
        {
            int SkipNum          = staffClassRelateSearchView.pageViewModel.CurrentPageNum * staffClassRelateSearchView.pageViewModel.PageSize;
            var preciaateStudent = GetByModelWhere(staffClassRelateSearchView);
            List <StaffClassMiddleModel> staffClassMiddleModel = new List <StaffClassMiddleModel>();

            //List<Student_Info> student_Infos = new List<Student_Info>();
            //List<Health_Info> Health_Info = new List<Health_Info>();
            if (staffClassRelateSearchView.RoleID == "sys")
            {
                var tempresult = Db.Health_Info.Where(preciaateStudent).Where(info => info.Student_InfoId != null)
                                 .Select(a => new StaffClassMiddleModel
                {
                    SchoolName          = a.Student_Info.SchoolName,
                    ClassName           = a.Student_Info.ClassName,
                    GradeName           = a.Student_Info.GradeName,
                    Name                = a.Student_Info.Name,
                    Createdate          = a.Createdate,
                    IsComeSchool        = a.IsComeSchool,
                    IdNumber            = Dtol.Helper.MD5.Decrypt(a.IdNumber),
                    id                  = a.id,
                    IsFamilyHot         = a.IsFamilyHot,
                    IsFamilyThroat      = a.IsFamilyThroat,
                    IsFamilyWeakt       = a.IsFamilyWeakt,
                    IsHot               = a.IsHot,
                    IsThroat            = a.IsThroat,
                    IsTouch             = a.IsTouch,
                    IsWeak              = a.IsWeak,
                    IsAggregate         = a.IsAggregate,
                    IsAggregateContain  = a.IsAggregateContain,
                    IsTianJin           = a.IsTianJin,
                    Temperature         = a.Temperature,
                    NotComeSchoolReason = a.NotComeSchoolReason,
                    IsBulu              = a.IsBulu,
                    Student_InfoId      = a.Student_Info.id
                })
                                 .ToList();
                staffClassMiddleModel.AddRange(tempresult);
            }
            else
            {
                var searchResult = DbSet
                                   .Where(a => a.facultystaff_InfoId == staffClassRelateSearchView.UserKeyId)
                                   .Include(a => a.Class_Info).ToList();
                for (int i = 0; i < searchResult.Count(); i++)
                {
                    var tempresult = Db.Health_Info.Where(a => a.Student_Info.class_InfoId == searchResult[i].Class_InfoId)
                                     .Where(preciaateStudent)
                                     .Select(a => new StaffClassMiddleModel
                    {
                        SchoolName          = a.Student_Info.SchoolName,
                        ClassName           = a.Student_Info.ClassName,
                        GradeName           = a.Student_Info.GradeName,
                        Name                = a.Student_Info.Name,
                        Createdate          = a.Createdate,
                        IsComeSchool        = a.IsComeSchool,
                        IdNumber            = Dtol.Helper.MD5.Decrypt(a.IdNumber),
                        id                  = a.id,
                        IsFamilyHot         = a.IsFamilyHot,
                        IsFamilyThroat      = a.IsFamilyThroat,
                        IsFamilyWeakt       = a.IsFamilyWeakt,
                        IsHot               = a.IsHot,
                        IsThroat            = a.IsThroat,
                        IsTouch             = a.IsTouch,
                        IsWeak              = a.IsWeak,
                        IsAggregate         = a.IsAggregate,
                        IsAggregateContain  = a.IsAggregateContain,
                        IsTianJin           = a.IsTianJin,
                        Temperature         = a.Temperature,
                        NotComeSchoolReason = a.NotComeSchoolReason,
                        IsBulu              = a.IsBulu,
                        Student_InfoId      = a.Student_Info.id
                    })

                                     .ToList();
                    staffClassMiddleModel.AddRange(tempresult);
                }
            }

            return(staffClassMiddleModel.Distinct().OrderByDescending(o => o.Createdate).Skip(SkipNum)
                   .Take(staffClassRelateSearchView.pageViewModel.PageSize)
                   .ToList());
        }
 public List <StaffClassMiddleModel> GetRelateToClassInfo(StaffClassRelateSearchViewModel staffClassRelateSearchView)
 {
     //var searchResult = staffClassRelateRepository.GetStudentsByStaff(staffClassRelateSearchView);
     //var result = _IMapper.Map<List<Health_Info>, List<StaffClassMiddleModel>>(searchResult);
     return(staffClassRelateRepository.GetStudentsByStaff(staffClassRelateSearchView));
 }