From 638aa9ee932a1c253aacad8ab6dd8ae54ca285b0 Mon Sep 17 00:00:00 2001 From: yang <1175@qq.com> Date: Fri, 27 Sep 2024 14:24:01 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BD=9C=E4=B8=9A=E5=AF=BC=E5=87=BA=EF=BC=8C?= =?UTF-8?q?=E8=AE=A1=E7=AE=97=E6=97=B6=E9=95=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../study/service/impl/StudyExamServiceImpl.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) 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 386e8171..4bf148be 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 @@ -21,6 +21,7 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import javax.transaction.Transactional; +import java.time.Duration; import java.time.LocalDateTime; import java.util.List; @@ -73,10 +74,12 @@ public class StudyExamServiceImpl implements IStudyExamService{ //获取本次考试提交,学习状态与学习进度 int status=exam.getScore()>=exam.getPassLine()?StudyCourseItem.STATUS_FINISH:StudyCourseItem.STATUS_STUDYING; int progress = exam.getScore().intValue() >= exam.getPassLine() ? 100 : 0; + //计算时长 + LocalDateTime ldt=LocalDateTime.now(); + Integer studyDuration = Math.toIntExact(Duration.between(exam.getStartTime(), ldt).getSeconds()); if(obj==null) { StudyCourseItem sci=new StudyCourseItem(); - LocalDateTime ldt=LocalDateTime.now(); sci.setStudyId(exam.getStudyId()); sci.setContentId(exam.getContentId()); //sci.setContentName(homework.getContentName()); @@ -84,13 +87,14 @@ public class StudyExamServiceImpl implements IStudyExamService{ //sci.setCsectionId(homework.getCsectionId()); sci.setProgress(progress);//直接设置为学习完成 sci.setStatus(status);//状态直接更新为已完成 - sci.setStartTime(ldt); + sci.setStartTime(exam.getStartTime()); sci.setAid(exam.getStudentId()); sci.setAname(exam.getStudentName()); - sci.setFinishTime(LocalDateTime.now()); + sci.setFinishTime(ldt); sci.setLastStudyTime(0);//此项用户记录视频内容当前学习的时间点 sci.setLastTime(ldt); sci.setScore(exam.getScore()); + sci.setStudyDuration(studyDuration); scItemDao.save(sci); exam.setStudyItemId(sci.getId()); dao.save(exam); @@ -112,7 +116,8 @@ public class StudyExamServiceImpl implements IStudyExamService{ UpdateBuilder.create("finishTime", LocalDateTime.now()), UpdateBuilder.create("score", exam.getScore()), UpdateBuilder.create("progress", progress), - UpdateBuilder.create("status", status) + UpdateBuilder.create("status", status), + UpdateBuilder.create("studyDuration", studyDuration) ); }