diff --git a/servers/boe-server-all/src/main/java/com/xboe/school/study/api/StudyExamApi.java b/servers/boe-server-all/src/main/java/com/xboe/school/study/api/StudyExamApi.java index 36747cde..bdc697d6 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/school/study/api/StudyExamApi.java +++ b/servers/boe-server-all/src/main/java/com/xboe/school/study/api/StudyExamApi.java @@ -28,7 +28,17 @@ public class StudyExamApi extends ApiBaseController{ @Autowired IStudyExamService sexamService; - + + /**2024.04.24 + * 矫正学员课程进度及完成状态 + * */ + @GetMapping("/correctStstus") + public void correctStstus(){ + log.info("---------矫正学员课程进度及完成状态--correctStstus---开始-----"); + sexamService.correctStstus(); + log.info("---------矫正学员课程进度及完成状态--correctStstus---结束-----"); + } + @PostMapping("/save") public JsonResponse save(@RequestBody StudyExam exam){ if(StringUtils.isBlank(exam.getCourseId())) { diff --git a/servers/boe-server-all/src/main/java/com/xboe/school/study/dao/StudyCourseDao.java b/servers/boe-server-all/src/main/java/com/xboe/school/study/dao/StudyCourseDao.java index 2913d1a9..291285fc 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/school/study/dao/StudyCourseDao.java +++ b/servers/boe-server-all/src/main/java/com/xboe/school/study/dao/StudyCourseDao.java @@ -2,6 +2,7 @@ package com.xboe.school.study.dao; import java.time.LocalDateTime; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Repository; @@ -12,6 +13,7 @@ import com.xboe.module.course.dao.CourseContentDao; import com.xboe.school.study.entity.StudyCourse; import com.xboe.school.study.entity.StudyCourseItem; +@Slf4j @Repository public class StudyCourseDao extends BaseDao { @@ -39,17 +41,19 @@ public class StudyCourseDao extends BaseDao { //以下注意,float类型,是否等于100对应 float percent=n*100/total; if(n>=total) { + log.info(" 100进度 CourseId = " + courseId + " , StudyId = " + studyId + " , total = " + total + ",已完成 = " + n); //自主报名的课程,代表学习完成 - super.updateMultiFieldById(studyId, - UpdateBuilder.create("progress",100f), - UpdateBuilder.create("lastTime",now), - UpdateBuilder.create("finishTime",now), - UpdateBuilder.create("status",StudyCourse.STATUS_FINISH)); +// super.updateMultiFieldById(studyId, +// UpdateBuilder.create("progress",100f), +// UpdateBuilder.create("lastTime",now), +// UpdateBuilder.create("finishTime",now), +// UpdateBuilder.create("status",StudyCourse.STATUS_FINISH)); }else { - super.updateMultiFieldById(studyId, - UpdateBuilder.create("progress",percent), - UpdateBuilder.create("lastTime",LocalDateTime.now()), - UpdateBuilder.create("status",StudyCourse.STATUS_STUDYING)); + log.info("进度=" + percent + " ,CourseId = " + courseId + " , StudyId = " + studyId + " , total = " + total + ",已完成 = " + n); +// super.updateMultiFieldById(studyId, +// UpdateBuilder.create("progress",percent), +// UpdateBuilder.create("lastTime",LocalDateTime.now()), +// UpdateBuilder.create("status",StudyCourse.STATUS_STUDYING)); } } diff --git a/servers/boe-server-all/src/main/java/com/xboe/school/study/dao/StudyExamDao.java b/servers/boe-server-all/src/main/java/com/xboe/school/study/dao/StudyExamDao.java index 78697d50..1b7eb5f8 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/school/study/dao/StudyExamDao.java +++ b/servers/boe-server-all/src/main/java/com/xboe/school/study/dao/StudyExamDao.java @@ -5,6 +5,14 @@ import org.springframework.stereotype.Repository; import com.xboe.core.orm.BaseDao; import com.xboe.school.study.entity.StudyExam; +import java.util.List; + @Repository public class StudyExamDao extends BaseDao { + + public List getAllStudyExamByStudyId() { + String hql1 = "SELECT course_id,study_id,student_id FROM boe_study_exam GROUP BY study_id"; + List listByHql = super.findListByHql(hql1); + return listByHql; + } } diff --git a/servers/boe-server-all/src/main/java/com/xboe/school/study/service/IStudyExamService.java b/servers/boe-server-all/src/main/java/com/xboe/school/study/service/IStudyExamService.java index adeaeebc..d3c900a2 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/school/study/service/IStudyExamService.java +++ b/servers/boe-server-all/src/main/java/com/xboe/school/study/service/IStudyExamService.java @@ -29,4 +29,6 @@ public interface IStudyExamService { * @return */ List getByStudyIdAndContentId(String studyId,String contentId); + + void correctStstus(); } diff --git a/servers/boe-server-all/src/main/java/com/xboe/school/study/service/impl/StudyExamServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/school/study/service/impl/StudyExamServiceImpl.java index af22a33a..2713f795 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/school/study/service/impl/StudyExamServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/school/study/service/impl/StudyExamServiceImpl.java @@ -6,6 +6,7 @@ import java.util.List; import javax.annotation.Resource; import javax.transaction.Transactional; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -21,6 +22,7 @@ import com.xboe.school.study.entity.StudyCourseItem; import com.xboe.school.study.entity.StudyExam; import com.xboe.school.study.service.IStudyExamService; +@Slf4j @Service public class StudyExamServiceImpl implements IStudyExamService{ @@ -105,4 +107,18 @@ public class StudyExamServiceImpl implements IStudyExamService{ return dao.findList(OrderCondition.desc("id"),FieldFilters.eq("studyId", studyId),FieldFilters.eq("contentId", contentId)); } + @Override + public void correctStstus() { + + List list = dao.getAllStudyExamByStudyId(); + log.info("list.size = " + list.size() + ",0 = " + list.get(0)); + for(StudyExam item : list){ + log.info("CourseId = " + item.getCourseId() + " , StudyId = " + item.getStudyId() + " , StudentId = " + item.getStudentId()); + int totalContent = courseContentDao.getCount(item.getCourseId()); + scDao.finishCheck(item.getStudyId(),item.getCourseId(),totalContent); + } + + + } + }