Ver código fonte

Merge remote-tracking branch 'origin/feature_HW_20230331' into feature_HW_20230331

zouxuan 2 anos atrás
pai
commit
2d0f98d27e

+ 6 - 10
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ExtracurricularExercisesServiceImpl.java

@@ -4,12 +4,7 @@ import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.JSONObject;
 import com.ym.mec.biz.dal.dao.*;
 import com.ym.mec.biz.dal.dao.*;
 import com.ym.mec.biz.dal.dto.*;
 import com.ym.mec.biz.dal.dto.*;
-import com.ym.mec.biz.dal.entity.ClassGroup;
-import com.ym.mec.biz.dal.entity.ExtracurricularExercises;
-import com.ym.mec.biz.dal.entity.ExtracurricularExercisesReply;
-import com.ym.mec.biz.dal.entity.StudentCourseHomework;
-import com.ym.mec.biz.dal.entity.StudentLessonTrainingDetail;
-import com.ym.mec.biz.dal.entity.Teacher;
+import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.enums.ELessonTrainingType;
 import com.ym.mec.biz.dal.enums.ELessonTrainingType;
 import com.ym.mec.biz.dal.enums.ImSendTypeEnum;
 import com.ym.mec.biz.dal.enums.ImSendTypeEnum;
 import com.ym.mec.biz.dal.enums.MessageTypeEnum;
 import com.ym.mec.biz.dal.enums.MessageTypeEnum;
@@ -114,7 +109,8 @@ public class ExtracurricularExercisesServiceImpl extends BaseServiceImpl<Long, E
 
 
 		if(Objects.isNull(exercises.getExpireDate())){
 		if(Objects.isNull(exercises.getExpireDate())){
 			LocalDateTime localDateTime=LocalDateTime.now();
 			LocalDateTime localDateTime=LocalDateTime.now();
-			localDateTime=localDateTime.plusDays(Integer.parseInt(sysConfigService.findByParamName("homework_expire_time").getParanValue()));
+			localDateTime=localDateTime.plusDays(Integer.parseInt(sysConfigService.findByParamName("homework_expire_time").getParanValue()))
+                    .withHour(21).withMinute(0).withSecond(0).withNano(0);
 			exercises.setExpireDate(Date.from(localDateTime.atZone(DateUtil.zoneId).toInstant()));
 			exercises.setExpireDate(Date.from(localDateTime.atZone(DateUtil.zoneId).toInstant()));
 		}
 		}
 		List<Integer> studentIds = Arrays.asList(exercises.getStudentIdList().split(",")).stream().mapToInt(Integer::valueOf).boxed().collect(Collectors.toList());
 		List<Integer> studentIds = Arrays.asList(exercises.getStudentIdList().split(",")).stream().mapToInt(Integer::valueOf).boxed().collect(Collectors.toList());
