diff --git a/bonus-modules/bonus-exam/src/main/java/com/bonus/exam/service/impl/LearningTaskServiceImpl.java b/bonus-modules/bonus-exam/src/main/java/com/bonus/exam/service/impl/LearningTaskServiceImpl.java index 056b8ef..77e2972 100644 --- a/bonus-modules/bonus-exam/src/main/java/com/bonus/exam/service/impl/LearningTaskServiceImpl.java +++ b/bonus-modules/bonus-exam/src/main/java/com/bonus/exam/service/impl/LearningTaskServiceImpl.java @@ -108,6 +108,22 @@ public class LearningTaskServiceImpl implements LearningTaskService { return bigDecimal.floatValue(); } + public static Float getStudyTimeById(List> list) { + if (CollectionUtils.isEmpty(list)) { + return 0F; + } + BigDecimal bigDecimal = new BigDecimal("0"); + for (Map map : list) { + Object studyTimeObj = map.get("time"); + if (studyTimeObj != null) { + BigDecimal studyTime = BigDecimal.valueOf(Float.parseFloat(String.valueOf(studyTimeObj))); + // 继续处理 studyTime + bigDecimal = bigDecimal.add(studyTime); + } + } + return bigDecimal.floatValue(); + } + @Override @Transactional(rollbackFor = Exception.class) public AjaxResult addStudyTask(MultipartFile file, String params) { @@ -494,7 +510,9 @@ public class LearningTaskServiceImpl implements LearningTaskService { Float time = getStudyTaskById(studyTaskCoursewareTimeList); // 培训人员学习时长 List> studyTimes = mapper.getTaskCoursewareTime(dto.getStudyTaskId()); + Float studyTimeById = getStudyTimeById(studyTimes); for (StudyTaskPersonVo vo : list) { + vo.setStudyTime(studyTimeById); if (CollectionUtils.isNotEmpty(hasExam)) { int num = mapper.getExamRecord(hasExam.get(0), 1, String.valueOf(vo.getUserId())); if (num > 0) {