修改分数

beetlsql3-dev
Mlxa0324 2 years ago
parent 4fea53858b
commit 5dc6f4a8bc

@ -13,6 +13,7 @@ import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Component;
import java.util.Date;
import java.util.List;
import java.util.Set;
import static cn.hutool.core.date.DatePattern.NORM_DATETIME_MINUTE_PATTERN;
@ -23,7 +24,7 @@ import static com.ibeetl.admin.core.service.CorePlatformService.TOKEN_KEY;
*
* 15
* 0 0/15 * * * ?
* 00:15 00:30 00:45
* 00:15 00:30 00:45 00:00
* @author lx
*/
@Slf4j
@ -45,10 +46,18 @@ public class OnLineRecordJob implements Job {
// 查询redis中现在还存在的session Key数量
Set<String> keys = CollUtil.emptyIfNull(stringRedisTemplate.keys(TOKEN_KEY + ":*"));
SysLog model = new SysLog();
// 格式化到分钟
// 这里注意需要控制5的倍数 00:15 00:30 00:45 00:00
Date nowDate = DateUtil.parse(DateUtil.now(), NORM_DATETIME_MINUTE_PATTERN);
SysLog paras = new SysLog();
paras.setCreateTime(nowDate);
paras.setMethod(ON_LINE_METHOD_NAME);
paras.setRequestUrl("在线人数统计");
List<SysLog> sysLogList = sysLogService.getValues(paras);
SysLog model = new SysLog();
// 这里固定该接口的请求路径
model.setMethod(ON_LINE_METHOD_NAME);
model.setRequestUrl("在线人数统计");

@ -1,6 +1,7 @@
package com.ibeetl.jlw.service;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.lang.Assert;
@ -50,6 +51,7 @@ import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.*;
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.function.Function;
import java.util.function.Predicate;
import java.util.stream.Collectors;
@ -676,10 +678,22 @@ public class TeacherOpenCourseQuestionLogService extends CoreBaseService<Teacher
return;
}
List<TeacherOpenCourseQuestionLog> logList = getValuesBySettingIds(questionSettingId.toString());
List<TeacherOpenCourseQuestionLog> logList = new CopyOnWriteArrayList<>(getValuesBySettingIds(questionSettingId.toString()));
setErrorSuccessCountField(updateList, logList);
// 这里是库里查询到多条记录,但只更新改过值的数据
updateList.forEach(item -> {
// 直接替换表里查询到的数据
int index = CollUtil.indexOf(logList, questionLog -> questionLog.getTeacherOpenCourseQuestionLogId().equals(item.getTeacherOpenCourseQuestionLogId()));
Optional<TeacherOpenCourseQuestionLog> optional = logList.stream()
.filter(o -> o.getTeacherOpenCourseQuestionLogId().equals(item.getTeacherOpenCourseQuestionLogId())).findFirst();
optional.ifPresent(c -> {
logList.set(index, c);
});
});
TeacherOpenCourseQuestionSetting questionSetting = teacherOpenCourseQuestionSettingService.getInfo(questionSettingId);
if (CollectionUtil.isNotEmpty(logList) && questionSetting != null) {
@ -750,7 +764,7 @@ public class TeacherOpenCourseQuestionLogService extends CoreBaseService<Teacher
sumSuccessCount += successCount;
sumErrorCount += errorCount;
sumDoCount += ObjectUtil.isNotEmpty(questionLog.getTeacherOpenCourseQuestionLogAnswer()) ? 1 : 0;
questionTotalScore = questionTotalScore.add(defaultIfNull(questionLog.getQuestionScore(), questionLog.getStudentScore()));
questionTotalScore = questionTotalScore.add(defaultIfNull(defaultIfNull(questionLog.getQuestionScore(), questionLog.getStudentScore()), ZERO));
myTotalScore = myTotalScore.add(defaultIfNull(questionLog.getStudentScore(), ZERO));
idsSet.add(questionLog.getTeacherOpenCourseQuestionLogId().toString());
}

Loading…
Cancel
Save