@@ -181,8 +177,8 @@ public class ExtracurricularExercisesServiceImpl extends BaseServiceImpl<Long, E
             Integer studentId = extracurricularExercisesReply.getUserId();
             Integer studentId = extracurricularExercisesReply.getUserId();
             if (exercises.getVersionTag().equals("v2")) {
             if (exercises.getVersionTag().equals("v2")) {
 
 
-                String notifyUrl = "?homeworkId=" + exercises.getId() + "&type=" +exercises.getGroupType();
-                String extra = "dayaedu" + notifyUrl ;
+                String notifyUrl = "homeworkId=" + exercises.getId() + "&type=" +exercises.getGroupType();
+                String extra = "dayaedu?type=homework&" + notifyUrl ;
                 sysMessageService.batchSendImMessage(MessageTypeEnum.EXTRA_REMIND_IM_DETAIL_V2, exercises.getTeacherId().toString(), extra,
                 sysMessageService.batchSendImMessage(MessageTypeEnum.EXTRA_REMIND_IM_DETAIL_V2, exercises.getTeacherId().toString(), extra,
                         new String[]{studentId.toString()},
                         new String[]{studentId.toString()},
                         null, dateStr);
                         null, dateStr);
@@ -190,7 +186,7 @@ public class ExtracurricularExercisesServiceImpl extends BaseServiceImpl<Long, E
                 Map<Integer, String> userMap = new HashMap<>();
                 Map<Integer, String> userMap = new HashMap<>();
                 userMap.put(studentId, studentId.toString());
                 userMap.put(studentId, studentId.toString());
                 sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.STUDENT_PUSH_EXTRA_REMIND_V2,
                 sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.STUDENT_PUSH_EXTRA_REMIND_V2,
-                        userMap, null, 0, "homework" + notifyUrl, "STUDENT",
+                        userMap, null, 0, "homework?" + notifyUrl, "STUDENT",
                         teacher.getRealName());
                         teacher.getRealName());
             } else {
             } else {
 
 

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

@@ -379,10 +379,10 @@ public class StudentCourseHomeworkServiceImpl extends BaseServiceImpl<Long, Stud
         List<StudentCourseHomework> list = studentCourseHomeworkDao.queryNotDoneHomeworkList();
         List<StudentCourseHomework> list = studentCourseHomeworkDao.queryNotDoneHomeworkList();
         StringBuffer sb;
         StringBuffer sb;
         for (StudentCourseHomework sch : list) {
         for (StudentCourseHomework sch : list) {
-            sb = new StringBuffer("courseScheduleID=").append(sch.getCourseScheduleId()).append("&studentCourseHomeworkId=").append(sch.getId());
+            sb = new StringBuffer("homeworkId=").append(sch.getCourseHomeworkId()).append("&type=HOMEWORK");
             Map<Integer, String> receivers = new HashMap<Integer, String>(1);
             Map<Integer, String> receivers = new HashMap<Integer, String>(1);
             receivers.put(sch.getUserId(), sch.getUserId() + "");
             receivers.put(sch.getUserId(), sch.getUserId() + "");
-            sysMessageService.batchSendMessage(MessageSender.JIGUANG, MessageTypeEnum.STUDENT_PUSH_JOB_MESSAGE, receivers, null, 0, "3?" + sb, "STUDENT", sch.getCourseHomework()
+            sysMessageService.batchSendMessage(MessageSender.JIGUANG, MessageTypeEnum.STUDENT_PUSH_JOB_MESSAGE, receivers, null, 0, "homework?" + sb, "STUDENT", sch.getCourseHomework()
                     .getMusicGroup().getName(), sch.getCourseHomework().getClassGroup().getName());
                     .getMusicGroup().getName(), sch.getCourseHomework().getClassGroup().getName());
         }
         }
     }
     }

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

@@ -29,6 +29,7 @@ import org.springframework.transaction.annotation.Isolation;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
 import org.springframework.util.CollectionUtils;
 
 
+import java.time.LocalDateTime;
 import java.util.*;
 import java.util.*;
 import java.util.stream.Collectors;
 import java.util.stream.Collectors;
 
 
@@ -353,7 +354,11 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
 					courseHomework.setMusicGroupId(currentCourseDetail.getMusicGroupId());
 					courseHomework.setMusicGroupId(currentCourseDetail.getMusicGroupId());
 					courseHomework.setGroupType(teacherAttendance.getGroupType());
 					courseHomework.setGroupType(teacherAttendance.getGroupType());
 					courseHomework.setClassGroupId(currentCourseDetail.getClassId().intValue());
 					courseHomework.setClassGroupId(currentCourseDetail.getClassId().intValue());
-					courseHomework.setExpiryDate(DateUtil.addDays(date,Integer.parseInt(sysConfigService.findByParamName("homework_expire_time").getParanValue())));
+
+                    LocalDateTime localDateTime=LocalDateTime.now();
+                    localDateTime=localDateTime.plusDays(Integer.parseInt(sysConfigService.findByParamName("homework_expire_time").getParanValue()))
+                            .withHour(21).withMinute(0).withSecond(0).withNano(0);
+					courseHomework.setExpiryDate(Date.from(localDateTime.atZone(DateUtil.zoneId).toInstant()));
 
 
 					courseHomeworkService.insert(courseHomework);
 					courseHomeworkService.insert(courseHomework);
 					List<StudentCourseHomework> studentCourseHomeworks = new ArrayList<>();
 					List<StudentCourseHomework> studentCourseHomeworks = new ArrayList<>();
