ソースを参照

Merge remote-tracking branch 'origin/master'

周箭河 5 年 前
コミット
c34ee4c647

+ 73 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/StudentSignQueryInfo.java

@@ -0,0 +1,73 @@
+package com.ym.mec.biz.dal.page;
+
+import com.ym.mec.common.page.QueryInfo;
+import io.swagger.annotations.ApiModelProperty;
+
+public class StudentSignQueryInfo extends QueryInfo {
+
+    @ApiModelProperty(value = "开始时间",required = false)
+    private String startTime;
+
+    @ApiModelProperty(value = "结束时间",required = false)
+    private String endTime;
+
+    @ApiModelProperty(value = "课程名称",required = false)
+    private String courseScheduleName;
+
+    @ApiModelProperty(value = "学生名",required = false)
+    private String userName;
+
+    @ApiModelProperty(value = "签到状态",required = false)
+    private String signStatus;
+
+    @ApiModelProperty(value = "乐团编号",required = false)
+    private String musicGroupId;
+
+    public String getStartTime() {
+        return startTime;
+    }
+
+    public void setStartTime(String startTime) {
+        this.startTime = startTime;
+    }
+
+    public String getEndTime() {
+        return endTime;
+    }
+
+    public void setEndTime(String endTime) {
+        this.endTime = endTime;
+    }
+
+    public String getCourseScheduleName() {
+        return courseScheduleName;
+    }
+
+    public void setCourseScheduleName(String courseScheduleName) {
+        this.courseScheduleName = courseScheduleName;
+    }
+
+    public String getUserName() {
+        return userName;
+    }
+
+    public void setUserName(String userName) {
+        this.userName = userName;
+    }
+
+    public String getSignStatus() {
+        return signStatus;
+    }
+
+    public void setSignStatus(String signStatus) {
+        this.signStatus = signStatus;
+    }
+
+    public String getMusicGroupId() {
+        return musicGroupId;
+    }
+
+    public void setMusicGroupId(String musicGroupId) {
+        this.musicGroupId = musicGroupId;
+    }
+}

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/StudentManageService.java

@@ -91,7 +91,7 @@ public interface StudentManageService {
      * @param queryInfo
      * @return
      */
-    PageInfo<MusicGroupStudentSignDto> queryMusicGroupStudentsSign(QueryInfo queryInfo);
+    PageInfo<MusicGroupStudentSignDto> queryMusicGroupStudentsSign(StudentSignQueryInfo queryInfo);
 
     /**
      * 获取学员的班级信息列表

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentManageServiceImpl.java

@@ -203,7 +203,7 @@ public class StudentManageServiceImpl implements StudentManageService {
     }
 
     @Override
-    public PageInfo<MusicGroupStudentSignDto> queryMusicGroupStudentsSign(QueryInfo queryInfo) {
+    public PageInfo<MusicGroupStudentSignDto> queryMusicGroupStudentsSign(StudentSignQueryInfo queryInfo) {
         PageInfo<MusicGroupStudentSignDto> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
         Map<String, Object> params = new HashMap<>();
         MapUtil.populateMap(params, queryInfo);

+ 1 - 2
mec-biz/src/main/resources/config/mybatis/ClassGroupMapper.xml

@@ -521,8 +521,7 @@
     <select id="countStudyNum" resultType="java.util.Map">
         SELECT cgsm.class_group_id_ 'key',COUNT(cgsm.user_id_) 'value' FROM class_group_student_mapper cgsm
         LEFT JOIN student_registration sr ON (sr.user_id_ = cgsm.user_id_ AND sr.music_group_id_ = cgsm.music_group_id_)
-        WHERE FIND_IN_SET(cgsm.class_group_id_,#{classGroupIds}) AND cgsm.status_ != 'QUIT' AND sr.music_group_status_ != 'QUIT' AND
-        FIND_IN_SET(sr.music_group_status_,'NORMAL,LEAVE') GROUP BY cgsm.class_group_id_
+        WHERE FIND_IN_SET(cgsm.class_group_id_,#{classGroupIds}) AND cgsm.status_ != 'QUIT' AND sr.music_group_status_ != 'QUIT' GROUP BY cgsm.class_group_id_
     </select>
 
     <select id="countQuitNum" resultType="java.util.Map">

+ 26 - 2
mec-biz/src/main/resources/config/mybatis/StudentManageDao.xml

@@ -435,15 +435,39 @@
         FROM student_attendance sa
         LEFT JOIN sys_user su ON sa.user_id_ = su.id_
         LEFT JOIN course_schedule cs ON sa.course_schedule_id_ = cs.id_
-        WHERE sa.music_group_id_ = #{search}
+        <include refid="queryMusicGroupStudentsSignSql"/>
         <include refid="global.limit"/>
     </select>
+
+    <sql id="queryMusicGroupStudentsSignSql">
+        <where>
+            <if test="musicGroupId != null">
+                AND sa.music_group_id_ = #{musicGroupId}
+            </if>
+            <if test="courseScheduleName != null">
+                AND cs.name_ LIKE CONCAT('%',#{courseScheduleName},'%')
+            </if>
+            <if test="startTime != null">
+                AND sa.create_time_ &gt;= #{startTime}
+            </if>
+            <if test="endTime != null">
+                AND sa.create_time_ &lt;= #{endTime}
+            </if>
+            <if test="signStatus != null">
+                AND sa.status_ = #{signStatus}
+            </if>
+            <if test="userName != null">
+                AND su.username_ LIKE CONCAT('%',#{userName},'%')
+            </if>
+        </where>
+    </sql>
+
     <select id="countMusicGroupStudentsSign" resultType="java.lang.Integer">
         SELECT COUNT(sa.id_)
         FROM student_attendance sa
         LEFT JOIN sys_user su ON sa.user_id_ = su.id_
         LEFT JOIN course_schedule cs ON sa.course_schedule_id_ = cs.id_
-        WHERE sa.music_group_id_ = #{search}
+        <include refid="queryMusicGroupStudentsSignSql"/>
     </select>
 
 </mapper>

+ 2 - 1
mec-web/src/main/java/com/ym/mec/web/controller/StudentManageController.java

@@ -4,6 +4,7 @@ import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.EmployeeDao;
 import com.ym.mec.biz.dal.entity.Employee;
+import com.ym.mec.biz.dal.entity.StudentAttendance;
 import com.ym.mec.biz.dal.page.*;
 import com.ym.mec.biz.service.StudentManageService;
 import com.ym.mec.common.controller.BaseController;
@@ -74,7 +75,7 @@ public class StudentManageController extends BaseController {
     @ApiOperation(value = "乐团管理--乐团详情--点名总览")
     @GetMapping("/queryMusicGroupStudentsSign")
     @PreAuthorize("@pcs.hasPermissions('studentManage/queryMusicGroupStudentsSign')")
-    public Object queryMusicGroupStudentsSign(QueryInfo queryInfo){
+    public Object queryMusicGroupStudentsSign(StudentSignQueryInfo queryInfo){
         return succeed(studentManageService.queryMusicGroupStudentsSign(queryInfo));
     }