Browse Source

fix:添加作业过期

liujunchi 3 năm trước cách đây
mục cha
commit
bc82c26b08

+ 2 - 2
audio-analysis/src/main/resources/logback-spring.xml

@@ -31,7 +31,7 @@
 
 	<!--开发环境:打印控制台 -->
 	<springProfile name="local">
-		<root level="dev">
+		<root level="info">
 			<appender-ref ref="stdout" />
 			<appender-ref ref="file" />
 		</root>
@@ -39,7 +39,7 @@
 
 	<!--开发环境:打印控制台 -->
 	<springProfile name="dev">
-		<root level="dev">
+		<root level="info">
 			<appender-ref ref="stdout" />
 			<appender-ref ref="file" />
 		</root>

+ 5 - 0
cooleshow-common/src/main/java/com/yonge/cooleshow/common/constant/SysConfigConstant.java

@@ -217,4 +217,9 @@ public interface SysConfigConstant {
     /** 统一社会信用代码 */
     String COMPANY_ORGAN_CODE = "company_organ_code";
 
+    /**
+     * 课后作业过期时间 天
+     */
+    String HOMEWORK_EXPIRE_TIME = "homework_expire_time";
+
 }

+ 5 - 4
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/CourseHomeworkDao.java

@@ -36,11 +36,13 @@ public interface CourseHomeworkDao extends BaseMapper<CourseHomework> {
 	/**
 	 * 课程详情 课后作业信息
 	 *
-	 * @param courseId  课程id
+	 * @param courseId           课程id
 	 * @param studentId
+	 * @param homeworkExpireTime
 	 * @return 课后作业信息
 	 */
-	CourseHomeworkDetailVo selectCourseHomeworkDetailByCourseId(@Param("courseId") Long courseId, @Param("studentId") Long studentId);
+	CourseHomeworkDetailVo selectCourseHomeworkDetailByCourseId(@Param("courseId") Long courseId, @Param("studentId") Long studentId,
+																@Param("homeworkExpireTime") String homeworkExpireTime);
 
 	/**
 	 * 获取课程购买的用户信息
@@ -117,6 +119,5 @@ public interface CourseHomeworkDao extends BaseMapper<CourseHomework> {
 	 * @param studentId
 	 * @return
 	 */
-	List<CourseHomeworkVo> selectAbsenteeism(@Param("practiceRecord") List<Long> practiceRecord,
-											 @Param("studentId") Long studentId);
+	List<CourseHomeworkVo> selectAbsenteeism(@Param("practiceRecord") List<Long> practiceRecord, @Param("studentId") Long studentId);
 }

+ 19 - 3
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/CourseHomeworkServiceImpl.java

@@ -20,6 +20,7 @@ import com.yonge.cooleshow.biz.dal.enums.CourseScheduleEnum;
 import com.yonge.cooleshow.biz.dal.enums.MessageTypeEnum;
 import com.yonge.cooleshow.biz.dal.enums.YesOrNoEnum;
 import com.yonge.cooleshow.biz.dal.service.*;
+import com.yonge.cooleshow.common.constant.SysConfigConstant;
 import com.yonge.toolset.mybatis.support.PageUtil;
 import com.yonge.cooleshow.biz.dal.vo.CourseHomeworkDetailVo;
 import com.yonge.cooleshow.biz.dal.vo.CourseHomeworkVo;
@@ -35,6 +36,7 @@ import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
+import org.springframework.util.StringUtils;
 
 import java.util.*;
 import java.util.stream.Collectors;
@@ -64,6 +66,9 @@ public class CourseHomeworkServiceImpl extends ServiceImpl<CourseHomeworkDao, Co
     @Autowired
     private CourseScheduleStudentPaymentService courseScheduleStudentPaymentService;
 
