调试修复课程状态

This commit is contained in:
670788339
2024-04-24 18:57:48 +08:00
parent b1deabe7be
commit 44c0bf2e44
2 changed files with 37 additions and 6 deletions

View File

@@ -38,6 +38,33 @@ public class StudyCourseDao extends BaseDao<StudyCourse> {
total = courseContentDao.getCount(courseId); total = courseContentDao.getCount(courseId);
} }
//以下注意float类型是否等于100对应
float percent=n*100/total;
if(n>=total) {
//自主报名的课程,代表学习完成
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));
}
}
public void finishCheck1(String studyId,String courseId,Integer total){
LocalDateTime now=LocalDateTime.now();
//已完成的内容
int n=scItemDao.count(FieldFilters.eq("studyId",studyId),FieldFilters.eq("status",StudyCourseItem.STATUS_FINISH));
if(total==null) {
// total=courseContentDao.count(FieldFilters.eq("courseId", courseId),FieldFilters.eq("deleted",false));
total = courseContentDao.getCount(courseId);
}
if (total != 0){
//以下注意float类型是否等于100对应 //以下注意float类型是否等于100对应
float percent=n*100/total; float percent=n*100/total;
if(n>=total) { if(n>=total) {
@@ -55,8 +82,12 @@ public class StudyCourseDao extends BaseDao<StudyCourse> {
// UpdateBuilder.create("lastTime",LocalDateTime.now()), // UpdateBuilder.create("lastTime",LocalDateTime.now()),
// UpdateBuilder.create("status",StudyCourse.STATUS_STUDYING)); // UpdateBuilder.create("status",StudyCourse.STATUS_STUDYING));
} }
}else {
log.info("----------分母等于0-------total = " + total);
} }
}
/** /**
* 仅仅是更新学习进度,不做其它的处理 * 仅仅是更新学习进度,不做其它的处理
* @param studyId * @param studyId

View File

@@ -136,8 +136,8 @@ public class StudyExamServiceImpl implements IStudyExamService{
log.info("-----------------CourseId = " + item.getCourseId() + " , StudyId = " + item.getStudyId() + " , StudentId = " + item.getStudentId()); log.info("-----------------CourseId = " + item.getCourseId() + " , StudyId = " + item.getStudyId() + " , StudentId = " + item.getStudentId());
int totalContent = courseContentDao.getCount(item.getCourseId()); int totalContent = courseContentDao.getCount(item.getCourseId());
log.info("----------准备判断进度-------totalContent = " + totalContent); log.info("----------准备判断进度-------totalContent = " + totalContent);
scDao.finishCheck(item.getStudyId(),item.getCourseId(),totalContent); scDao.finishCheck1(item.getStudyId(),item.getCourseId(),totalContent);
log.info("------判断进度完毕----------------------"); log.info("----------判断进度完毕----------------------");
} }
} catch (Exception exception) { } catch (Exception exception) {
exception.printStackTrace(); exception.printStackTrace();