|
@@ -47,6 +47,25 @@
|
|
|
<result property="createBy" column="create_by"/>
|
|
|
</resultMap>
|
|
|
|
|
|
+ <resultMap type="com.zhongzheng.modules.grade.vo.ClassPeriodStudentVo" id="ClassPeriodStudentVo">
|
|
|
+ <result property="userId" column="user_id"/>
|
|
|
+ <result property="gradeId" column="grade_id"/>
|
|
|
+ <result property="studentCode" column="student_code"/>
|
|
|
+ <result property="realName" column="realname"/>
|
|
|
+ <result property="idCard" column="id_card"/>
|
|
|
+ <result property="telPhone" column="telphone"/>
|
|
|
+ <result property="userStatus" column="user_status"/>
|
|
|
+ <result property="status" column="status"/>
|
|
|
+ <result property="classHours" column="class_hours"/>
|
|
|
+ <result property="periodStatus" column="period_status"/>
|
|
|
+ <result property="finishStatus" column="finish_status"/>
|
|
|
+ <result property="officialStatus" column="official_status"/>
|
|
|
+ <result property="learnStatus" column="learn_status"/>
|
|
|
+ <result property="secAllNum" column="sec_all_num"/>
|
|
|
+ <result property="examNum" column="exam_num"/>
|
|
|
+ <result property="recordNum" column="record_num"/>
|
|
|
+ </resultMap>
|
|
|
+
|
|
|
<select id="select" parameterType="com.zhongzheng.modules.grade.bo.ClassGradeUserQueryBo"
|
|
|
resultMap="ClassGradeUserVoResult">
|
|
|
SELECT
|
|
@@ -107,4 +126,42 @@
|
|
|
</if>
|
|
|
order by u.update_time desc
|
|
|
</select>
|
|
|
+
|
|
|
+
|
|
|
+ <select id="listUserPeriod" parameterType="com.zhongzheng.modules.grade.bo.ClassGradeUserQueryBo" resultMap="ClassPeriodStudentVo">
|
|
|
+ SELECT
|
|
|
+ u.student_code,
|
|
|
+ u.user_id,
|
|
|
+ cgu.`status`,
|
|
|
+ u.realname,
|
|
|
+ (SELECT cgg.goods_id FROM class_grade_goods cgg where cg.grade_id=cgg.grade_id) as goods_id,
|
|
|
+ u.id_card,
|
|
|
+ cgu.grade_id,
|
|
|
+ u.telphone,
|
|
|
+ (case WHEN (select COUNT(uu.id) FROM user_update uu where cgu.user_id = uu.user_id) >0 then 1 ELSE 0 end) as user_status,
|
|
|
+ (SELECT g.class_hours FROM goods g LEFT JOIN class_grade_goods cgg on cgg.goods_id = g.goods_id where cg.grade_id = cgg.grade_id) as class_hours,
|
|
|
+ cgu.period_status,
|
|
|
+ cgu.finish_status,
|
|
|
+ (SELECT g.study_start_time FROM goods g LEFT JOIN class_grade_goods cgg on cgg.goods_id = g.goods_id where cg.grade_id = cgg.grade_id) as study_start_time,
|
|
|
+ (SELECT g.study_end_time FROM goods g LEFT JOIN class_grade_goods cgg on cgg.goods_id = g.goods_id where cg.grade_id = cgg.grade_id) as study_end_time,
|
|
|
+ cg.class_start_time,
|
|
|
+ cg.class_end_time,
|
|
|
+ cgu.official_status,
|
|
|
+ cgu.learn_status,
|
|
|
+ (SELECT COUNT(m.id) FROM course_menu_exam m LEFT JOIN goods_course c on m.course_id=c.course_id LEFT JOIN class_grade_goods cgg on cgg.goods_id = c.goods_id where cg.grade_id=cgg.grade_id and m.type = 1 ) as exam_num,
|
|
|
+ (SELECT COUNT(DISTINCT ubr.record_id) FROM user_bank_record ubr LEFT JOIN class_grade_goods cgg on cgg.goods_id = ubr.goods_id where ubr.`status`=1) as record_num
|
|
|
+ FROM
|
|
|
+ class_grade_user cgu
|
|
|
+ LEFT JOIN class_grade cg ON cgu.grade_id = cg.grade_id
|
|
|
+ LEFT JOIN `user` u ON u.user_id = cgu.user_id
|
|
|
+ where 1=1
|
|
|
+ and cgu.`status` =1
|
|
|
+ <if test="gradeId != null and gradeId !='' ">
|
|
|
+ and cgu.grade_id = #{gradeId}
|
|
|
+ </if>
|
|
|
+ order by cgu.update_time
|
|
|
+ </select>
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
</mapper>
|