|
@@ -1,6 +1,7 @@
|
|
|
package com.zd.exam.service.impl;
|
|
package com.zd.exam.service.impl;
|
|
|
|
|
|
|
|
import cn.hutool.json.JSONUtil;
|
|
import cn.hutool.json.JSONUtil;
|
|
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
import com.zd.common.core.exception.ServiceException;
|
|
import com.zd.common.core.exception.ServiceException;
|
|
|
import com.zd.common.core.security.TokenService;
|
|
import com.zd.common.core.security.TokenService;
|
|
|
import com.zd.common.core.utils.DateUtils;
|
|
import com.zd.common.core.utils.DateUtils;
|
|
@@ -172,7 +173,9 @@ public class ElChapterLearnRecordServiceImpl implements IElChapterLearnRecordSer
|
|
|
*/
|
|
*/
|
|
|
@Override
|
|
@Override
|
|
|
public Map<String, Object> learnFinish(ElChapterLearnRecord learnRecord) {
|
|
public Map<String, Object> learnFinish(ElChapterLearnRecord learnRecord) {
|
|
|
|
|
+ logger.info("learnFinish begins,param:{}", JSON.toJSONString(learnRecord));
|
|
|
List<ElChapterLearnRecord> list = selectElChapterLearnRecordList(learnRecord);
|
|
List<ElChapterLearnRecord> list = selectElChapterLearnRecordList(learnRecord);
|
|
|
|
|
+ logger.info("query ElChapterLearn list success,list:{}", JSON.toJSONString(list));
|
|
|
if(list!=null && !list.isEmpty() && list.size() > 1){
|
|
if(list!=null && !list.isEmpty() && list.size() > 1){
|
|
|
// 根据 课程,章节,用户,应该只能查一条数据,否则数据异常
|
|
// 根据 课程,章节,用户,应该只能查一条数据,否则数据异常
|
|
|
throw new ServiceException("数据异常,请联系管理员!");
|
|
throw new ServiceException("数据异常,请联系管理员!");
|
|
@@ -183,6 +186,7 @@ public class ElChapterLearnRecordServiceImpl implements IElChapterLearnRecordSer
|
|
|
learnRecord.setStatus(1);
|
|
learnRecord.setStatus(1);
|
|
|
|
|
|
|
|
ElCourseChapter chapter = elCourseChapterMapper.selectElCourseChapterById(learnRecord.getChapterId());
|
|
ElCourseChapter chapter = elCourseChapterMapper.selectElCourseChapterById(learnRecord.getChapterId());
|
|
|
|
|
+ logger.info("query ElCourseChapter success,chapter:{}", JSON.toJSONString(chapter));
|
|
|
learnRecord.setDuration(chapter.getDuration());
|
|
learnRecord.setDuration(chapter.getDuration());
|
|
|
elChapterLearnRecordMapper.updateElChapterLearnRecord(learnRecord);
|
|
elChapterLearnRecordMapper.updateElChapterLearnRecord(learnRecord);
|
|
|
|
|
|
|
@@ -196,7 +200,7 @@ public class ElChapterLearnRecordServiceImpl implements IElChapterLearnRecordSer
|
|
|
elConvertRecord.setBusinessNum(learnRecord.getDuration());
|
|
elConvertRecord.setBusinessNum(learnRecord.getDuration());
|
|
|
elConvertRecord.setStatus(0);
|
|
elConvertRecord.setStatus(0);
|
|
|
elConvertRecord.setUseNum(0L);
|
|
elConvertRecord.setUseNum(0L);
|
|
|
-
|
|
|
|
|
|
|
+ logger.info("insert ElConvert success,elConvertRecord:{}", JSON.toJSONString(elConvertRecord));
|
|
|
convertRecordService.insertElConvertRecord(elConvertRecord);
|
|
convertRecordService.insertElConvertRecord(elConvertRecord);
|
|
|
|
|
|
|
|
convertRecordId = elConvertRecord.getId();
|
|
convertRecordId = elConvertRecord.getId();
|
|
@@ -206,6 +210,8 @@ public class ElChapterLearnRecordServiceImpl implements IElChapterLearnRecordSer
|
|
|
|
|
|
|
|
// 练习结束 恢复黑名单
|
|
// 练习结束 恢复黑名单
|
|
|
LabBlackConfig blackConfig = bonusPointsService.getBlackTimeArea(learnRecord.getJoinUserId());
|
|
LabBlackConfig blackConfig = bonusPointsService.getBlackTimeArea(learnRecord.getJoinUserId());
|
|
|
|
|
+
|
|
|
|
|
+ logger.info("select LabBlack Config ,elConvertRecord:{}", JSON.toJSONString(blackConfig));
|
|
|
Long durations = 0L;
|
|
Long durations = 0L;
|
|
|
if(blackConfig != null && blackConfig.getCreateTime() != null && blackConfig.getHandleDay() != null){
|
|
if(blackConfig != null && blackConfig.getCreateTime() != null && blackConfig.getHandleDay() != null){
|
|
|
// 完成学习 根据违规时间范围统计学习时长,并处理
|
|
// 完成学习 根据违规时间范围统计学习时长,并处理
|
|
@@ -213,10 +219,10 @@ public class ElChapterLearnRecordServiceImpl implements IElChapterLearnRecordSer
|
|
|
// 统计学习时长
|
|
// 统计学习时长
|
|
|
durations = elConvertRecordMapper.selectALLDurationByTime(learnRecord.getJoinUserId(),blackConfig.getCreateTime(), blackConfig.getHandleDay());
|
|
durations = elConvertRecordMapper.selectALLDurationByTime(learnRecord.getJoinUserId(),blackConfig.getCreateTime(), blackConfig.getHandleDay());
|
|
|
if(durations > 0){
|
|
if(durations > 0){
|
|
|
-
|
|
|
|
|
Map<String, Object> data = new HashMap<>();
|
|
Map<String, Object> data = new HashMap<>();
|
|
|
data.put("learnStatus", 0);
|
|
data.put("learnStatus", 0);
|
|
|
data.put("learnTime", durations);
|
|
data.put("learnTime", durations);
|
|
|
|
|
+ logger.info("select Duration success,data:{}", JSON.toJSONString(data));
|
|
|
|
|
|
|
|
bonusPointsService.blackCallback(learnRecord.getJoinUserId(), data, 3);
|
|
bonusPointsService.blackCallback(learnRecord.getJoinUserId(), data, 3);
|
|
|
}
|
|
}
|
|
@@ -230,7 +236,7 @@ public class ElChapterLearnRecordServiceImpl implements IElChapterLearnRecordSer
|
|
|
map.put("durationStr", learnRecord.getDurationStr());
|
|
map.put("durationStr", learnRecord.getDurationStr());
|
|
|
map.put("durations", durations);
|
|
map.put("durations", durations);
|
|
|
|
|
|
|
|
- logger.error(learnRecord.getChapterId() + "章节学习完成,返回数据:" + JSONUtil.toJsonStr(map));
|
|
|
|
|
|
|
+ logger.info("{}章节学习完成,返回数据:{}", learnRecord.getChapterId(), JSONUtil.toJsonStr(map));
|
|
|
return map;
|
|
return map;
|
|
|
}else {
|
|
}else {
|
|
|
throw new ServiceException("未查询到学习记录,请返回重试!");
|
|
throw new ServiceException("未查询到学习记录,请返回重试!");
|