|
|
@@ -3,7 +3,7 @@
|
|
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
|
<mapper namespace="com.xjrsoft.module.banding.mapper.BandingTaskClassStudentMapper">
|
|
|
- <select id="satisfyStudent" resultType="com.xjrsoft.module.student.vo.BaseNewStudentPageVo">
|
|
|
+ <select id="satisfyStudent" parameterType="com.xjrsoft.module.banding.dto.StudentDto" resultType="com.xjrsoft.module.student.vo.BaseNewStudentPageVo">
|
|
|
SELECT t1.id,t1.graduate_school,t1.name,t1.gender,t2.name AS gender_cn,t1.credential_number,t1.height,t1.weight,
|
|
|
t1.score,t1.graduate_class,t6.name as source,t1.stduy_status,t3.name AS stduy_status_cn,t1.mobile,t7.name as first_ambition,
|
|
|
t8.name as second_ambition,t1.is_adjust,t1.status FROM base_new_student t1
|
|
|
@@ -14,10 +14,43 @@
|
|
|
LEFT JOIN enrollment_plan t4 ON t1.enrollment_plan_id = t4.id
|
|
|
LEFT JOIN base_major_set t7 ON t1.first_ambition = t7.id
|
|
|
LEFT JOIN base_major_set t8 ON t1.second_ambition = t8.id
|
|
|
- WHERE t1.delete_mark = 0 AND t5.delete_mark = 0 AND t5.banding_task_class_id = #{bandingTaskClassId}
|
|
|
+ WHERE t1.delete_mark = 0 AND t5.delete_mark = 0 AND t5.banding_task_class_id = #{dto.bandingTaskClassId}
|
|
|
+ <if test="dto.name != null and dto.name != ''">
|
|
|
+ and t1.name like concat('%', #{dto.name},'%')
|
|
|
+ </if>
|
|
|
+ <if test="dto.gender != null and dto.gender != ''">
|
|
|
+ and t1.gender = #{dto.gender}
|
|
|
+ </if>
|
|
|
+ <if test="dto.credentialNumber != null and dto.credentialNumber != ''">
|
|
|
+ and t1.credential_number like concat('%', #{dto.credentialNumber},'%')
|
|
|
+ </if>
|
|
|
+ <if test="dto.order != null">
|
|
|
+ <if test="dto.order == 'ascend'">
|
|
|
+ <if test="dto.field != null and dto.field == 'height'">
|
|
|
+ order by t1.height asc
|
|
|
+ </if>
|
|
|
+ <if test="dto.field != null and dto.field == 'weight'">
|
|
|
+ order by t1.weight asc
|
|
|
+ </if>
|
|
|
+ <if test="dto.field != null and dto.field != '' and dto.field == 'score'">
|
|
|
+ order by t1.score asc
|
|
|
+ </if>
|
|
|
+ </if>
|
|
|
+ <if test="dto.order == 'descend'">
|
|
|
+ <if test="dto.field != null and dto.field == 'height'">
|
|
|
+ order by t1.height desc
|
|
|
+ </if>
|
|
|
+ <if test="dto.field != null and dto.field == 'weight'">
|
|
|
+ order by t1.weight desc
|
|
|
+ </if>
|
|
|
+ <if test="dto.field != null and dto.field != '' and dto.field == 'score'">
|
|
|
+ order by t1.score desc
|
|
|
+ </if>
|
|
|
+ </if>
|
|
|
+ </if>
|
|
|
</select>
|
|
|
|
|
|
- <select id="surplusStudent" parameterType="com.xjrsoft.module.banding.entity.BandingTaskClass" resultType="com.xjrsoft.module.student.vo.BaseNewStudentPageVo">
|
|
|
+ <select id="surplusStudent" parameterType="com.xjrsoft.module.banding.dto.StudentDto" resultType="com.xjrsoft.module.student.vo.BaseNewStudentPageVo">
|
|
|
SELECT t1.id,t1.graduate_school,t1.name,t1.gender,t2.name AS gender_cn,t1.credential_number,t1.height,t1.weight,
|
|
|
t1.score,t1.graduate_class,t6.name as source,t1.stduy_status,t3.name AS stduy_status_cn,t1.mobile,t7.name as first_ambition,
|
|
|
t8.name as second_ambition,t1.is_adjust,t1.status FROM base_new_student t1
|
|
|
@@ -28,11 +61,35 @@
|
|
|
LEFT JOIN xjr_dictionary_detail t6 ON t1.source = t6.code AND t6.item_id = 2023000000000000028
|
|
|
LEFT JOIN base_major_set t7 ON t1.first_ambition = t7.id
|
|
|
LEFT JOIN base_major_set t8 ON t1.second_ambition = t8.id
|
|
|
- WHERE t1.delete_mark = 0 AND t5.id = #{taskClass.bandingTaskId}
|
|
|
- AND (t1.first_ambition_id = #{taskClass.majorSetId} or t1.second_ambition_id = #{taskClass.majorSetId})
|
|
|
+ WHERE t1.delete_mark = 0 AND t5.id = #{dto.bandingTaskId}
|
|
|
+ AND (t1.first_ambition_id = #{dto.majorSetId} or t1.second_ambition_id = #{dto.majorSetId})
|
|
|
and t1.id not in (SELECT new_student_id FROM banding_task_class_student c1
|
|
|
INNER JOIN banding_task_class c2 ON c1.banding_task_class_id = c2.id
|
|
|
- WHERE c1.delete_mark = 0 AND c2.delete_mark = 0 AND c2.banding_task_id = #{taskClass.bandingTaskId}
|
|
|
+ WHERE c1.delete_mark = 0 AND c2.delete_mark = 0 AND c2.banding_task_id = #{dto.bandingTaskId}
|
|
|
)
|
|
|
+ <if test="dto.order != null">
|
|
|
+ <if test="dto.order == 'ascend'">
|
|
|
+ <if test="dto.field != null and dto.field == 'height'">
|
|
|
+ order by t1.height asc
|
|
|
+ </if>
|
|
|
+ <if test="dto.field != null and dto.field == 'weight'">
|
|
|
+ order by t1.weight asc
|
|
|
+ </if>
|
|
|
+ <if test="dto.field != null and dto.field != '' and dto.field == 'score'">
|
|
|
+ order by t1.score asc
|
|
|
+ </if>
|
|
|
+ </if>
|
|
|
+ <if test="dto.order == 'descend'">
|
|
|
+ <if test="dto.field != null and dto.field == 'height'">
|
|
|
+ order by t1.height desc
|
|
|
+ </if>
|
|
|
+ <if test="dto.field != null and dto.field == 'weight'">
|
|
|
+ order by t1.weight desc
|
|
|
+ </if>
|
|
|
+ <if test="dto.field != null and dto.field != '' and dto.field == 'score'">
|
|
|
+ order by t1.score desc
|
|
|
+ </if>
|
|
|
+ </if>
|
|
|
+ </if>
|
|
|
</select>
|
|
|
</mapper>
|