+    @Autowired
+    private SysConfigService sysConfigService;
+
 	@Override
     public CourseHomeworkVo detail(Long id) {
         return baseMapper.detail(id);
@@ -164,7 +169,8 @@ public class CourseHomeworkServiceImpl extends ServiceImpl<CourseHomeworkDao, Co
     public CourseHomeworkDetailVo getCourseHomeworkDetailByCourseId(Long courseId, Long studentId) {
 
         // 课程基本信息
-        CourseHomeworkDetailVo courseHomeworkDetailVo = baseMapper.selectCourseHomeworkDetailByCourseId(courseId,studentId);
+        CourseHomeworkDetailVo courseHomeworkDetailVo = baseMapper.selectCourseHomeworkDetailByCourseId(courseId, studentId,
+                                                                                                        getHomeworkExpireTime());
 
         if (courseHomeworkDetailVo == null) {
             throw  new BizException("未找到作业信息");
@@ -279,7 +285,8 @@ public class CourseHomeworkServiceImpl extends ServiceImpl<CourseHomeworkDao, Co
 
         // 课程基本信息
         CourseHomeworkDetailVo courseHomeworkDetailVo = baseMapper
-                .selectCourseHomeworkDetailByCourseId(reviewDto.getCourseScheduleId(), reviewDto.getStudentId());
+                .selectCourseHomeworkDetailByCourseId(reviewDto.getCourseScheduleId(), reviewDto.getStudentId(),
+                                                      getHomeworkExpireTime());
 
         // 检查学生是否提交作业
         if (!YesOrNoEnum.YES.getCode().equals(courseHomeworkDetailVo.getSubmitHomework().getCode())) {
@@ -322,7 +329,7 @@ public class CourseHomeworkServiceImpl extends ServiceImpl<CourseHomeworkDao, Co
         }
         // 课程基本信息
         CourseHomeworkDetailVo courseHomeworkDetailVo = baseMapper
-                .selectCourseHomeworkDetailByCourseId(submitDto.getCourseScheduleId(), submitDto.getStudentId());
+                .selectCourseHomeworkDetailByCourseId(submitDto.getCourseScheduleId(), submitDto.getStudentId(),getHomeworkExpireTime());
 
         // 检查老师是否评价作业
         if (YesOrNoEnum.YES.getCode().equals(courseHomeworkDetailVo.getReviewHomework().getCode())) {
@@ -351,6 +358,15 @@ public class CourseHomeworkServiceImpl extends ServiceImpl<CourseHomeworkDao, Co
 
     }
 
+    private String getHomeworkExpireTime() {
+
+        String homeworkExpireTime = sysConfigService.findConfigValue(SysConfigConstant.HOMEWORK_EXPIRE_TIME);
+        if (StringUtils.isEmpty(homeworkExpireTime)) {
+            return "9999";
+        }
+        return homeworkExpireTime;
+    }
+
     //  发送学生提交作业消息
     private void sendSubmitMessage(CourseHomeworkSubmitDto submitDto, CourseHomeworkDetailVo courseHomeworkDetailVo) {
         // 发送学生提交作业消息给老师

+ 10 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/vo/CourseHomeworkDetailVo.java

@@ -104,6 +104,16 @@ public class CourseHomeworkDetailVo {
     @ApiModelProperty("作业布置时间")
     private Date decorateTime;
 
+    @ApiModelProperty("作业过期 1:已过期 0:未过期")
+    private Integer homeworkExpire;
+
+    public Integer getHomeworkExpire() {
+        return homeworkExpire;
+    }
+
+    public void setHomeworkExpire(Integer homeworkExpire) {
+        this.homeworkExpire = homeworkExpire;
+    }
 
     public Long getStudentId() {
         return studentId;

+ 1 - 0
cooleshow-user/user-biz/src/main/resources/config/mybatis/CourseHomeworkMapper.xml

@@ -201,6 +201,7 @@
         ,if(ch.id_ is null,0,1) as decorateHomework
         ,if(sch.attachments_ is null or sch.attachments_ = '',0,1) as submitHomework
         ,if(sch.teacher_replied_ is null or sch.teacher_replied_ = '',0,1) as reviewHomework
+        ,if(sch.id_ is not null and date_add(sch.create_time_,INTERVAL #{homeworkExpireTime} DAY) &lt; now(),1,0) as homeworkExpire
         from course_schedule cs
         left join course_homework ch on ch.course_schedule_id_ = cs.id_
         left join student_course_homework sch on ch.id_ = sch.course_homework_id_