Jelajahi Sumber

云教练作业优化

zouxuan 3 tahun lalu
induk
melakukan
b0e6a6d792

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

@@ -61,8 +61,7 @@ public interface StudentExtracurricularExercisesSituationService extends BaseSer
 
     /**
      * 获取能布置作业的课程数量
-     * @param queryInfo
      * @return
      */
-    int countWaitCreateHomeworkNum(TeacherServeHomeworkQueryInfo queryInfo);
+    int countWaitCreateHomeworkNum();
 }

+ 9 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ExtracurricularExercisesServiceImpl.java

@@ -66,8 +66,16 @@ public class ExtracurricularExercisesServiceImpl extends BaseServiceImpl<Long, E
 		if(StringUtils.isBlank(exercises.getContent())){
 			throw new BizException("请填写内容");
 		}
+		List<MusicScoreSubjectDto> scoreSubjectDtoList = exercises.getMusicScoreSubjectDtos();
 		if(StringUtils.isBlank(exercises.getStudentIdList())){
-			throw new BizException("请指定学生");
+			if(scoreSubjectDtoList == null || scoreSubjectDtoList.size() == 0){
+				throw new BizException("请指定学生");
+			}
+			List<Integer> studentIdList = new ArrayList<>();
+			for (MusicScoreSubjectDto musicScoreSubjectDto : scoreSubjectDtoList) {
+				studentIdList.addAll(musicScoreSubjectDto.getUserIdList());
+			}
+			exercises.setStudentIdList(StringUtils.join(studentIdList,","));
 		}
 
 		teacherDao.getLocked(exercises.getTeacherId());
@@ -89,7 +97,6 @@ public class ExtracurricularExercisesServiceImpl extends BaseServiceImpl<Long, E
 		extracurricularExercisesDao.insert(exercises);
 		String dateStr = DateUtil.dateToString(exercises.getExpireDate(), "MM月dd日HH点");
 
