|
@@ -9,6 +9,7 @@ import com.alibaba.fastjson.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
|
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
|
|
import com.microsoft.schemas.office.visio.x2012.main.SectionType;
|
|
import com.microsoft.schemas.office.visio.x2012.main.SectionType;
|
|
|
|
|
+import com.zhongzheng.common.core.redis.RedisCache;
|
|
|
import com.zhongzheng.common.utils.DateUtils;
|
|
import com.zhongzheng.common.utils.DateUtils;
|
|
|
import com.zhongzheng.modules.bank.domain.Exam;
|
|
import com.zhongzheng.modules.bank.domain.Exam;
|
|
|
import com.zhongzheng.modules.course.bo.CourseQueryBo;
|
|
import com.zhongzheng.modules.course.bo.CourseQueryBo;
|
|
@@ -57,6 +58,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
import java.math.BigDecimal;
|
|
|
import java.util.*;
|
|
import java.util.*;
|
|
|
|
|
+import java.util.concurrent.TimeUnit;
|
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -121,7 +123,8 @@ public class UserStudyRecordServiceImpl extends ServiceImpl<UserStudyRecordMappe
|
|
|
private IUserBankRecordService iUserBankRecordService;
|
|
private IUserBankRecordService iUserBankRecordService;
|
|
|
@Autowired
|
|
@Autowired
|
|
|
private IUserExamGoodsService iUserExamGoodsService;
|
|
private IUserExamGoodsService iUserExamGoodsService;
|
|
|
-
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ private RedisCache redisCache;
|
|
|
@Override
|
|
@Override
|
|
|
public UserStudyRecordVo queryById(Long recordId) {
|
|
public UserStudyRecordVo queryById(Long recordId) {
|
|
|
UserStudyRecord db = this.baseMapper.selectById(recordId);
|
|
UserStudyRecord db = this.baseMapper.selectById(recordId);
|
|
@@ -257,6 +260,14 @@ public class UserStudyRecordServiceImpl extends ServiceImpl<UserStudyRecordMappe
|
|
|
@Override
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public Integer insertByAddBo(UserStudyRecordAddBo bo) {
|
|
public Integer insertByAddBo(UserStudyRecordAddBo bo) {
|
|
|
|
|
+ String key = "STUDY_Record_"+bo.getUserId();
|
|
|
|
|
+ Long value = redisCache.getCacheObject(key);
|
|
|
|
|
+ if(value!=null&&(Validator.isEmpty(bo.getStatus())||bo.getStatus()!=1)){
|
|
|
|
|
+ //非学完状态则防重复提交处理
|
|
|
|
|
+ return 1;
|
|
|
|
|
+ }
|
|
|
|
|
+ redisCache.setCacheObject(key,1L,5, TimeUnit.SECONDS);//5秒
|
|
|
|
|
+
|
|
|
CourseSectionVo courseSectionVo =iCourseSectionService.queryById(bo.getSectionId());
|
|
CourseSectionVo courseSectionVo =iCourseSectionService.queryById(bo.getSectionId());
|
|
|
if(courseSectionVo.getSectionType()==2&&Validator.isNotEmpty(bo.getPhoto())){ //直播有拍照即学完
|
|
if(courseSectionVo.getSectionType()==2&&Validator.isNotEmpty(bo.getPhoto())){ //直播有拍照即学完
|
|
|
bo.setStatus(1);
|
|
bo.setStatus(1);
|
|
@@ -604,24 +615,22 @@ public class UserStudyRecordServiceImpl extends ServiceImpl<UserStudyRecordMappe
|
|
|
periodId = userPeriodStatusAddBo.getId();*/
|
|
periodId = userPeriodStatusAddBo.getId();*/
|
|
|
} else if (userPeriodStatus.getStatus() == 3) { //待重修
|
|
} else if (userPeriodStatus.getStatus() == 3) { //待重修
|
|
|
userPeriodStatus.setPeriodStatus(1);
|
|
userPeriodStatus.setPeriodStatus(1);
|
|
|
- userPeriodStatus.setCreateTime(DateUtils.getNowTime());
|
|
|
|
|
userPeriodStatus.setUpdateTime(DateUtils.getNowTime());
|
|
userPeriodStatus.setUpdateTime(DateUtils.getNowTime());
|
|
|
if(Validator.isEmpty(userPeriodStatus.getRecordStartTime())){ //待重修第一次学习进来
|
|
if(Validator.isEmpty(userPeriodStatus.getRecordStartTime())){ //待重修第一次学习进来
|
|
|
userPeriodStatus.setRecordStartTime(entity.getStartTime());
|
|
userPeriodStatus.setRecordStartTime(entity.getStartTime());
|
|
|
}
|
|
}
|
|
|
- if (entity.getStatus() != null && entity.getStatus() == 1) { //待重修看完
|
|
|
|
|
|
|
+ if (Validator.isNotEmpty(entity.getStatus())&& entity.getStatus() == 1) { //待重修看完
|
|
|
userPeriodStatus.setRecordEndTime(entity.getEndTime());
|
|
userPeriodStatus.setRecordEndTime(entity.getEndTime());
|
|
|
userPeriodStatus.setStatus(2);
|
|
userPeriodStatus.setStatus(2);
|
|
|
}
|
|
}
|
|
|
iUserPeriodStatusService.updateById(userPeriodStatus);
|
|
iUserPeriodStatusService.updateById(userPeriodStatus);
|
|
|
periodId = userPeriodStatus.getId();
|
|
periodId = userPeriodStatus.getId();
|
|
|
}
|
|
}
|
|
|
- if (userPeriodStatus.getStatus() == 2) {//待审核
|
|
|
|
|
|
|
+ else if (userPeriodStatus.getStatus() == 2) {//待审核
|
|
|
//有学习记录完整播放且为待审添加结束时间
|
|
//有学习记录完整播放且为待审添加结束时间
|
|
|
userPeriodStatus.setPeriodStatus(1);
|
|
userPeriodStatus.setPeriodStatus(1);
|
|
|
- userPeriodStatus.setCreateTime(DateUtils.getNowTime());
|
|
|
|
|
userPeriodStatus.setUpdateTime(DateUtils.getNowTime());
|
|
userPeriodStatus.setUpdateTime(DateUtils.getNowTime());
|
|
|
- if (entity.getStatus() != null && entity.getStatus() == 1) {
|
|
|
|
|
|
|
+ if (Validator.isNotEmpty(entity.getStatus()) && entity.getStatus() == 1) {
|
|
|
userPeriodStatus.setRecordEndTime(entity.getEndTime());
|
|
userPeriodStatus.setRecordEndTime(entity.getEndTime());
|
|
|
userPeriodStatus.setStatus(2);
|
|
userPeriodStatus.setStatus(2);
|
|
|
}
|
|
}
|