zouxuan před 5 roky
rodič
revize
b09c7c68a3

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

@@ -828,7 +828,7 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
      * @param classGroupIds
      * @return
      */
-    List<Map<Integer, Long>> countTotalNumByClassGroupId(@Param("classGroupIds") Set<Integer> classGroupIds, @Param("classDate") Date classDate);
+    List<Map<Integer, Long>> countTotalNumByClassGroupId(@Param("classGroupIds") List<Integer> classGroupIds, @Param("classDate") Date classDate);
 
     /**
      * 根据班级编号count剩余课时
@@ -836,5 +836,5 @@ public interface CourseScheduleDao extends BaseDAO<Long, CourseSchedule> {
      * @param classDate
      * @return
      */
-    List<Map<Integer, Long>> countCurrentNumByClassGroupId(@Param("classGroupIds") Set<Integer> classGroupIds, @Param("classDate") Date classDate);
+    List<Map<Integer, Long>> countCurrentNumByClassGroupId(@Param("classGroupIds") List<Integer> classGroupIds, @Param("classDate") Date classDate);
 }

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

@@ -878,13 +878,14 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
         Map<Long, Integer> vipGroupOverCourseMaps = MapUtil.convertIntegerMap(vipGroupOverCourses);
 
         List<ClassGroup> byClassGroupIds = classGroupDao.findByClassGroupIds(classGroupIds);
-        Map<Integer, ClassGroup> classGorupIdMap = byClassGroupIds.stream()
-                .collect(Collectors.toMap(ClassGroup::getId, classGroup -> classGroup));
+        Map<Integer, ClassGroup> classGorupIdMap = byClassGroupIds.stream().collect(Collectors.toMap(ClassGroup::getId, classGroup -> classGroup));
+
+
 
         //统计班级人数
         List<Map<Integer, Integer>> classGroupStudentNumMaps = classGroupStudentMapperDao.countClassGroupsStudentNum(classGroupIds);
         Map<Integer, Long> classGroupStudentNumMap = MapUtil.convertIntegerMap(classGroupStudentNumMaps);
-
+        Map<Integer, Long> currentClassTimes = MapUtil.convertIntegerMap(courseScheduleDao.countCurrentNumByClassGroupId(classGroupIds,null));
         teacherMusicClassGroup.forEach(teacherClassGroupDto -> {
 
             if (teacherClassGroupDto.getType() == ClassGroupTypeEnum.VIP) {
@@ -917,8 +918,9 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
             }
 
             ClassGroup classGroup = classGorupIdMap.get(teacherClassGroupDto.getClassGroupId().intValue());
-
-            teacherClassGroupDto.setSurplusClassTimes(classGroup.getTotalClassTimes() - classGroup.getCurrentClassTimes());
+//            teacherClassGroupDto.setSurplusClassTimes(classGroup.getTotalClassTimes() - classGroup.getCurrentClassTimes());
+            Long aLong = currentClassTimes.get(teacherClassGroupDto.getClassGroupId().intValue());
+            teacherClassGroupDto.setSurplusClassTimes(aLong==null?0:aLong.intValue());
             Long studentNum = classGroupStudentNumMap.get(teacherClassGroupDto.getClassGroupId().intValue());
             teacherClassGroupDto.setStudentNum(Objects.isNull(studentNum) ? 0 : studentNum.intValue());
 
@@ -1790,7 +1792,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
             pageInfo.setTotal(count);
             params.put("offset", pageInfo.getOffset());
             dataList = classGroupDao.queryMusicGroupClassGroup(params);
-            Set<Integer> classGroups = dataList.stream().map(e -> e.getClassGroupId()).collect(Collectors.toSet());
+            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));
             String join = StringUtils.join(classGroups, ",");
@@ -2011,7 +2013,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
             return null;
         }
         String classGroupIds = classGroups.stream().map(classGroup -> classGroup.getId().toString()).collect(Collectors.joining(","));
-        Set<Integer> classGroupSet = classGroups.stream().map(classGroup -> classGroup.getId()).collect(Collectors.toSet());
+        List<Integer> classGroupSet = classGroups.stream().map(classGroup -> classGroup.getId()).collect(Collectors.toList());
 
         List<ClassGroupTeacherMapper> classGroupTeachers = classGroupTeacherMapperDao.findClassGroupTeachers(classGroupIds);
         Map<Integer, Integer> studyNums = JSONObject.parseObject(JSONObject.toJSONString(MapUtil.convertIntegerMap(classGroupDao.countStudyNum(classGroupIds))), HashMap.class);

+ 8 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java

@@ -1829,14 +1829,18 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 			offlineTeacherSalary = new BigDecimal(0);
 		}
 
-		if(onlineTeacherSalary.compareTo(zero)<=0
-                &&offlineTeacherSalary.compareTo(zero)<=0){
-            TeacherDefaultVipGroupSalary byTeacherAndCategory = teacherDefaultVipGroupSalaryDao.findByTeacherAndCategory(vipGroup.getUserId(), vipGroup.getVipGroupCategoryId());
+		TeacherDefaultVipGroupSalary byTeacherAndCategory = teacherDefaultVipGroupSalaryDao.findByTeacherAndCategory(vipGroup.getUserId(), vipGroup.getVipGroupCategoryId());
+
+		if(onlineTeacherSalary.compareTo(zero)<=0){
             if(Objects.nonNull(byTeacherAndCategory)){
                 onlineTeacherSalary=byTeacherAndCategory.getOnlineClassesSalary();
-                offlineTeacherSalary=byTeacherAndCategory.getOfflineClassesSalary();
             }
 		}
+		if(offlineTeacherSalary.compareTo(zero)<=0){
+			if(Objects.nonNull(byTeacherAndCategory)){
+				offlineTeacherSalary=byTeacherAndCategory.getOfflineClassesSalary();
+			}
+		}
 
 		//创建老师单节课课酬信息
 		courseScheduleTeacherSalaryService.createCourseScheduleTeacherVipSalary(vipGroup,

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

@@ -537,7 +537,7 @@
 
     <sql id="queryMusicGroupCourseScheduleSql">
         <where>
-            cg.del_flag_ = 0 AND cg.group_type_ = 'MUSIC'
+            cg.group_type_ = 'MUSIC'
             <if test="startTime != null">
                 AND cs.class_date_ &gt;= #{startTime}
             </if>

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

@@ -1679,7 +1679,7 @@
         <if test="classDate != null">
             AND cs.class_date_ = DATE_FORMAT(#{classDate}, '%Y%m%d')
         </if>
-        AND cs.status_ != 'NOT_START'
+        AND cs.status_ = 'NOT_START'
         GROUP BY cs.class_group_id_
     </select>
 </mapper>