Ejemplo n.º 1
0
        /// <summary>
        /// 获取学生缺课的课次信息
        /// <para>作    者:Huang GaoLiang </para>
        /// <para>创建时间:2019-03-12 </para>
        /// </summary>
        /// <param name="replenishWeekClassTime">学生缺课查询条件</param>
        /// <returns>返回学生缺课信息</returns>
        private List <ViewStudentTimeLess> GetStudentMissClassList(ReplenishWeekClassTimeAddRequest replenishWeekClassTime)
        {
            StudentLessonInDto search = new StudentLessonInDto
            {
                StudentId = replenishWeekClassTime.StudentId,
                ClassId   = replenishWeekClassTime.ClassId,
                SchoolId  = this._schoolId,
                TeacherId = this._teacherId,
                TermId    = replenishWeekClassTime.TermId,
                CourseId  = replenishWeekClassTime.CourseId
            };
            List <ViewStudentTimeLess> studentTimeLessList = new ViewStudentTimeLessRepository().GetStudentTimeLessList(search);

            return(studentTimeLessList);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 根据条件查询补课周补课分页列表
        /// <para>作    者:Huang GaoLiang</para>
        /// <para>创建时间:2019-03-13</para>
        /// </summary>
        /// <param name="search">补课周补课分页查询条件</param>
        /// <returns>返回补课周补课分页列表</returns>
        public List <ViewStudentTimeLess> GetStudentTimeLessList(StudentLessonInDto search)
        {
            #region sql

            string querySql = @"SELECT 
	                            ts.LessonId,
                                ts.StudentId,
	                            tl.ClassId,
                                c.ClassNo,
                                c.TeacherId,
                                tl.TermId,
                                tl.CourseId,
	                            tl.EnrollOrderItemId,
	                            tl.CourseLevelId,
                                tl.ClassDate,
                                tl.ClassBeginTime
                        FROM dbo.TblTimLessonStudent ts
                            INNER JOIN TblTimLesson tl ON tl.LessonId = ts.LessonId
                            INNER JOIN dbo.TblDatClass c ON tl.ClassId = c.ClassId
                            INNER JOIN dbo.TblDatTerm t ON tl.TermId = t.TermId
                        WHERE ts.StudentId=@StudentId
	                          AND ts.SchoolId = @SchoolId
                              AND c.TeacherId = @TeacherId
                              AND t.TermId = @TermId
                              AND ts.AttendStatus IN ( 0, 2 )
                              AND ts.AdjustType IN ( 0 )
                              AND tl.ClassDate <= GETDATE()
	                          AND tl.CourseId=@CourseId
                              AND tl.ClassId=@ClassId
                        UNION
                        SELECT tl.LessonId,
                                tl.StudentId,
	                            tl.ClassId,
                                c.ClassNo,
                                c.TeacherId,
                                tl.TermId,
                                tl.CourseId,
	                            tl.EnrollOrderItemId,
	                            tl.CourseLevelId,
                                tl.ClassDate,
                                tl.ClassBeginTime
                        FROM TblTimLesson tl
                            INNER JOIN TblTimReplenishLesson rl ON tl.LessonId = rl.LessonId
                            INNER JOIN dbo.TblDatClass c ON tl.ClassId = c.ClassId
                            INNER JOIN dbo.TblDatTerm t ON tl.TermId = t.TermId
                        WHERE tl.StudentId=@StudentId
	                        AND rl.SchoolId = @SchoolId
                            AND c.TeacherId = @TeacherId
                            AND t.TermId = @TermId
                            AND rl.AttendStatus IN ( 0, 2 )
                            AND rl.AdjustType =0
                            AND tl.ClassDate <= GETDATE()
	                        AND tl.CourseId=@CourseId
                            AND tl.ClassId=@ClassId";
            #endregion

            var studentTimeLess = base.CurrentContext.ViewStudentTimeLess.FromSql(querySql, new SqlParameter[] {
                new SqlParameter("@StudentId", search.StudentId),
                new SqlParameter("@ClassId", search.ClassId),
                new SqlParameter("@SchoolId", search.SchoolId),
                new SqlParameter("@TeacherId", search.TeacherId),
                new SqlParameter("@TermId", search.TermId),
                new SqlParameter("@CourseId", search.CourseId)
            }).AsNoTracking()
                                  .OrderBy(m => m.ClassDate)
                                  .ThenBy(m => m.ClassBeginTime)
                                  .ToList();

            return(studentTimeLess);
        }