-		List<MusicScoreSubjectDto> scoreSubjectDtoList = exercises.getMusicScoreSubjectDtos();
 		Map<List<Integer>, List<MusicScoreSubjectDto>> collect = null;
 		Set<List<Integer>> lists = null;
 		if(!CollectionUtils.isEmpty(scoreSubjectDtoList)){

+ 12 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentExtracurricularExercisesSituationServiceImpl.java

@@ -1,5 +1,7 @@
 package com.ym.mec.biz.service.impl;
 
+import com.ym.mec.auth.api.client.SysUserFeignService;
+import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.*;
 import com.ym.mec.biz.dal.dto.*;
 import com.ym.mec.biz.dal.entity.*;
@@ -65,6 +67,8 @@ public class StudentExtracurricularExercisesSituationServiceImpl extends BaseSer
 	private StudentAttendanceDao studentAttendanceDao;
 	@Autowired
 	private CourseScheduleStudentPaymentDao courseScheduleStudentPaymentDao;
+	@Autowired
+	private SysUserFeignService sysUserFeignService;
 
 	@Override
 	public BaseDAO<Long, StudentExtracurricularExercisesSituation> getDAO() {
@@ -531,12 +535,16 @@ public class StudentExtracurricularExercisesSituationServiceImpl extends BaseSer
 	}
 
 	@Override
-	public int countWaitCreateHomeworkNum(TeacherServeHomeworkQueryInfo queryInfo) {
-		List<StudentExtracurricularExercisesSituation> weekServiceWithStudents = studentExtracurricularExercisesSituationDao.findWeekServiceWithStudents(null, queryInfo.getTeacherId(), null);
+	public int countWaitCreateHomeworkNum() {
+		SysUser sysUser = sysUserFeignService.queryUserInfo();
+		if (sysUser == null) {
+			throw new BizException("用户信息获取失败");
+		}
+		List<StudentExtracurricularExercisesSituation> weekServiceWithStudents = studentExtracurricularExercisesSituationDao.findWeekServiceWithStudents(null, sysUser.getId(), null);
 		if(weekServiceWithStudents == null || weekServiceWithStudents.size() == 0){
 			return 0;
 		}
-		List<StudentExtracurricularExercisesSituation> containsList = weekServiceWithStudents.stream().filter(e -> e.getCourseIds().contains(",")).collect(Collectors.toList());
+		List<StudentExtracurricularExercisesSituation> containsList = weekServiceWithStudents.stream().filter(e -> StringUtils.isNotEmpty(e.getCourseIds()) && e.getCourseIds().contains(",")).collect(Collectors.toList());
 		int num = 0;
 		if(containsList != null && containsList.size() > 0){
 			for (StudentExtracurricularExercisesSituation e : containsList) {
@@ -546,7 +554,7 @@ public class StudentExtracurricularExercisesSituationServiceImpl extends BaseSer
 				}
 			}
 		}
-		List<StudentExtracurricularExercisesSituation> situationList = weekServiceWithStudents.stream().filter(e -> !e.getCourseIds().contains(",") && e.getNotOverCourseNum() == 0).collect(Collectors.toList());
+		List<StudentExtracurricularExercisesSituation> situationList = weekServiceWithStudents.stream().filter(e -> StringUtils.isEmpty(e.getCourseIds()) || !e.getCourseIds().contains(",") && e.getNotOverCourseNum() == 0).collect(Collectors.toList());
 		num += situationList.size();
 		return num;
 	}

+ 14 - 13
mec-biz/src/main/resources/config/mybatis/StudentExtracurricularExercisesSituationMapper.xml

@@ -476,19 +476,20 @@
 
 	<select id="findWeekServiceWithStudents" resultMap="StudentExtracurricularExercisesSituation">
 		SELECT * FROM student_extracurricular_exercises_situation_
-		WHERE
-		  <if test="monday != null and monday != ''">
-			  monday_=#{monday}
-		  </if>
-		  <if test="teacherId!=null">
-			  AND teacher_id_=#{teacherId}
-		  </if>
-		  <if test="studentIds!=null and studentIds.size()>0">
-			  AND student_id_ IN
-			  <foreach collection="studentIds" item="studentId" open="(" close=")" separator=",">
-				  #{studentId}
-			  </foreach>
-		  </if>
+		<where>
+			<if test="monday != null and monday != ''">
+				AND monday_=#{monday}
+			</if>
+			<if test="teacherId!=null">
+				AND teacher_id_=#{teacherId}
+			</if>
+			<if test="studentIds!=null and studentIds.size()>0">
+				AND student_id_ IN
+				<foreach collection="studentIds" item="studentId" open="(" close=")" separator=",">
+					#{studentId}
+				</foreach>
+			</if>
+		</where>
 	</select>
     <select id="findTeacherNoStartServices" resultMap="StudentExtracurricularExercisesSituation">
 		SELECT * FROM student_extracurricular_exercises_situation_ WHERE teacher_id_=#{teacherId} AND actual_exercises_num_&lt;=0 AND serve_type_='HOMEWORK';

+ 2 - 7
mec-teacher/src/main/java/com/ym/mec/teacher/controller/ExtracurricularExercisesController.java

@@ -70,13 +70,8 @@ public class ExtracurricularExercisesController extends BaseController {
 
     @ApiOperation(value = "统计老师当前时间能布置作业的课程数量")
     @GetMapping("/countWaitCreateHomeworkNum")
-    public HttpResponseResult countWaitCreateHomeworkNum(TeacherServeHomeworkQueryInfo queryInfo) {
-        SysUser sysUser = sysUserFeignService.queryUserInfo();
-        if (sysUser == null) {
-            return failed("用户信息获取失败");
-        }
-        queryInfo.setTeacherId(sysUser.getId());
-        return succeed(studentExtracurricularExercisesSituationService.countWaitCreateHomeworkNum(queryInfo));
+    public HttpResponseResult countWaitCreateHomeworkNum() {
+        return succeed(studentExtracurricularExercisesSituationService.countWaitCreateHomeworkNum());
     }
 
     @ApiOperation(value = "创建课外训练")