Ver código fonte

Merge branch 'master' of http://git.dayaedu.com/yonge/mec

yonge 5 anos atrás
pai
commit
04206bbbbb

+ 11 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentExtracurricularExercisesSituationDao.java

@@ -53,5 +53,16 @@ public interface StudentExtracurricularExercisesSituationDao extends BaseDAO<Lon
      * @return int
      */
     int findLastWeekTodayUpdateNum(@Param("sunday") String sunday);
+
+    /**
+     * @describe 获取学生指定星期的课外训练统计记录
+     * @author Joburgess
+     * @date 2020/4/22
+     * @param monday:
+     * @param studentId:
+     * @return com.ym.mec.biz.dal.dto.StudentExercisesSituationDto
+     */
+    StudentExtracurricularExercisesSituation findStudentExercisesSituationsWithMonDay(@Param("monday") String monday,
+                                                                          @Param("studentId") Integer studentId);
 	
 }

+ 4 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -1828,6 +1828,9 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
         classGroupIds = new ArrayList<>(temp);
         Map<Integer, String> classIdSubjectNameMap = convertToMap(courseScheduleDao.findClassSubjects(classGroupIds));
         courseSchedules.forEach(courseSchedule -> {
+        	if(StringUtils.isNotBlank(courseSchedule.getName())){
+        		return;
+			}
             if (courseSchedule.getType().equals(CourseSchedule.CourseScheduleType.MIX)) {
                 courseSchedule.setName(courseSchedule.getType().getMsg());
             } else {
@@ -2236,6 +2239,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
                     courseSchedule.setClassDate(courseStartTime);
                     courseSchedule.setStartClassTime(courseStartTime);
                     courseSchedule.setEndClassTime(courseEndTime);
+                    courseSchedule.setName(vipGroup.getName());
 
 					if (!DateUtil.isSameDay(courseSchedule.getStartClassTime(), courseSchedule.getEndClassTime())) {
 						throw new BizException("上课时间不允许跨天,请重新调整上课时间");

+ 22 - 5
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ExtracurricularExercisesMessageServiceImpl.java

@@ -1,14 +1,12 @@
 package com.ym.mec.biz.service.impl;
 
 import com.ym.mec.auth.api.entity.SysUser;
-import com.ym.mec.biz.dal.dao.ExtracurricularExercisesDao;
-import com.ym.mec.biz.dal.dao.ExtracurricularExercisesMessageDao;
-import com.ym.mec.biz.dal.dao.ExtracurricularExercisesReplyDao;
-import com.ym.mec.biz.dal.dao.TeacherDao;
+import com.ym.mec.biz.dal.dao.*;
 import com.ym.mec.biz.dal.dto.StudentCourseHomeworkCommentDto;
 import com.ym.mec.biz.dal.entity.ExtracurricularExercises;
 import com.ym.mec.biz.dal.entity.ExtracurricularExercisesMessage;
 import com.ym.mec.biz.dal.entity.ExtracurricularExercisesReply;
+import com.ym.mec.biz.dal.entity.StudentExtracurricularExercisesSituation;
 import com.ym.mec.biz.dal.enums.ImSendTypeEnum;
 import com.ym.mec.biz.dal.enums.MessageTypeEnum;
 import com.ym.mec.biz.dal.page.StudentCourseHomeworkReplyQueryInfo;
@@ -27,11 +25,16 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.time.DayOfWeek;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
 import java.util.*;
 
 @Service
 public class ExtracurricularExercisesMessageServiceImpl extends BaseServiceImpl<Long, ExtracurricularExercisesMessage> implements ExtracurricularExercisesMessageService {
-	
+
+	@Autowired
+	private StudentExtracurricularExercisesSituationDao studentExtracurricularExercisesSituationDao;
 	@Autowired
 	private ExtracurricularExercisesMessageDao extracurricularExercisesMessageDao;
 	@Autowired
@@ -79,6 +82,20 @@ public class ExtracurricularExercisesMessageServiceImpl extends BaseServiceImpl<
 				}
 				if(change){
 					extracurricularExercisesReplyDao.update(extracurricularExercisesReply);
+					LocalDate nowDate = LocalDateTime.now(DateUtil.zoneId).toLocalDate();
+					LocalDate monDayDate = nowDate.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.MONDAY.getValue());
+					LocalDate createDateTime = LocalDateTime.ofInstant(extracurricularExercisesReply.getCreateTime().toInstant(), DateUtil.zoneId).toLocalDate();
+					LocalDate createMonday = createDateTime.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.MONDAY.getValue());
+					if(createDateTime.isBefore(monDayDate)){
+						StudentExtracurricularExercisesSituation studentExercisesSituation = studentExtracurricularExercisesSituationDao.findStudentExercisesSituationsWithMonDay(createMonday.toString(), extracurricularExercisesReply.getUserId());
+						if(new Integer(1).equals(extracurricularExercisesReply.getIsReplied())){
+							studentExercisesSituation.setExercisesMessageNum(1);
+						}
+						if(new Integer(1).equals(extracurricularExercisesReply.getIsRepliedTimely())){
+							studentExercisesSituation.setExercisesMessageTimelyNum(1);
+						}
+						studentExtracurricularExercisesSituationDao.update(studentExercisesSituation);
+					}
 				}
 			}
 

+ 11 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ExtracurricularExercisesReplyServiceImpl.java

@@ -2,10 +2,7 @@ package com.ym.mec.biz.service.impl;
 
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.*;
-import com.ym.mec.biz.dal.dto.CourseHomeworkStudentDetailDto;
-import com.ym.mec.biz.dal.dto.ExtraExerciseStudentsDto;
-import com.ym.mec.biz.dal.dto.Practice4ExercisesSituationDto;
-import com.ym.mec.biz.dal.dto.SimpleUserDto;
+import com.ym.mec.biz.dal.dto.*;
 import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.enums.MessageTypeEnum;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
@@ -140,6 +137,16 @@ public class ExtracurricularExercisesReplyServiceImpl extends BaseServiceImpl<Lo
 		existExtra.setSubmitTime(new Date());
 		extracurricularExercisesReplyDao.update(existExtra);
 
+		LocalDate nowDate = LocalDateTime.now(DateUtil.zoneId).toLocalDate();
+		LocalDate monDayDate = nowDate.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.MONDAY.getValue());
+		LocalDate createDateTime = LocalDateTime.ofInstant(existExtra.getCreateTime().toInstant(), DateUtil.zoneId).toLocalDate();
+		LocalDate createMonday = createDateTime.with(DateUtil.weekFields.dayOfWeek(), DayOfWeek.MONDAY.getValue());
+		if(createDateTime.isBefore(monDayDate)){
+			StudentExtracurricularExercisesSituation studentExercisesSituation = studentExtracurricularExercisesSituationDao.findStudentExercisesSituationsWithMonDay(createMonday.toString(), existExtra.getUserId());
+			studentExercisesSituation.setExercisesReplyNum(1);
+			studentExtracurricularExercisesSituationDao.update(studentExercisesSituation);
+		}
+
 		int submitStudentNum=extracurricularExercisesReplyDao.countIsSubmitStudents(existExtra.getExtracurricularExercisesId());
 		extracurricularExercises.setCompletedNum(submitStudentNum);
 		extracurricularExercisesDao.update(extracurricularExercises);

