Exemple #1
0
        /// <summary>
        /// 学生管理列表
        /// <para>作    者: Huang GaoLiang</para>
        /// <para>创建时间: 2018-10-29</para>
        /// </summary>
        /// <param name="req">查询条件</param>
        /// <param name="schoolId">校区编号</param>
        /// <param name="pageIndex">当前页</param>
        /// <param name="pageSize">每页大小</param>
        /// <returns>返回学生分页数据</returns>
        public PageResult <ViewStudent> GetViewStudentList(StudentListSearchRequest req, string schoolId, int pageIndex, int pageSize)
        {
            var querySql = $@"SELECT s.StudentId,
                                   s.StudentNo,
                                   s.StudentName,
                                   s.Sex,
                                   s.Birthday,
                                   s.LinkMobile,
                                   s.HeadFaceUrl,
                                   s.ContactPersonMobile,
                                   c.SchoolId,
                                   c.StudyStatus,
                                   c.RemindClassTimes,
                                   s.CreateTime
                            FROM dbo.TblCstStudent s
                                INNER JOIN dbo.TblCstSchoolStudent c
                                    ON c.StudentId = s.StudentId
                            WHERE c.SchoolId =@SchoolId";
            var student  = base.CurrentContext.ViewStudent.FromSql(querySql, new object[]
            {
                new SqlParameter("@SchoolId", schoolId)
            });
            var query = student.WhereIf(req.StudySatus > 0, x => x.StudyStatus == req.StudySatus)
                        .WhereIf(req.LessonCount > 0, x => x.RemindClassTimes < req.LessonCount)
                        .WhereIf(!string.IsNullOrWhiteSpace(req.KeyWord), x => x.StudentName.Contains(req.KeyWord) || x.ContactPersonMobile.StartsWith(req.KeyWord))        //关键字(学生姓名/手机号)
                        .OrderBy(m => m.RemindClassTimes)
                        .ThenBy(m => m.StudentNo)
                        .ToPagerSource(pageIndex, pageSize);

            return(query);
        }
Exemple #2
0
        /// <summary>
        /// 根据查询条件获取学生管理列表
        /// <para>作     者:Huang GaoLiang </para>
        /// <para>创建时间: 2019-11-06 </para>
        /// </summary>
        /// <param name="req">查询学生查询条件</param>
        /// <param name="pageIndex">当前页</param>
        /// <param name="pageSize">每页大小</param>
        /// <returns>返回学生分页数据</returns>
        public PageResult <StudentListResponse> GetStudentPageList(StudentListSearchRequest req, int pageIndex, int pageSize)
        {
            PageResult <ViewStudent>         studentList = new ViewStudentRepository().GetViewStudentList(req, _schoolId, pageIndex, pageSize);
            PageResult <StudentListResponse> list        = Mapper.Map <PageResult <ViewStudent>, PageResult <StudentListResponse> >(studentList);

            foreach (var item in list.Data)
            {
                item.ContactPersonMobile = string.IsNullOrEmpty(item.ContactPersonMobile) ? "" : Regex.Replace(item.ContactPersonMobile, "(\\d{3})\\d{4}(\\d{4})", "$1****$2");
                item.Age = Age.GetAgeByBirthday(item.Birthday);
            }
            return(list);
        }
Exemple #3
0
 public PageResult <StudentListResponse> GetStudentList([FromQuery] StudentListSearchRequest req, int pageIndex, int pageSize)
 {
     return(new StudentService(base.SchoolId).GetStudentPageList(req, pageIndex, pageSize));
 }