Forráskód Böngészése

Merge branch 'master' of http://git.dayaedu.com/yonge/mec

yonge 5 éve
szülő
commit
4cee88a858

+ 10 - 3
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleDao.java

@@ -850,8 +850,8 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
     List<Map<String, Long>> countTotalCourseScheduleNum(@Param("vipGroupIds")List<String> vipGroupIds,@Param("groupType") String groupType);
 
     /**
-     * 获取当前课时
-     * @param vipGroupIds
+     * 获取当前课时(已上)
+     * @param vipGroupIds vip编号
      * @param groupType
      * @return
      */
@@ -865,7 +865,14 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
     List<Map<Integer, Long>> countTotalNumByClassGroupId(@Param("classGroupIds") List<Integer> classGroupIds, @Param("classDate") Date classDate);
 
     /**
-     * 根据班级编号count剩余课时
+     * 根据班级编号count当前课时(已上总数)
+     * @param classGroupIds
+     * @return
+     */
+    List<Map<Integer, Long>> countExpendNumByClassGroupId(@Param("classGroupIds") List<Integer> classGroupIds);
+
+    /**
+     * 根据班级编号count剩余课时(未上)
      * @param classGroupIds
      * @param classDate
      * @return

+ 3 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java

@@ -922,7 +922,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
 
             }
 
-            ClassGroup classGroup = classGorupIdMap.get(teacherClassGroupDto.getClassGroupId().intValue());
+//            ClassGroup classGroup = classGorupIdMap.get(teacherClassGroupDto.getClassGroupId().intValue());
 //            teacherClassGroupDto.setSurplusClassTimes(classGroup.getTotalClassTimes() - classGroup.getCurrentClassTimes());
             Long aLong = currentClassTimes.get(teacherClassGroupDto.getClassGroupId().intValue());
             teacherClassGroupDto.setSurplusClassTimes(aLong==null?0:aLong.intValue());
@@ -1811,7 +1811,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
             dataList = classGroupDao.queryMusicGroupClassGroup(params);
             List<Integer> classGroups = dataList.stream().map(e -> e.getClassGroupId()).collect(Collectors.toList());
             Map<Integer, Long> totalNumMap = MapUtil.convertIntegerMap(courseScheduleDao.countTotalNumByClassGroupId(classGroups, null));
-            Map<Integer, Long> currentNumMap = MapUtil.convertIntegerMap(courseScheduleDao.countCurrentNumByClassGroupId(classGroups, null));
+            Map<Integer, Long> currentNumMap = MapUtil.convertIntegerMap(courseScheduleDao.countExpendNumByClassGroupId(classGroups));
             String join = StringUtils.join(classGroups, ",");
             //获取主教老师
             Map<Integer, String> masterTeachers = JSONObject.parseObject(JSONObject.toJSONString(MapUtil.convertMybatisMap(classGroupDao.countStudentNum(join, "BISHOP"))), HashMap.class);
@@ -2036,7 +2036,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
         Map<Integer, Integer> studyNums = JSONObject.parseObject(JSONObject.toJSONString(MapUtil.convertIntegerMap(classGroupDao.countStudyNum(classGroupIds))), HashMap.class);
 
         Map<Integer, Long> totalNumMap = MapUtil.convertIntegerMap(courseScheduleDao.countTotalNumByClassGroupId(classGroupSet, null));
-        Map<Integer, Long> currentNumMap = MapUtil.convertIntegerMap(courseScheduleDao.countCurrentNumByClassGroupId(classGroupSet, null));
+        Map<Integer, Long> currentNumMap = MapUtil.convertIntegerMap(courseScheduleDao.countExpendNumByClassGroupId(classGroupSet));
 
         for (ClassGroupTeachersDto classGroup : classGroups) {
             List<ClassGroupTeacherMapper> classGroupTeacherMappers = new ArrayList<>();

+ 3 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherServiceImpl.java

@@ -169,6 +169,9 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 			//获取班级老师总数map
 			Map<Integer, Integer> numsMap = JSONObject.parseObject(JSONObject.toJSONString(MapUtil.convertIntegerMap(classGroupDao.countTeacherNums(StringUtils.join(classGroupIds, ",")))),HashMap.class);
 			imGroupModels.forEach(e -> {
+				if(StringUtils.isNotEmpty(e.getGroupName())){
+					e.setName(e.getGroupName() + " " + e.getName());
+				}
 				Integer num = numsMap.get(Integer.parseInt(e.getId()));
 				e.setCount((num == null ? 0 : num) + e.getCount());
 			});

+ 4 - 3
mec-biz/src/main/resources/config/mybatis/ClassGroupMapper.xml

@@ -349,8 +349,9 @@
     </select>
 
     <select id="queryTeacherGroups" resultMap="imGroupModel">
-        SELECT cg.id_,cg.name_,cg.student_num_,cg.img_ FROM class_group_teacher_mapper cgtm
+        SELECT cg.id_,cg.name_,cg.student_num_,cg.img_,mg.name_ group_name_ FROM class_group_teacher_mapper cgtm
         LEFT JOIN class_group cg ON cgtm.class_group_id_ = cg.id_
+        LEFT JOIN music_group mg ON mg.id_ = cg.music_group_id_ AND cg.group_type_ = 'MUSIC'
         WHERE cgtm.user_id_ = #{userId} AND cg.del_flag_ = 0
         <if test="search != null">
             AND cg.name_ LIKE CONCAT('%',#{search},'%')
@@ -539,7 +540,7 @@
 
     <sql id="queryMusicGroupCourseScheduleSql">
         <where>
-            cg.group_type_ = 'MUSIC'
+            cg.group_type_ = 'MUSIC' AND cs.del_flag_ = 0
             <if test="startTime != null">
                 AND cs.class_date_ &gt;= #{startTime}
             </if>
@@ -554,7 +555,7 @@
 
     <sql id="queryMusicGroupCourseScheduleDetailSql">
         <where>
-            (ta.teacher_id_ = cs.actual_teacher_id_ OR ta.id_ IS NULL) AND cg.group_type_ = 'MUSIC'
+            (ta.teacher_id_ = cs.actual_teacher_id_ OR ta.id_ IS NULL) AND cg.group_type_ = 'MUSIC' AND cs.del_flag_ = 0
             <if test="classScheduleType != null">
                 AND cs.type_ = #{classScheduleType}
             </if>

+ 12 - 2
mec-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml

@@ -1667,7 +1667,7 @@
         <foreach collection="vipGroupIds" open="(" close=")" separator="," item="item">
             #{item}
         </foreach>
-        AND cs.group_type_ = 'VIP' AND cs.del_flag_ = 0
+        AND cs.group_type_ = #{groupType} AND cs.del_flag_ = 0
         GROUP BY cs.music_group_id_
     </select>
     <select id="countCourseScheduleNum" resultType="java.util.Map">
@@ -1675,7 +1675,7 @@
         <foreach collection="vipGroupIds" open="(" close=")" separator="," item="item">
             #{item}
         </foreach>
-        AND cs.group_type_ = 'VIP' AND cs.status_ != 'NOT_START' AND cs.del_flag_ = 0
+        AND cs.group_type_ = #{groupType} AND cs.status_ != 'NOT_START' AND cs.del_flag_ = 0
         GROUP BY cs.music_group_id_
     </select>
     <select id="countTotalNumByClassGroupId" resultType="java.util.Map">
@@ -1699,6 +1699,16 @@
         <if test="classDate != null">
             AND cs.class_date_ = DATE_FORMAT(#{classDate}, '%Y%m%d')
         </if>
+        AND cs.status_ = 'NOT_START' AND cs.del_flag_ = 0
+        GROUP BY cs.class_group_id_
+    </select>
+
+    <select id="countExpendNumByClassGroupId" resultType="java.util.Map">
+        SELECT cs.class_group_id_ 'key',COUNT(cs.id_) 'value' FROM course_schedule cs
+        WHERE cs.class_group_id_ IN
+        <foreach collection="classGroupIds" item="item" separator="," open="(" close=")">
+            #{item}
+        </foreach>
         AND cs.status_ != 'NOT_START' AND cs.del_flag_ = 0
         GROUP BY cs.class_group_id_
     </select>