Browse Source

学生列表

dzx 1 year ago
parent
commit
5b4c60564f

+ 42 - 0
src/main/java/com/xjrsoft/module/banding/dto/BandingTaskClassStudentPageDto.java

@@ -0,0 +1,42 @@
+package com.xjrsoft.module.banding.dto;
+
+import com.xjrsoft.common.page.PageInput;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+
+/**
+* @title: 新生分班任务分页查询入参
+* @Author dzx
+* @Date: 2024-07-01
+* @Version 1.0
+*/
+@Data
+@EqualsAndHashCode(callSuper = false)
+public class BandingTaskClassStudentPageDto extends PageInput {
+
+    @ApiModelProperty("分班任务(banding_task)")
+    private Long bandingTaskId;
+
+    @ApiModelProperty("学号")
+    private String credentialNumber;
+
+    @ApiModelProperty("姓名")
+    private String name;
+
+    @ApiModelProperty("毕业学校")
+    private String graduateSchool;
+
+    @ApiModelProperty("毕业班级")
+    private String graduateClass;
+
+    @ApiModelProperty("班级名称")
+    private String className;
+
+    @ApiModelProperty("就读方式")
+    private String stduyStatus;
+
+    @ApiModelProperty("班级状态")
+    private String status;
+}

+ 26 - 14
src/main/java/com/xjrsoft/module/banding/vo/BandingTaskClassStudentListVo.java

@@ -17,26 +17,35 @@ public class BandingTaskClassStudentListVo {
     @ApiModelProperty("主键编号")
     private Long id;
 
-    @ApiModelProperty("班级排序")
-    private Integer sortCode;
+    @ApiModelProperty("学号")
+    private String credentialNumber;
 
-    @ApiModelProperty("专业方向id")
-    private Long majorSetId;
+    @ApiModelProperty("学生姓名")
+    private String name;
 
-    @ApiModelProperty("专业方向")
-    private String majorSetName;
+    @ApiModelProperty("性别")
+    private String genderCn;
 
-    @ApiModelProperty("班级名称")
-    private String name;
+    @ApiModelProperty("毕业学校")
+    private String graduateSchool;
+
+    @ApiModelProperty("毕业班级")
+    private String graduateClass;
 
-    @ApiModelProperty("班级人数")
-    private Integer number;
+    @ApiModelProperty("第一志愿")
+    private String firstAmbition;
 
-    @ApiModelProperty("第一志愿人数")
-    private Integer firstAmbitionCount;
+    @ApiModelProperty("第二志愿")
+    private String secondAmbition;
 
-    @ApiModelProperty("第二志愿人数")
-    private Integer secondAmbitionCount;
+    @ApiModelProperty("班主人名称")
+    private String teacherName;
+
+    @ApiModelProperty("住宿类型")
+    private String stduyStatusCn;
+
+    @ApiModelProperty("班级名称")
+    private String className;
 
     @ApiModelProperty("身高")
     private BigDecimal height;
@@ -44,4 +53,7 @@ public class BandingTaskClassStudentListVo {
     @ApiModelProperty("体重")
     private BigDecimal weight;
 
+    @ApiModelProperty("分数")
+    private BigDecimal score;
+
 }

+ 37 - 0
src/main/resources/mapper/banding/BandingTaskClassMapper.xml

@@ -13,4 +13,41 @@
         LEFT JOIN base_classroom t4 ON t1.classroom_id = t4.id
         WHERE t1.delete_mark = 0
     </select>
+
+    <select id="getClassStudent" parameterType="com.xjrsoft.module.banding.dto.BandingTaskClassStudentPageDto" resultType="com.xjrsoft.module.banding.vo.BandingTaskClassStudentListVo">
+        SELECT t1.id,t1.credential_number,t1.name,t4.name AS gender_cn,t1.graduate_school,t1.graduate_class,
+        t5.name AS first_ambition, t6.name AS second_ambition,t7.name AS stduy_status_cn,t1.height,t1.weight,t1.score,t3.name AS class_name,
+        t8.name AS teacher_name FROM base_new_student t1
+        INNER JOIN banding_task_class_student t2 ON t1.id = t2.new_student_id
+        INNER JOIN banding_task_class t3 ON t2.banding_task_class_id = t3.id
+        LEFT JOIN xjr_dictionary_detail t4 ON t1.gender = t4.code
+        LEFT JOIN base_major_set t5 ON t1.first_ambition_id = t5.id
+        LEFT JOIN base_major_set t6 ON t1.second_ambition_id = t6.id
+        LEFT JOIN xjr_dictionary_detail t7 ON t1.stduy_status = t6.code
+        LEFT JOIN xjr_user t8 ON t3.teacher_id = t8.id
+        WHERE t1.delete_mark = 0 AND t2.delete_mark = 0 AND t3.delete_mark = 0
+        AND t3.banding_task_id = #{dto.bandingTaskId}
+        <if test="dto.credentialNumber != null and dto.credentialNumber != ''">
+            AND t1.credential_number like concat('%', #{dto.credentialNumber}, '%')
+        </if>
+        <if test="dto.name != null and dto.name != ''">
+            AND t1.name like concat('%', #{dto.name}, '%')
+        </if>
+        <if test="dto.graduateSchool != null and dto.graduateSchool != ''">
+            AND t1.graduate_school = #{dto.graduateSchool}
+        </if>
+        <if test="dto.graduateClass != null and dto.graduateClass != ''">
+            AND t1.graduate_class like concat('%', #{dto.graduateClass}, '%')
+        </if>
+        <if test="dto.stduyStatus != null and dto.stduyStatus != ''">
+            AND t1.stduy_status = #{dto.stduyStatus}
+        </if>
+        <if test="dto.status != null">
+            AND t3.status = #{dto.status}
+        </if>
+        <if test="dto.className != null and dto.className != ''">
+            AND t3.name like concat('%', #{dto.className}, '%')
+        </if>
+
+    </select>
 </mapper>