|
@@ -13,7 +13,7 @@
|
|
|
LEFT JOIN base_student_school_roll t6 ON t1.student_user_id = t6.user_id
|
|
|
LEFT JOIN base_grade t7 ON t6.grade_id = t7.id
|
|
|
LEFT JOIN base_class t8 ON t6.class_id = t8.id
|
|
|
- LEFT JOIN xjr_dictionary_detail t9 ON t1.gender = t9.code AND t9.item_id = 2023000000000000004
|
|
|
+ LEFT JOIN xjr_dictionary_detail t9 ON t2.gender = t9.code AND t9.item_id = 2023000000000000004
|
|
|
<if test="dto.officeBuildId != null">
|
|
|
and t2.office_build_id = #{dto.officeBuildId}
|
|
|
</if>
|
|
@@ -59,9 +59,22 @@
|
|
|
LEFT JOIN base_grade t2 ON t1.grade_id = t2.id
|
|
|
LEFT JOIN xjr_department t3 ON t1.org_id = t3.id
|
|
|
WHERE t1.delete_mark = 0
|
|
|
+ and (
|
|
|
+ SELECT COUNT(*) FROM base_student c1
|
|
|
+ LEFT JOIN base_student_school_roll c2 ON c1.user_id = c2.user_id
|
|
|
+ LEFT JOIN xjr_dictionary_detail c3 ON c2.stduy_status = c3.code AND c3.item_id = 2023000000000000030
|
|
|
+ WHERE c1.delete_mark = 0 AND c2.delete_mark = 0
|
|
|
+ AND c3.code = 'FB3002' AND c2.class_id = t1.id
|
|
|
+ ) !=
|
|
|
+ (
|
|
|
+ SELECT COUNT(*) FROM room_bed a1
|
|
|
+ LEFT JOIN base_student_school_roll a2 ON a1.student_user_id = a2.user_id
|
|
|
+ WHERE a1.delete_mark = 0 AND a2.delete_mark = 0
|
|
|
+ AND a2.class_id = t1.id
|
|
|
+ )
|
|
|
</select>
|
|
|
- <select id="getDistributeRoomBedInfo" parameterType="com.xjrsoft.module.room.dto.DistributeClassPageDto" resultType="com.xjrsoft.module.room.vo.DistributeRoomBedPageVo">
|
|
|
- SELECT t1.id,t1.sort_code,t2.name AS build_name,t1.room_name,t4.name AS gender_cn, t3.name AS check_in_status_cn,
|
|
|
+ <select id="getDistributeRoomBedInfo" parameterType="com.xjrsoft.module.room.dto.DistributeRoomBedPageDto" resultType="com.xjrsoft.module.room.vo.DistributeRoomBedPageVo">
|
|
|
+ SELECT t1.id,t1.sort_code,t2.name AS build_name,t1.floor_number,t1.room_name,t4.name AS gender_cn, t3.name AS check_in_status_cn,
|
|
|
t1.bed_count,(
|
|
|
SELECT COUNT(*) FROM room_bed
|
|
|
WHERE delete_mark = 0 AND room_id = t1.id
|
|
@@ -76,7 +89,13 @@
|
|
|
LEFT JOIN base_office_build t2 ON t1.office_build_id = t2.id
|
|
|
LEFT JOIN xjr_dictionary_detail t3 ON t1.check_in_status = t3.code AND t3.item_id = 1739843696019435521
|
|
|
LEFT JOIN xjr_dictionary_detail t4 ON t1.gender = t4.code AND t4.item_id = 2023000000000000004
|
|
|
- WHERE t1.delete_mark = 0 ORDER BY t1.sort_code
|
|
|
-
|
|
|
+ WHERE t1.delete_mark = 0
|
|
|
+ and
|
|
|
+ (
|
|
|
+ SELECT COUNT(*) FROM room_bed
|
|
|
+ WHERE delete_mark = 0 AND room_id = t1.id
|
|
|
+ AND student_user_id IS NOT NULL
|
|
|
+ ) != t1.bed_count
|
|
|
+ ORDER BY t1.sort_code
|
|
|
</select>
|
|
|
</mapper>
|