/// <summary> /// 获取写生课列表 /// <para>作 者:郭伟佳</para> /// <para>创建时间:2019-01-17</para> /// </summary> /// <param name="searcher">写生列表查询条件</param> /// <returns>写生课信息分页列表</returns> public PageResult <LifeClassListResponse> GetPagerList(LifeClassListSearchRequest searcher) { var result = new PageResult <LifeClassListResponse>() { Data = new List <LifeClassListResponse>() }; var lifeClassList = _tblTimLifeClassRepository.Value.GetLifeClassListAsync(this._schoolId, searcher); if (lifeClassList != null && lifeClassList.Data != null && lifeClassList.Data.Count > 0) { var teacherInfo = EmployeeService.GetAllBySchoolId(this._schoolId); List <long> businessIdList = lifeClassList.Data.Select(a => a.LifeClassId).ToList(); var studentLessonInfo = _tblTimLessonRepository.Value.GetStudentLessonListAsync(this._schoolId, businessIdList); result.Data = lifeClassList.Data.Select(a => new LifeClassListResponse { LifeTimeId = a.LifeClassId, Title = a.Title, ClassBeginDate = a.ClassBeginTime.Value, ClassEndTime = a.ClassEndTime.Value, LifeClassCode = a.LifeClassCode, PersonNumber = studentLessonInfo.Count(s => s.BusinessId == a.LifeClassId && s.BusinessType == (int)LessonBusinessType.LifeClassMakeLesson && s.Status == (int)LessonUltimateStatus.Normal), Place = a.Place, TeacherId = a.TeacherId, TeacherName = teacherInfo.FirstOrDefault(t => t.EmployeeId == a.TeacherId)?.EmployeeName, UseLessonCount = a.UseLessonCount }).ToList(); result.CurrentPage = lifeClassList.CurrentPage; result.PageSize = lifeClassList.PageSize; result.TotalData = lifeClassList.TotalData; } return(result); }
/// <summary> /// 根据校区Id和请求参数分页获取写生课排课分页列表 /// <para>作 者:郭伟佳</para> /// <para>创建时间:2018-11-07</para> /// </summary> /// <param name="schoolId">校区Id</param> /// <param name="request">写生列表查询条件</param> /// <returns>写生课排课分页列表</returns> public PageResult <TblTimLifeClass> GetLifeClassListAsync(string schoolId, LifeClassListSearchRequest request) { var query = LoadQueryable().Where(a => a.SchoolId == schoolId && a.TermId == request.TermId && (string.IsNullOrEmpty(request.Title) || a.Title.Contains(request.Title))) .OrderBy(a => a.ClassBeginTime); return(query.ToPagerSource(request.PageIndex, request.PageSize)); }
public PageResult <LifeClassListResponse> Get([FromQuery] LifeClassListSearchRequest searcher) { return(new LifeClassService(base.SchoolId).GetPagerList(searcher)); }