Procházet zdrojové kódy

寝室床位列表增加空床位数和已入住人数

dzx před 1 rokem
rodič
revize
611ca66838

+ 10 - 0
src/main/java/com/xjrsoft/module/room/vo/RoomPageVo.java

@@ -102,4 +102,14 @@ public class RoomPageVo {
     @ExcelProperty("备注")
     @ApiModelProperty("备注")
     private String remark;
+
+    @ContentStyle(dataFormat = 49)
+    @ExcelProperty("空床位数")
+    @ApiModelProperty("空床位数")
+    private Integer emptyCount;
+
+    @ContentStyle(dataFormat = 49)
+    @ExcelProperty("已入住人数")
+    @ApiModelProperty("已入住人数")
+    private Integer studentCount;
 }

+ 12 - 1
src/main/resources/mapper/room/RoomMapper.xml

@@ -10,7 +10,18 @@
         WHERE c1.delete_mark = 0 AND c1.room_id = t1.id) AS student_appoint_names,
         (SELECT GROUP_CONCAT(c2.name) FROM room_teacher_appoint c1
         LEFT JOIN xjr_user c2 ON c1.user_id = c2.id
-        WHERE c1.delete_mark = 0 AND c1.room_id = t1.id) AS teacher_appoint_names,t1.is_max,t1.remark FROM room t1
+        WHERE c1.delete_mark = 0 AND c1.room_id = t1.id) AS teacher_appoint_names,t1.is_max,t1.remark,
+        ifnull((
+        SELECT COUNT(*) FROM room_bed a1
+        INNER JOIN xjr_user a2 ON a1.student_user_id = a2.id
+        WHERE a1.delete_mark = 0 AND a2.delete_mark = 0 AND a1.room_id = t1.id
+        AND a1.student_user_id IS NOT NULL
+        ), 0) AS student_count,
+        ifnull((
+        SELECT COUNT(*) FROM room_bed
+        WHERE delete_mark = 0 AND room_id = t1.id
+        AND student_user_id IS NULL
+        ), 0) AS empty_count FROM room t1
         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

+ 16 - 1
src/main/resources/sqlScript/200240428_sql.sql

@@ -11,4 +11,19 @@ ALTER TABLE `base_class`
 END$$
 DELIMITER ;
 CALL createCom;
-DROP PROCEDURE createCom;
+DROP PROCEDURE createCom;
+
+DROP PROCEDURE IF EXISTS createCom;
+DELIMITER $$
+CREATE
+    PROCEDURE createCom()
+BEGIN
+    IF NOT EXISTS(SELECT 1 FROM information_schema.columns  WHERE table_name='wf_course_adjust' AND COLUMN_NAME = 'class_id') THEN
+ALTER TABLE `wf_course_adjust`   
+  ADD COLUMN `class_id` BIGINT NULL   COMMENT '班级id';
+    END IF;
+END$$
+DELIMITER ;
+CALL createCom;
+DROP PROCEDURE createCom;
+