+ 1 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java

@@ -2351,6 +2351,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 			courseSchedule.setClassGroupId(classGroup.getId());
 			courseSchedule.setGroupType(GroupType.VIP);
 			courseSchedule.setMusicGroupId(vipGroup.getId().toString());
+			courseSchedule.setName(vipGroup.getName());
 //			if (courseSchedule.getTeachMode().equals(TeachModeEnum.ONLINE)) {
 //				surplusCourseTotalPrice = surplusCourseTotalPrice.add(onlineCoursePrice);
 //			} else if (courseSchedule.getTeachMode().equals(TeachModeEnum.OFFLINE)) {

+ 3 - 0
mec-biz/src/main/resources/config/mybatis/StudentExtracurricularExercisesSituationMapper.xml

@@ -257,4 +257,7 @@
     <select id="findLastWeekTodayUpdateNum" resultType="int">
 		SELECT COUNT(id_) FROM student_extracurricular_exercises_situation_ WHERE sunday_=#{sunday} AND DATE_FORMAT(update_time_,'%Y-%m-%d')=DATE_FORMAT(NOW(),'%Y-%m-%d')
     </select>
+    <select id="findStudentExercisesSituationsWithMonDay" resultMap="StudentExtracurricularExercisesSituation">
+		SELECT * FROM student_extracurricular_exercises_situation_ WHERE monday_=#{monday} AND student_id_=#{studentId}
+	</select>
 </mapper>