zouxuan пре 2 година
родитељ
комит
22078eb172

+ 4 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/enums/MessageTypeEnum.java

@@ -78,6 +78,10 @@ public enum MessageTypeEnum implements BaseEnum<String, MessageTypeEnum> {
     TEACHER_PUSH_HOMEWORK_REPLY("TEACHER_PUSH_HOMEWORK_REPLY", "学生训练回复提醒"),
     STUDENT_PUSH_HOMEWORK_REPLY("STUDENT_PUSH_HOMEWORK_REPLY", "教师回复训练提醒"),
 
+    IM_PUBLISH_LESSON_EXAMINATION("IM_PUBLISH_LESSON_EXAMINATION", "测评提醒"),
+    STUDENT_PUSH_PUBLISH_LESSON_EXAMINATION("STUDENT_PUSH_PUBLISH_LESSON_EXAMINATION", "测评提醒"),
+    PUSH_NO_SUBMIT_LESSON_EXAMINATION("PUSH_NO_SUBMIT_LESSON_EXAMINATION", "测评提醒"),
+    TEACHER_PUSH_LESSON_EXAMINATION_END("TEACHER_PUSH_LESSON_EXAMINATION_END", "测评提醒"),
     IM_HOMEWORK_REMIND("IM_HOMEWORK_REMIND", "训练提醒"),
     IM_HOMEWORK_SUBMIT_PUSH("IM_HOMEWORK_SUBMIT_PUSH", "训练提交提醒"),
     IM_HOMEWORK_SUBMIT_PUSH_GROUP("IM_HOMEWORK_SUBMIT_PUSH_GROUP", "训练提交提醒"),

+ 16 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/LessonExaminationServiceImpl.java

@@ -6,14 +6,13 @@ import com.ym.mec.biz.dal.dto.LessonExaminationResultDto;
 import com.ym.mec.biz.dal.dto.LessonExaminationResultDto1;
 import com.ym.mec.biz.dal.dto.LessonExaminationSaveDto;
 import com.ym.mec.biz.dal.entity.*;
+import com.ym.mec.biz.dal.enums.MessageTypeEnum;
 import com.ym.mec.biz.dal.page.LessonExaminationQueryInfo;
 import com.ym.mec.biz.dal.page.LessonExaminationQueryInfo1;
-import com.ym.mec.biz.service.LessonExaminationService;
-import com.ym.mec.biz.service.StudentExtracurricularExercisesSituationService;
-import com.ym.mec.biz.service.StudentLessonExaminationDetailService;
-import com.ym.mec.biz.service.StudentLessonExaminationService;
+import com.ym.mec.biz.service.*;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.page.PageInfo;
+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.collections.CollectionUtils;
@@ -56,6 +55,8 @@ public class LessonExaminationServiceImpl extends ServiceImpl<LessonExaminationD
     private CourseScheduleDao courseScheduleDao;
     @Autowired
     private ClassGroupDao classGroupDao;
+    @Autowired
+    private SysMessageService sysMessageService;
 
     @Override
     public LessonExaminationDao getDao() {
@@ -113,6 +114,17 @@ public class LessonExaminationServiceImpl extends ServiceImpl<LessonExaminationD
         studentLessonExaminationDetailService.save(lessonExamination.getId(),param.getStudentLessonExaminationSaveDtos());
         //更新服务指标相关数量信息
         studentExtracurricularExercisesSituationService.updateNum(lessonExamination,studentIds);
+        //消息推送
+        String teacherName = teacherDao.queryNameById(param.getTeacherId());
+        Map<Integer, String> userMap = new HashMap<>(1);
+        userMap.put(param.getTeacherId(), param.getTeacherId().toString());
+        String notifyUrl = "evaluating?evaluateId=" + lessonExamination.getId();
+        String extra = "dayaedu" + notifyUrl + "&type=evaluating&evaluateId=" + lessonExamination.getId();
+        String[] strings = studentIds.toArray(new String[]{});
+        sysMessageService.batchSendImMessage(MessageTypeEnum.IM_PUBLISH_LESSON_EXAMINATION,param.getTeacherId().toString(), extra,
+                strings,null, teacherName);
+        sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.STUDENT_PUSH_PUBLISH_LESSON_EXAMINATION,
+                userMap, null, 0, 3 + notifyUrl, "STUDENT", teacherName);
     }
 
     @Override

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

@@ -127,11 +127,13 @@
     <select id="getOneByStudent" resultType="com.ym.mec.biz.dal.dto.LessonExaminationResultDto1">
         select le.expire_date_ expireDate,CASE WHEN NOW() > le.expire_date_ THEN 1 ELSE 0 END expireFlag,
                 cg.name_ classGroupName,mg.name_ musicGroupName,sle.training_flag_ trainingFlag,
-               sle.training_score_ trainingScore,sle.lesson_examination_id_ LessonExaminationId,sle.user_id_ userId
+               sle.training_score_ trainingScore,sle.lesson_examination_id_ LessonExaminationId,sle.user_id_ userId,
+            su.real_name_ teacherName,su.avatar_ avatar,
         from student_lesson_examination sle
                  left join lesson_examination le ON sle.lesson_examination_id_ = le.id_
                  left join class_group cg ON cg.id_ = le.class_group_id_
                  left join music_group mg ON mg.id_ = le.music_group_id_
+                 left join sys_user su ON su.id_ = le.teacher_id_
         WHERE sle.lesson_examination_id_ = #{lessonExaminationId} AND sle.user_id_ = #{userId} LIMIT 1
     </select>
 

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

@@ -846,7 +846,7 @@
         <include refid="queryTeacherAttendanceSql"/>
     </select>
     <select id="queryNameById" resultType="java.lang.String">
-        select real_name_ FROM sys_user s WHERE id_ = #{userId} LIMIT 1
+        select CASE WHEN real_name_ IS NULL THEN username_ ELSE real_name_ END  FROM sys_user s WHERE id_ = #{userId} LIMIT 1
     </select>
     <resultMap id="musicGroupStudentApplyDto" type="com.ym.mec.biz.dal.dto.MusicGroupStudentApplyDto">
         <result property="userId" column="user_id_"/>