@@ -434,15 +439,15 @@ public class TeacherAttendanceServiceImpl extends BaseServiceImpl<Long, TeacherA
                             if (versionTag.equals("v2")) {
                             if (versionTag.equals("v2")) {
                                 Map<Integer, String> userMap = new HashMap<>();
                                 Map<Integer, String> userMap = new HashMap<>();
                                 userMap.put(studentCourseHomework.getUserId(), studentCourseHomework.getUserId().toString());
                                 userMap.put(studentCourseHomework.getUserId(), studentCourseHomework.getUserId().toString());
-                                String notifyUrl = "?homeworkId=" + courseHomework.getId() + "&type=" + ELessonTrainingType.HOMEWORK.getCode();
-                                String extra = "dayaedu" + notifyUrl ;
+                                String notifyUrl = "homeworkId=" + courseHomework.getId() + "&type=" + ELessonTrainingType.HOMEWORK.getCode();
+                                String extra = "dayaedu?type=homework&" + notifyUrl ;
 
 
                                 sysMessageService.batchSendImMessage(MessageTypeEnum.IM_HOMEWORK_REMIND_V2, courseSchedule.getActualTeacherId().toString(), extra,
                                 sysMessageService.batchSendImMessage(MessageTypeEnum.IM_HOMEWORK_REMIND_V2, courseSchedule.getActualTeacherId().toString(), extra,
                                         new String[]{studentCourseHomework.getUserId().toString()},
                                         new String[]{studentCourseHomework.getUserId().toString()},
                                         null, courseSchedule.getName(), dateStr);
                                         null, courseSchedule.getName(), dateStr);
 
 
                                 sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.STUDENT_PUSH_HOMEWORK_REMIND_V2,
                                 sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.STUDENT_PUSH_HOMEWORK_REMIND_V2,
-                                        userMap, null, 0, "homework" + notifyUrl, "STUDENT", teacher.getRealName());
+                                        userMap, null, 0, "homework?" + notifyUrl, "STUDENT", teacher.getRealName());
 
 
                             } else {
                             } else {
                                 Map<Integer, String> userMap = new HashMap<>();
                                 Map<Integer, String> userMap = new HashMap<>();

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

@@ -195,7 +195,7 @@
         LEFT JOIN im_group ig ON igm.im_group_id_ = ig.id_
         LEFT JOIN im_group ig ON igm.im_group_id_ = ig.id_
         left join class_group cg on cg.id_ = ig.id_
         left join class_group cg on cg.id_ = ig.id_
         left join music_group mg on mg.id_ = cg.music_group_id_
         left join music_group mg on mg.id_ = cg.music_group_id_
-        where 1 =1
+        where 1 =1 and ig.group_type_ in ('NORMAL','MIX')
         <if test="userId != null">
         <if test="userId != null">
             AND igm.user_id_ = #{userId}
             AND igm.user_id_ = #{userId}
         </if>
         </if>

+ 18 - 2
mec-biz/src/main/resources/config/mybatis/StudentCourseHomeworkMapper.xml

@@ -320,8 +320,9 @@
                  LEFT JOIN course_homework ch ON sch.course_homework_id_ = ch.id_
                  LEFT JOIN course_homework ch ON sch.course_homework_id_ = ch.id_
                  LEFT JOIN music_group mg ON ch.music_group_id_ = mg.id_
                  LEFT JOIN music_group mg ON ch.music_group_id_ = mg.id_
                  LEFT JOIN class_group cg ON ch.class_group_id_ = cg.id_
                  LEFT JOIN class_group cg ON ch.class_group_id_ = cg.id_
-        WHERE sch.status_ = 0
-          AND datediff(NOW(), sch.create_time_) &lt; 8
+        WHERE date_format(date_add(ch.expiry_date_,interval -1 day),'%Y-%m-%d') = date_format(now(),'%Y-%m-%d')
+          AND (sch.standard_flag_ not in ('STANDARD', 'EXCELLENT') or sch.standard_flag_ is null)
+          AND ch.version_tag_ = 'v2'
     </select>
     </select>
     <select id="countStudentCourseHomeworks" resultType="java.lang.Integer">
     <select id="countStudentCourseHomeworks" resultType="java.lang.Integer">
         SELECT COUNT(id_)
         SELECT COUNT(id_)
@@ -743,4 +744,19 @@
             sch.user_id_ = #{userId}
             sch.user_id_ = #{userId}
                 AND sch.course_homework_id_ = #{courseHomeworkId}
                 AND sch.course_homework_id_ = #{courseHomeworkId}
     </select>
     </select>
+
+    <select id="queryNotSuccessUserIdByHomeworkIds" resultType="java.lang.Integer">
+        SELECT
+            distinct sch.user_id_
+        FROM
+            student_course_homework sch
+        left join course_homework ch on ch.id_ = sch.course_homework_id_
+        WHERE
+            sch.course_homework_id_ in
+            <foreach collection="homeworkIds" item="homeworkId" open="(" close=")" separator=",">
+                #{homeworkId}
+            </foreach>
+                AND (sch.standard_flag_ not in ('STANDARD','EXCELLENT') or sch.standard_flag_ is null)
+            and ch.version_tag_ = 'v2'
+    </select>
 </mapper>
 </mapper>