/// <summary> /// 搜索学习计划信息 /// </summary> /// <param name="pageSize"></param> /// <param name="pageIndex"></param> /// <param name="keyword"></param> /// <param name="status"></param> /// <returns></returns> public PagerModel <StudyPlanResponse> Search(int pageSize, int pageIndex, string keyword, int?status) { StudyPlanSearch search = new StudyPlanSearch(pageIndex, pageSize, keyword, status); var result = search.Search(); var userIds = result.Table.Select(p => p.UserId); var names = UsersAccessor.GetUsernames(userIds); List <StudyPlanResponse> list = new List <StudyPlanResponse>(); foreach (var item in result.Table) { var temp = new StudyPlanResponse(item); string userName = names.ContainsKey(item.UserId) ? names[item.UserId] : string.Empty; temp.Creator = userName; list.Add(temp); } return(new PagerModel <StudyPlanResponse> { Count = result.Count, Index = result.Index, Size = result.Size, Table = list }); }
/// <summary> /// 根据出生日期,生成每季节对应的学习计划 /// <para>作 者:郭伟佳</para> /// <para>创建时间:2018-11-29</para> /// </summary> /// <param name="studyPlanTermList">获取校区学期类型信息</param> /// <param name="birthday">出生日期</param> /// <returns>学生课程计划列表</returns> private List <StudyPlanResponse> GetStudyPlanBySeasons(IEnumerable <TblOdrStudyPlanTerm> studyPlanTermList, DateTime birthday) { List <StudyPlanResponse> result = new List <StudyPlanResponse>(); //学生课程计划列表 var studyPlanList = _repository.Value.GetList(_schoolId).Result; //校区课程信息 List <SeasonType> seasonList = GetSeasonList(); //季节 TblOdrStudyPlanTerm term = null; //报名学习计划学期信息 int year = 0; //年份 int maxValue = 3; //年份界限值 //从当前年份开始,以年份界限进行循环,生成年份的学习计划课程 for (int i = 0; i < maxValue; i++) { year = DateTime.Now.Year + i; var studyPlanTerms = studyPlanTermList.Where(a => a.Year == year); StudyPlanResponse studyPlanResponse = new StudyPlanResponse { Year = year }; //循环四个季节,生成季节的学习计划课程 foreach (var season in seasonList) { switch (season) { case SeasonType.Spring: //春 term = studyPlanTerms.FirstOrDefault(a => a.Year == year && a.TermTypeId == ClientConfigManager.AppsettingsConfig.TermType.Spring); studyPlanResponse.Data.Add(GenerateStudyPlanTerm(term, studyPlanList, birthday, season.ToString())); break; case SeasonType.Summer: //夏 term = studyPlanTerms.FirstOrDefault(a => a.Year == year && a.TermTypeId == ClientConfigManager.AppsettingsConfig.TermType.Summer); studyPlanResponse.Data.Add(GenerateStudyPlanTerm(term, 4, season.ToString())); break; case SeasonType.Autumn: //秋 term = studyPlanTerms.FirstOrDefault(a => a.Year == year && a.TermTypeId == ClientConfigManager.AppsettingsConfig.TermType.Autumn); studyPlanResponse.Data.Add(GenerateStudyPlanTerm(term, studyPlanList, birthday, season.ToString())); break; case SeasonType.Winter: //冬 term = studyPlanTerms.FirstOrDefault(a => a.Year == year && a.TermTypeId == ClientConfigManager.AppsettingsConfig.TermType.Winter); studyPlanResponse.Data.Add(GenerateStudyPlanTerm(term, 3, season.ToString())); break; default: break; } } result.Add(studyPlanResponse); } return(result); }