Joburgess 5 年之前
父节点
当前提交
204cc19801

+ 3 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/ClassGroupStudentMapperDao.java

@@ -244,6 +244,9 @@ public interface ClassGroupStudentMapperDao extends BaseDAO<Long, ClassGroupStud
     List<Map<Integer, Integer>> countClassGroupsStudentNum(@Param("classGroupIds") List<Integer> classGroupIds,
                                                            @Param("status")ClassGroupStudentStatusEnum status);
 
+    List<Map<String, Integer>> countGroupAllStudentNum(@Param("groupIds") List<String> groupIds,
+                                                        @Param("groupType") GroupType groupType);
+
     /**
      * @param classGroupId: 班级编号
      * @return java.util.List<java.util.Map < java.lang.Integer, java.lang.Integer>>

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

@@ -129,7 +129,7 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
 		//上课时间
 		Date classStartDateTime = DateUtil.stringToDate(classDate + " " + startClassTime, DateUtil.EXPANDED_DATE_TIME_FORMAT);
 		Date classEndDateTime = DateUtil.stringToDate(classDate + " " + endClassTime, DateUtil.EXPANDED_DATE_TIME_FORMAT);
-		Date classEndDateAdd60Minutes = DateUtil.addMinutes(classEndDateTime, 60);
+		Date classEndDateAdd60Minutes = DateUtil.addMinutes(classEndDateTime, 180);
 		Date add20Minutes = DateUtil.addMinutes(classStartDateTime, advanceSignMinutes * -1);
 		if(teacherAttendance.getSignInTime() == null && teacherSignOutDto.getTeacherAttendanceInfo().getStatus().equals(SignStatusEnum.SIGN_IN.getCode())){
 

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

@@ -647,6 +647,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 			if(dataList != null && dataList.size() > 0){
 				List<String> vipGroupIds = dataList.stream().map(vipGroup -> String.valueOf(vipGroup.getId())).distinct().collect(Collectors.toList());
 				List<Map<Long, Integer>> vipGroupOverCourses = courseScheduleDao.countGroupOverCourse(vipGroupIds,"VIP");
+				List<Map<String, Integer>> groupStudentNumMaps = classGroupStudentMapperDao.countGroupAllStudentNum(vipGroupIds, GroupType.VIP);
 				Map<String,Integer> vipGroupOverCourseMaps = JSONObject.parseObject(JSONObject.toJSONString(MapUtil.convertIntegerMap(vipGroupOverCourses)),HashMap.class);
 				List<Integer> educationalTeacherIds=dataList.stream().filter(data -> Objects.nonNull(data.getEducationalTeacherId())).map(VipGroup::getEducationalTeacherId).collect(Collectors.toList());
 
@@ -659,6 +660,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 				Map<String,Long> totalClassTimeMap = MapUtil.convertIntegerMap(courseScheduleDao.countTotalCourseScheduleNum(vipGroupIds,"VIP"));
 				Map<String,Long> currentClassTimeMap = MapUtil.convertIntegerMap(courseScheduleDao.countCourseScheduleNum(vipGroupIds,"VIP"));
 				Map<String,String> lastOverTimeMap = MapUtil.convertIntegerMap(courseScheduleDao.findLastOverTime(vipGroupIds));
+				Map<String,Long> groupStudentNumMap = MapUtil.convertIntegerMap(groupStudentNumMaps);
 
 				List<Map<String, BigDecimal>> groupCoursesUnitPriceMaps = courseScheduleStudentPaymentDao.findGroupCoursesUnitPrice(GroupType.VIP, vipGroupIds);
 				Map<String,BigDecimal> groupCoursesUnitPrice=new HashMap<>();
@@ -689,8 +691,14 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 					vipGroup.setTotalClassTimes(aLong==null?0:aLong.intValue());
 					Long aLong1 = currentClassTimeMap.get(vipGroup.getId() + "");
 					vipGroup.setCurrentClassTimes(aLong1==null?0:aLong1.intValue());
+
+					Long allStudentNum=groupStudentNumMap.get(vipGroup.getId().toString());
+					if(Objects.isNull(allStudentNum)){
+						allStudentNum=Long.valueOf(0);
+					}
+
 					if((Objects.isNull(aLong)||aLong<=0)
-							&&(Objects.isNull(vipGroup.getStudentNum())||vipGroup.getStudentNum()<=0)
+							&&(allStudentNum<=0)
 							&&(VipGroupStatusEnum.NOT_START.equals(vipGroup.getStatus())
 							||VipGroupStatusEnum.APPLYING.equals(vipGroup.getStatus()))){
 						vipGroup.setEnableDelete(1);

+ 16 - 0
mec-biz/src/main/resources/config/mybatis/ClassGroupStudentMapperMapper.xml

@@ -315,6 +315,22 @@
             class_group_id_
     </select>
 
+    <select id="countGroupAllStudentNum" resultType="map">
+        SELECT
+            music_group_id_ AS 'key',
+            COUNT( user_id_ ) AS 'value'
+        FROM
+          class_group_student_mapper
+        WHERE
+            music_group_id_ IN
+            <foreach collection="groupIds" item="groupId" open="(" close=")" separator=",">
+                #{groupId}
+            </foreach>
+            AND group_type_=#{groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+        GROUP BY
+        music_group_id_
+    </select>
+
     <select id="countClassGroupStudentNum" resultType="int">
         SELECT
             COUNT( user_id_ )