|
@@ -22,6 +22,8 @@ import com.yonge.cooleshow.biz.dal.vo.CourseHomeworkDetailVo;
|
|
|
import com.yonge.cooleshow.biz.dal.vo.CourseHomeworkVo;
|
|
|
import com.yonge.cooleshow.common.exception.BizException;
|
|
|
import com.yonge.toolset.thirdparty.message.MessageSenderPluginContext;
|
|
|
+import org.slf4j.Logger;
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.context.annotation.Lazy;
|
|
|
import org.springframework.stereotype.Service;
|
|
@@ -38,6 +40,8 @@ import java.util.stream.Collectors;
|
|
|
@Service
|
|
|
public class CourseHomeworkServiceImpl extends ServiceImpl<CourseHomeworkDao, CourseHomework> implements CourseHomeworkService {
|
|
|
|
|
|
+ private static final Logger log = LoggerFactory.getLogger(CourseHomeworkServiceImpl.class);
|
|
|
+
|
|
|
@Autowired
|
|
|
@Lazy
|
|
|
private CourseScheduleService courseScheduleService;
|
|
@@ -133,7 +137,11 @@ public class CourseHomeworkServiceImpl extends ServiceImpl<CourseHomeworkDao, Co
|
|
|
|
|
|
if (flag) {
|
|
|
// 发送给学生 ->老师布置作业消息
|
|
|
- sendDecorateHomework(saveDto.getCourseScheduleId(), courseSchedule.getTeacherId());
|
|
|
+ try {
|
|
|
+ sendDecorateHomework(saveDto.getCourseScheduleId(), courseSchedule.getTeacherId());
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.warn("老师布置作业信息发送失败,{}",e.getMessage());
|
|
|
+ }
|
|
|
}
|
|
|
return flag;
|
|
|
|
|
@@ -152,8 +160,8 @@ public class CourseHomeworkServiceImpl extends ServiceImpl<CourseHomeworkDao, Co
|
|
|
SysUser teacher = sysUserFeignService.queryUserById(teacherId);
|
|
|
Map<Long,String> studentReceivers = new HashMap<>();
|
|
|
studentReceivers.put(student.getId(), student.getPhone());
|
|
|
- // todo url设置
|
|
|
- sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.TEACHER_DECORATE_HOMEWORK, studentReceivers, null, 0,null , ClientEnum.STUDENT.getCode(),teacher.getUsername(),"url");
|
|
|
+
|
|
|
+ sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.TEACHER_DECORATE_HOMEWORK, studentReceivers, null, 0,"homework?courseId=" + courseScheduleId , ClientEnum.STUDENT.getCode(),teacher.getUsername());
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -195,16 +203,24 @@ public class CourseHomeworkServiceImpl extends ServiceImpl<CourseHomeworkDao, Co
|
|
|
boolean flag = studentCourseHomeworkService.reviewCourseHome(courseHomeworkDetailVo.getStudentHomeworkId(),reviewDto.getReview());
|
|
|
if (flag) {
|
|
|
// 发送消息给学生 老师点评作业
|
|
|
- SysUser student = sysUserFeignService.queryUserById(courseHomeworkDetailVo.getStudentId());
|
|
|
- SysUser teacher = sysUserFeignService.queryUserById(courseHomeworkDetailVo.getTeacherId());
|
|
|
- Map<Long,String> studentReceivers = new HashMap<>();
|
|
|
- studentReceivers.put(student.getId(), student.getPhone());
|
|
|
- // todo url设置
|
|
|
- sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.TEACHER_REVIEW_HOMEWORK, studentReceivers, null, 0,null , ClientEnum.STUDENT.getCode(),teacher.getUsername(),"url");
|
|
|
+ try {
|
|
|
+ sendReviewMessage(reviewDto, courseHomeworkDetailVo);
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.warn("老师点评作业消息发送失败,{}",e.getMessage());
|
|
|
+ }
|
|
|
}
|
|
|
return flag;
|
|
|
}
|
|
|
|
|
|
+ // 发送老师点评信息
|
|
|
+ private void sendReviewMessage(CourseHomeworkReviewDto reviewDto, CourseHomeworkDetailVo courseHomeworkDetailVo) {
|
|
|
+ SysUser student = sysUserFeignService.queryUserById(courseHomeworkDetailVo.getStudentId());
|
|
|
+ SysUser teacher = sysUserFeignService.queryUserById(courseHomeworkDetailVo.getTeacherId());
|
|
|
+ Map<Long,String> studentReceivers = new HashMap<>();
|
|
|
+ studentReceivers.put(student.getId(), student.getPhone());
|
|
|
+ sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.TEACHER_REVIEW_HOMEWORK, studentReceivers, null, 0, "homework?courseId=" + reviewDto.getCourseScheduleId() , ClientEnum.STUDENT.getCode(), teacher.getUsername());
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public boolean submitCourseHomework(CourseHomeworkSubmitDto submitDto) {
|
|
@@ -233,13 +249,11 @@ public class CourseHomeworkServiceImpl extends ServiceImpl<CourseHomeworkDao, Co
|
|
|
courseHomework.setCompletedNum(courseHomework.getCompletedNum() + 1);
|
|
|
this.updateById(courseHomework);
|
|
|
|
|
|
- // 发送学生提交作业消息给老师
|
|
|
- SysUser student = sysUserFeignService.queryUserById(submitDto.getStudentId());
|
|
|
- SysUser teacher = sysUserFeignService.queryUserById(courseHomeworkDetailVo.getTeacherId());
|
|
|
- Map<Long,String> receivers = new HashMap<>();
|
|
|
- receivers.put(teacher.getId(), teacher.getPhone());
|
|
|
- // todo url设置
|
|
|
- sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.STUDENT_SUBMIT_HOMEWORK, receivers, null, 0,null , ClientEnum.TEACHER.getCode(),student.getUsername(),"url");
|
|
|
+ try {
|
|
|
+ sendSubmitMessage(submitDto, courseHomeworkDetailVo);
|
|
|
+ }catch (Exception e) {
|
|
|
+ log.warn("学生提交作业消息发送失败,{}",e.getMessage());
|
|
|
+ }
|
|
|
return true;
|
|
|
|
|
|
} else {
|
|
@@ -248,6 +262,17 @@ public class CourseHomeworkServiceImpl extends ServiceImpl<CourseHomeworkDao, Co
|
|
|
|
|
|
}
|
|
|
|
|
|
+ // 发送学生提交作业消息
|
|
|
+ private void sendSubmitMessage(CourseHomeworkSubmitDto submitDto, CourseHomeworkDetailVo courseHomeworkDetailVo) {
|
|
|
+ // 发送学生提交作业消息给老师
|
|
|
+ SysUser student = sysUserFeignService.queryUserById(submitDto.getStudentId());
|
|
|
+ SysUser teacher = sysUserFeignService.queryUserById(courseHomeworkDetailVo.getTeacherId());
|
|
|
+ Map<Long,String> receivers = new HashMap<>();
|
|
|
+ receivers.put(teacher.getId(), teacher.getPhone());
|
|
|
+
|
|
|
+ sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.STUDENT_SUBMIT_HOMEWORK, receivers, null, 0, "homework?courseId=" + submitDto.getCourseScheduleId(), ClientEnum.TEACHER.getCode(), student.getUsername());
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public IPage<CourseHomeworkVo> selectAdminPage(IPage<CourseHomeworkVo> page, HomeworkAdminSearch query) {
|
|
|
IPage<CourseHomeworkVo> courseHomeworkVoIPage = page.setRecords(baseMapper.selectAdminPage(page, query));
|