|
@@ -1,37 +1,32 @@
|
|
|
package com.ym.mec.biz.service.impl;
|
|
|
|
|
|
-import java.util.*;
|
|
|
-import java.util.stream.Collectors;
|
|
|
-
|
|
|
+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.*;
|
|
|
import com.ym.mec.biz.dal.enums.GroupType;
|
|
|
import com.ym.mec.biz.dal.enums.ImSendTypeEnum;
|
|
|
-import com.ym.mec.biz.service.*;
|
|
|
-import com.ym.mec.common.entity.ImPrivateMessage;
|
|
|
-import com.ym.mec.common.entity.ImTxtMessage;
|
|
|
-import com.ym.mec.im.ImFeignService;
|
|
|
-import org.apache.commons.lang3.StringUtils;
|
|
|
-import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-import org.springframework.stereotype.Service;
|
|
|
-import org.springframework.transaction.annotation.Isolation;
|
|
|
-import org.springframework.transaction.annotation.Transactional;
|
|
|
-import org.springframework.util.CollectionUtils;
|
|
|
-
|
|
|
-import com.ym.mec.auth.api.entity.SysUser;
|
|
|
import com.ym.mec.biz.dal.enums.MessageTypeEnum;
|
|
|
import com.ym.mec.biz.dal.enums.YesOrNoEnum;
|
|
|
import com.ym.mec.biz.dal.page.CourseReview4EduQueryInfo;
|
|
|
import com.ym.mec.biz.dal.page.CourseReviewQueryInfo;
|
|
|
+import com.ym.mec.biz.service.*;
|
|
|
import com.ym.mec.common.dal.BaseDAO;
|
|
|
import com.ym.mec.common.exception.BizException;
|
|
|
import com.ym.mec.common.page.PageInfo;
|
|
|
-import com.ym.mec.common.redis.service.RedisCache;
|
|
|
import com.ym.mec.common.service.impl.BaseServiceImpl;
|
|
|
import com.ym.mec.thirdparty.message.MessageSenderPluginContext;
|
|
|
import com.ym.mec.util.collection.MapUtil;
|
|
|
import com.ym.mec.util.date.DateUtil;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.transaction.annotation.Isolation;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
+import org.springframework.util.CollectionUtils;
|
|
|
+
|
|
|
+import java.util.*;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
@Service
|
|
|
public class CourseReviewServiceImpl extends BaseServiceImpl<Integer, CourseScheduleReview> implements CourseReviewService {
|
|
@@ -71,9 +66,6 @@ public class CourseReviewServiceImpl extends BaseServiceImpl<Integer, CourseSche
|
|
|
private SysMessageService sysMessageService;
|
|
|
|
|
|
@Autowired
|
|
|
- private ImFeignService imFeignService;
|
|
|
-
|
|
|
- @Autowired
|
|
|
private TeacherDao teacherDao;
|
|
|
|
|
|
@Autowired
|
|
@@ -546,7 +538,9 @@ public class CourseReviewServiceImpl extends BaseServiceImpl<Integer, CourseSche
|
|
|
studentDao.lockUser(courseSchedule.getActualTeacherId());
|
|
|
|
|
|
CourseHomework existHomework = courseHomeworkDao.findByCourseSchedule(courseHomeworkInfo.getCourseScheduleId());
|
|
|
-
|
|
|
+ if(existHomework != null){
|
|
|
+ throw new BizException("作业已布置");
|
|
|
+ }
|
|
|
//新增课堂作业
|
|
|
CourseHomework courseHomework = new CourseHomework();
|
|
|
List<CourseScheduleStudentPayment> courseScheduleStudentPayments = courseScheduleStudentPaymentDao.findByCourseSchedule(courseSchedule.getId());
|
|
@@ -561,23 +555,16 @@ public class CourseReviewServiceImpl extends BaseServiceImpl<Integer, CourseSche
|
|
|
// }
|
|
|
// }
|
|
|
|
|
|
- if (Objects.nonNull(existHomework)) {
|
|
|
- courseHomework.setId(existHomework.getId());
|
|
|
- courseHomework.setContent(content);
|
|
|
- courseHomework.setExpiryDate(expiryDate);
|
|
|
- courseHomeworkService.update(courseHomework);
|
|
|
- } else {
|
|
|
- courseHomework.setContent(content);
|
|
|
- courseHomework.setCourseScheduleId(courseSchedule.getId());
|
|
|
- courseHomework.setMusicGroupId(courseSchedule.getMusicGroupId());
|
|
|
- courseHomework.setGroupType(courseSchedule.getGroupType());
|
|
|
- courseHomework.setClassGroupId(courseSchedule.getClassGroupId());
|
|
|
- courseHomework.setExpiryDate(expiryDate);
|
|
|
- courseHomework.setExpectNum(CollectionUtils.isEmpty(courseScheduleStudentPayments) ? 0 : courseScheduleStudentPayments.size());
|
|
|
- courseHomeworkService.insert(courseHomework);
|
|
|
- }
|
|
|
+ courseHomework.setContent(content);
|
|
|
+ courseHomework.setCourseScheduleId(courseSchedule.getId());
|
|
|
+ courseHomework.setMusicGroupId(courseSchedule.getMusicGroupId());
|
|
|
+ courseHomework.setGroupType(courseSchedule.getGroupType());
|
|
|
+ courseHomework.setClassGroupId(courseSchedule.getClassGroupId());
|
|
|
+ courseHomework.setExpiryDate(expiryDate);
|
|
|
+ courseHomework.setExpectNum(CollectionUtils.isEmpty(courseScheduleStudentPayments) ? 0 : courseScheduleStudentPayments.size());
|
|
|
+ courseHomeworkService.insert(courseHomework);
|
|
|
|
|
|
- /*List<StudentCourseHomework> studentCourseHomeworks = new ArrayList<>();
|
|
|
+ List<StudentCourseHomework> studentCourseHomeworks = new ArrayList<>();
|
|
|
|
|
|
//获取按学员声部发放的作业
|
|
|
List<MusicScoreSubjectDto> musicScoreSubjectDto = courseHomework.getMusicScoreSubjectDto();
|
|
@@ -596,46 +583,30 @@ public class CourseReviewServiceImpl extends BaseServiceImpl<Integer, CourseSche
|
|
|
}
|
|
|
if(CollectionUtils.isEmpty(studentCourseHomeworks)){
|
|
|
throw new BizException("此课程没有学生");
|
|
|
- }*/
|
|
|
-
|
|
|
- if (!CollectionUtils.isEmpty(courseScheduleStudentPayments)) {
|
|
|
- Teacher teacher = teacherDao.get(courseSchedule.getActualTeacherId());
|
|
|
- String dateStr = DateUtil.dateToString(DateUtil.addDays(date, 3), "MM月dd日");
|
|
|
- for (CourseScheduleStudentPayment courseScheduleStudentPayment : courseScheduleStudentPayments) {
|
|
|
- StudentCourseHomework studentCourseHomework = new StudentCourseHomework();
|
|
|
- if (Objects.isNull(existHomework)) {
|
|
|
- studentCourseHomework.setCourseHomeworkId(courseHomework.getId());
|
|
|
- studentCourseHomework.setUserId(courseScheduleStudentPayment.getUserId());
|
|
|
-// studentCourseHomework.setMusicScoreId(musicScoreId);
|
|
|
- studentCourseHomework.setCourseScheduleId(courseSchedule.getId());
|
|
|
- studentCourseHomework.setCreateTime(date);
|
|
|
- studentCourseHomework.setUpdateTime(date);
|
|
|
- studentCourseHomework.setStatus(YesOrNoEnum.NO);
|
|
|
- studentCourseHomework.setIsView(YesOrNoEnum.NO);
|
|
|
- studentCourseHomework.setIsReplied(YesOrNoEnum.NO);
|
|
|
- studentCourseHomework.setIsRepliedTimely(0);
|
|
|
- studentCourseHomeworkDao.insert(studentCourseHomework);
|
|
|
- } else {
|
|
|
- studentCourseHomework = studentCourseHomeworkDao.findByStudentAndCourseHomewok(existHomework.getId(), courseScheduleStudentPayment.getUserId());
|
|
|
- }
|
|
|
+ }
|
|
|
+ courseHomeworkService.update(courseHomework);
|
|
|
|
|
|
- Map<Integer, String> userMap = new HashMap<>();
|
|
|
- userMap.put(courseScheduleStudentPayment.getUserId(), courseScheduleStudentPayment.getUserId().toString());
|
|
|
- String notifyUrl = "?courseScheduleID=" + courseSchedule.getId() + "&studentCourseHomeworkId=" + studentCourseHomework.getId() + "&extra=0";
|
|
|
- String extra = "dayaedu" + notifyUrl + "&userId=" + courseScheduleStudentPayment.getUserId();
|
|
|
+ studentCourseHomeworkDao.batchInsertStudentCourseHomeworkRecord(studentCourseHomeworks);
|
|
|
+ List<Integer> studentIds = studentCourseHomeworks.stream().map(StudentCourseHomework::getUserId).collect(Collectors.toList());
|
|
|
|
|
|
- sysMessageService.batchSendImMessage(MessageTypeEnum.IM_HOMEWORK_REMIND, courseSchedule.getActualTeacherId().toString(), extra,
|
|
|
- new String[]{courseScheduleStudentPayment.getUserId().toString()},
|
|
|
- null, courseSchedule.getName(), dateStr, courseHomework.getContent());
|
|
|
+ Teacher teacher = teacherDao.get(courseSchedule.getActualTeacherId());
|
|
|
+ studentServeService.updateExercisesSituation(courseSchedule.getClassDate(), studentIds, teacher.getId());
|
|
|
|
|
|
- sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.STUDENT_PUSH_HOMEWORK_REMIND,
|
|
|
- userMap, null, 0, 3 + notifyUrl, "STUDENT", teacher.getRealName(), courseSchedule.getName(), dateStr);
|
|
|
- }
|
|
|
|
|
|
- List<Integer> studentIds = courseScheduleStudentPayments.stream().map(CourseScheduleStudentPayment::getUserId).collect(Collectors.toList());
|
|
|
- studentServeService.updateExercisesSituation(courseSchedule.getClassDate(), studentIds, courseSchedule.getActualTeacherId());
|
|
|
- }
|
|
|
+ String dateStr = DateUtil.dateToString(DateUtil.addDays(date, 3), "MM月dd日");
|
|
|
+ for (StudentCourseHomework studentCourseHomework : studentCourseHomeworks) {
|
|
|
+ Map<Integer, String> userMap = new HashMap<>();
|
|
|
+ userMap.put(studentCourseHomework.getUserId(), studentCourseHomework.getUserId().toString());
|
|
|
+ String notifyUrl = "?courseScheduleID=" + courseSchedule.getId() + "&studentCourseHomeworkId=" + studentCourseHomework.getId() + "&extra=0";
|
|
|
+ String extra = "dayaedu" + notifyUrl + "&userId=" + studentCourseHomework.getUserId();
|
|
|
|
|
|
+ sysMessageService.batchSendImMessage(MessageTypeEnum.IM_HOMEWORK_REMIND, courseSchedule.getActualTeacherId().toString(), extra,
|
|
|
+ new String[]{studentCourseHomework.getUserId().toString()},
|
|
|
+ null, courseSchedule.getName(), dateStr, courseHomework.getContent());
|
|
|
+
|
|
|
+ sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.STUDENT_PUSH_HOMEWORK_REMIND,
|
|
|
+ userMap, null, 0, 3 + notifyUrl, "STUDENT", teacher.getRealName(), courseSchedule.getName(), dateStr);
|
|
|
+ }
|
|
|
return courseHomework;
|
|
|
}
|
|
|
|