mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/per-boe/java-servers.git
synced 2025-12-11 20:06:51 +08:00
Merge branch 'zcwy0525-llf' into 'master'
Zcwy0525 llf See merge request !103
This commit is contained in:
@@ -48,7 +48,7 @@ public class UrlSecurityFilterImpl implements IUrlSecurityFilter{
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,8 @@ package com.xboe.school.study.api;
|
|||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import com.xboe.api.ThirdApi;
|
||||||
|
import com.xboe.school.study.entity.StudyCourse;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
@@ -18,6 +20,9 @@ import com.xboe.school.study.service.IStudyAssessService;
|
|||||||
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping(value="/xboe/school/study/assess")
|
@RequestMapping(value="/xboe/school/study/assess")
|
||||||
@@ -25,20 +30,27 @@ public class StudyAssessApi extends ApiBaseController{
|
|||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
IStudyAssessService sassessService;
|
IStudyAssessService sassessService;
|
||||||
|
@Resource
|
||||||
|
private ThirdApi thirdApi;
|
||||||
@PostMapping("/save")
|
@PostMapping("/save")
|
||||||
public JsonResponse<StudyAssess> save(@RequestBody StudyAssess assess){
|
public JsonResponse<StudyAssess> save(@RequestBody StudyAssess assess, HttpServletRequest request){
|
||||||
if(StringUtils.isBlank(assess.getCourseId())) {
|
if(StringUtils.isBlank(assess.getCourseId())) {
|
||||||
return badRequest("无课程信息");
|
return badRequest("无课程信息");
|
||||||
}
|
}
|
||||||
if(StringUtils.isBlank(assess.getStudyId())) {
|
if(StringUtils.isBlank(assess.getStudyId())) {
|
||||||
return badRequest("无学习id");
|
return badRequest("无学习id");
|
||||||
}
|
}
|
||||||
|
String token = request.getHeader("Xboe-Access-Token");
|
||||||
|
if (StringUtils.isEmpty(token)) {
|
||||||
|
token = request.getHeader("token");
|
||||||
|
}
|
||||||
try {
|
try {
|
||||||
CurrentUser cu=getCurrent();
|
CurrentUser cu=getCurrent();
|
||||||
assess.setStudentId(cu.getAccountId());
|
assess.setStudentId(cu.getAccountId());
|
||||||
assess.setStudentName(cu.getName());
|
assess.setStudentName(cu.getName());
|
||||||
sassessService.save(assess);
|
sassessService.save(assess,token);
|
||||||
|
List<StudyCourse> allUserList = thirdApi.getStudyCourseList(assess.getStudyId() ,assess.getCourseId(), token);
|
||||||
|
log.info("在线课学习记录"+allUserList);
|
||||||
return success(assess);
|
return success(assess);
|
||||||
}catch(Exception e) {
|
}catch(Exception e) {
|
||||||
log.error("保存课程评估信息错误",e);
|
log.error("保存课程评估信息错误",e);
|
||||||
|
|||||||
@@ -326,14 +326,12 @@ public class StudyCourseApi extends ApiBaseController{
|
|||||||
if(item!=null) {
|
if(item!=null) {
|
||||||
//如果记录存在,但是进度不100无成情况,就更新进度,一期不会有这种情况
|
//如果记录存在,但是进度不100无成情况,就更新进度,一期不会有这种情况
|
||||||
if(item.getProgress()<100 && sci.getProgress()>item.getProgress()) {
|
if(item.getProgress()<100 && sci.getProgress()>item.getProgress()) {
|
||||||
studyService.updateProcess(item.getId(), sci.getStudyId(), sci.getCourseId(), sci.getContentTotal(), sci.getProgress());
|
studyService.updateProcess(item.getId(), sci.getStudyId(), sci.getCourseId(), sci.getContentTotal(), sci.getProgress(),token);
|
||||||
}
|
}
|
||||||
//追加学习时长
|
//追加学习时长
|
||||||
studyService.appendStudyDuration(sci.getStudyId(),item.getId(),sci.getContentId(),sci.getDuration());
|
studyService.appendStudyDuration(sci.getStudyId(),item.getId(),sci.getContentId(),sci.getDuration());
|
||||||
|
List<StudyCourse> allUserList = thirdApi.getStudyCourseList(sci.getStudyId() ,sci.getCourseId(), token);
|
||||||
List<StudyCourse> allUserList = thirdApi.getStudyCourseList(sci.getStudyId(), sci.getCourseId(), token);
|
|
||||||
log.info("在线课学习记录"+allUserList);
|
log.info("在线课学习记录"+allUserList);
|
||||||
System.out.println("在线课学习记录"+allUserList);
|
|
||||||
return success(item.getId());
|
return success(item.getId());
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -348,13 +346,12 @@ public class StudyCourseApi extends ApiBaseController{
|
|||||||
sci.setAid(cuser.getAccountId());
|
sci.setAid(cuser.getAccountId());
|
||||||
sci.setAname(cuser.getName());
|
sci.setAname(cuser.getName());
|
||||||
|
|
||||||
studyService.saveStudyInfo(sci);
|
studyService.saveStudyInfo(sci,token);
|
||||||
//学习记录成功后处理
|
//学习记录成功后处理
|
||||||
studyService.appendStudyDuration(sci.getStudyId(),sci.getStudyItemId(),sci.getContentId(),sci.getDuration());
|
studyService.appendStudyDuration(sci.getStudyId(),sci.getStudyItemId(),sci.getContentId(),sci.getDuration());
|
||||||
|
List<StudyCourse> allUserList = thirdApi.getStudyCourseList(sci.getStudyId() ,sci.getCourseId(), token);
|
||||||
List<StudyCourse> allUserList = thirdApi.getStudyCourseList(sci.getStudyId(), sci.getCourseId(), token);
|
|
||||||
log.info("在线课学习记录"+allUserList);
|
log.info("在线课学习记录"+allUserList);
|
||||||
System.out.println("在线课学习记录"+allUserList);
|
//System.out.println("在线课学习记录"+allUserList);
|
||||||
return success(sci.getStudyItemId());
|
return success(sci.getStudyItemId());
|
||||||
}catch(Exception e) {
|
}catch(Exception e) {
|
||||||
log.error("记录学习情况错误",e);
|
log.error("记录学习情况错误",e);
|
||||||
@@ -392,7 +389,7 @@ public class StudyCourseApi extends ApiBaseController{
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@PostMapping("/study-content-finish")
|
@PostMapping("/study-content-finish")
|
||||||
public JsonResponse<String> studyContentFinish(@RequestBody StudyContentDto sci){
|
public JsonResponse<String> studyContentFinish(@RequestBody StudyContentDto sci, HttpServletRequest request){
|
||||||
|
|
||||||
if(StringUtils.isBlank(sci.getStudyId())){
|
if(StringUtils.isBlank(sci.getStudyId())){
|
||||||
return error("参数错误");
|
return error("参数错误");
|
||||||
@@ -402,15 +399,21 @@ public class StudyCourseApi extends ApiBaseController{
|
|||||||
}
|
}
|
||||||
// LocalDateTime now=LocalDateTime.now();
|
// LocalDateTime now=LocalDateTime.now();
|
||||||
CurrentUser cuser=getCurrent();
|
CurrentUser cuser=getCurrent();
|
||||||
|
String token = request.getHeader("Xboe-Access-Token");
|
||||||
|
if (StringUtils.isEmpty(token)) {
|
||||||
|
token = request.getHeader("token");
|
||||||
|
}
|
||||||
//检查是否已存在
|
//检查是否已存在
|
||||||
StudyCourseItem item = studyService.checkHas(sci.getStudyId(),sci.getContentId());
|
StudyCourseItem item = studyService.checkHas(sci.getStudyId(),sci.getContentId());
|
||||||
if(item!=null) {
|
if(item!=null) {
|
||||||
//如果记录存在,但是进度不到100,未完成情况,就更新进度,一期不会有这种情况
|
//如果记录存在,但是进度不到100,未完成情况,就更新进度,一期不会有这种情况
|
||||||
if(item.getProgress()<100) {
|
if(item.getProgress()<100) {
|
||||||
studyService.updateProcess(item.getId(),sci.getStudyId(),sci.getCourseId(), sci.getContentTotal(),100);
|
studyService.updateProcess(item.getId(),sci.getStudyId(),sci.getCourseId(), sci.getContentTotal(),100,token);
|
||||||
}
|
}
|
||||||
//追加学习时长,学习时长是单独的记录,这里不再进行记录
|
//追加学习时长,学习时长是单独的记录,这里不再进行记录
|
||||||
//studyService.appendStudyDuration(st);
|
//studyService.appendStudyDuration(st);
|
||||||
|
List<StudyCourse> allUserList = thirdApi.getStudyCourseList(sci.getStudyId() ,sci.getCourseId(), token);
|
||||||
|
log.info("在线课学习记录"+allUserList);
|
||||||
return success(item.getId());
|
return success(item.getId());
|
||||||
}
|
}
|
||||||
//如果不存在,就创建,这种情况应该不存在
|
//如果不存在,就创建,这种情况应该不存在
|
||||||
@@ -418,7 +421,9 @@ public class StudyCourseApi extends ApiBaseController{
|
|||||||
sci.setAid(cuser.getAccountId());
|
sci.setAid(cuser.getAccountId());
|
||||||
sci.setAname(cuser.getName());
|
sci.setAname(cuser.getName());
|
||||||
sci.setProgress(100);
|
sci.setProgress(100);
|
||||||
studyService.saveStudyInfo(sci);
|
studyService.saveStudyInfo(sci,token);
|
||||||
|
List<StudyCourse> allUserList = thirdApi.getStudyCourseList(sci.getStudyId() ,sci.getCourseId(), token);
|
||||||
|
log.info("在线课学习记录"+allUserList);
|
||||||
return success(sci.getStudyItemId());
|
return success(sci.getStudyItemId());
|
||||||
}catch(Exception e) {
|
}catch(Exception e) {
|
||||||
log.error("记录学习课程内容完成错误",e);
|
log.error("记录学习课程内容完成错误",e);
|
||||||
@@ -507,8 +512,8 @@ public class StudyCourseApi extends ApiBaseController{
|
|||||||
token = request.getHeader("token");
|
token = request.getHeader("token");
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
studyService.finishVideoStudyItem(itemId, studyId,courseId,cnum);
|
studyService.finishVideoStudyItem(itemId, studyId,courseId,cnum,token);
|
||||||
List<StudyCourse> allUserList = thirdApi.getStudyCourseList(studyId, courseId, token);
|
List<StudyCourse> allUserList = thirdApi.getStudyCourseList(studyId ,courseId, token);
|
||||||
log.info("在线课学习记录"+allUserList);
|
log.info("在线课学习记录"+allUserList);
|
||||||
return success(true);
|
return success(true);
|
||||||
}catch(Exception e) {
|
}catch(Exception e) {
|
||||||
@@ -550,7 +555,7 @@ public class StudyCourseApi extends ApiBaseController{
|
|||||||
*/
|
*/
|
||||||
@Deprecated
|
@Deprecated
|
||||||
@RequestMapping(value="/appendtime",method = {RequestMethod.GET,RequestMethod.POST})
|
@RequestMapping(value="/appendtime",method = {RequestMethod.GET,RequestMethod.POST})
|
||||||
public JsonResponse<String> appendTime(StudyTime studyTime){
|
public JsonResponse<String> appendTime(StudyTime studyTime, HttpServletRequest request){
|
||||||
|
|
||||||
if(StringUtils.isBlank(studyTime.getStudyId())){
|
if(StringUtils.isBlank(studyTime.getStudyId())){
|
||||||
return error("参数错误");
|
return error("参数错误");
|
||||||
@@ -564,11 +569,17 @@ public class StudyCourseApi extends ApiBaseController{
|
|||||||
CurrentUser cuser=getCurrent();
|
CurrentUser cuser=getCurrent();
|
||||||
studyTime.setStudentId(cuser.getAccountId());
|
studyTime.setStudentId(cuser.getAccountId());
|
||||||
studyTime.setStudentName(cuser.getName());
|
studyTime.setStudentName(cuser.getName());
|
||||||
|
String token = request.getHeader("Xboe-Access-Token");
|
||||||
|
if (StringUtils.isEmpty(token)) {
|
||||||
|
token = request.getHeader("token");
|
||||||
|
}
|
||||||
try {
|
try {
|
||||||
//此处需要优化处理,
|
//此处需要优化处理,
|
||||||
//不能直接记录追加学习时间。以后增加到队列中,后台服务定时从队列中读取, 更新到系统中
|
//不能直接记录追加学习时间。以后增加到队列中,后台服务定时从队列中读取, 更新到系统中
|
||||||
//studyService.appendStudyDuration(studyTime);
|
//studyService.appendStudyDuration(studyTime);
|
||||||
studyService.appendStudyDuration(studyTime.getStudyId(),null,studyTime.getContentId(),studyTime.getDuration());
|
studyService.appendStudyDuration(studyTime.getStudyId(),null,studyTime.getContentId(),studyTime.getDuration());
|
||||||
|
List<StudyCourse> allUserList = thirdApi.getStudyCourseList(studyTime.getStudyId() ,studyTime.getCourseId(), token);
|
||||||
|
log.info("在线课学习记录"+allUserList);
|
||||||
return success(studyTime.getId());
|
return success(studyTime.getId());
|
||||||
}catch(Exception e) {
|
}catch(Exception e) {
|
||||||
log.error("记录学习时长错误",e);
|
log.error("记录学习时长错误",e);
|
||||||
|
|||||||
@@ -6,6 +6,8 @@ import java.util.List;
|
|||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
|
|
||||||
|
import com.xboe.api.ThirdApi;
|
||||||
|
import com.xboe.school.study.entity.StudyCourse;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.data.redis.core.StringRedisTemplate;
|
import org.springframework.data.redis.core.StringRedisTemplate;
|
||||||
@@ -23,6 +25,9 @@ import com.xboe.school.study.service.IStudyExamService;
|
|||||||
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping(value="/xboe/school/study/exam")
|
@RequestMapping(value="/xboe/school/study/exam")
|
||||||
@@ -33,7 +38,8 @@ public class StudyExamApi extends ApiBaseController{
|
|||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
StringRedisTemplate redisTemplate;
|
StringRedisTemplate redisTemplate;
|
||||||
|
@Resource
|
||||||
|
private ThirdApi thirdApi;
|
||||||
|
|
||||||
/**2024.04.24
|
/**2024.04.24
|
||||||
* 矫正学员课程进度及完成状态
|
* 矫正学员课程进度及完成状态
|
||||||
@@ -48,7 +54,7 @@ public class StudyExamApi extends ApiBaseController{
|
|||||||
}
|
}
|
||||||
|
|
||||||
@PostMapping("/save")
|
@PostMapping("/save")
|
||||||
public JsonResponse<StudyExam> save(@RequestBody StudyExam exam){
|
public JsonResponse<StudyExam> save(@RequestBody StudyExam exam, HttpServletRequest request){
|
||||||
if(StringUtils.isBlank(exam.getCourseId())) {
|
if(StringUtils.isBlank(exam.getCourseId())) {
|
||||||
return badRequest("无课程信息");
|
return badRequest("无课程信息");
|
||||||
}
|
}
|
||||||
@@ -58,6 +64,10 @@ public class StudyExamApi extends ApiBaseController{
|
|||||||
if(exam.getScore()==null) {
|
if(exam.getScore()==null) {
|
||||||
return badRequest("得分计算错误");
|
return badRequest("得分计算错误");
|
||||||
}
|
}
|
||||||
|
String token = request.getHeader("Xboe-Access-Token");
|
||||||
|
if (StringUtils.isEmpty(token)) {
|
||||||
|
token = request.getHeader("token");
|
||||||
|
}
|
||||||
try {
|
try {
|
||||||
String key = exam.getStudyId() + "_" + exam.getContentId();
|
String key = exam.getStudyId() + "_" + exam.getContentId();
|
||||||
//判断是否存在redis
|
//判断是否存在redis
|
||||||
@@ -80,14 +90,15 @@ public class StudyExamApi extends ApiBaseController{
|
|||||||
exam.setEndTime(exam.getLastTime());
|
exam.setEndTime(exam.getLastTime());
|
||||||
}
|
}
|
||||||
log.info( exam.getStudyId() + "_" + exam.getContentId() + ",------------试卷开始提交 " + LocalDateTime.now());
|
log.info( exam.getStudyId() + "_" + exam.getContentId() + ",------------试卷开始提交 " + LocalDateTime.now());
|
||||||
String msg = sexamService.save(exam);
|
String msg = sexamService.save(exam,token);
|
||||||
log.info( exam.getStudyId() + "_" + exam.getContentId() + ",------------试卷保存完毕 ,msg = " + msg + " , " + LocalDateTime.now());
|
log.info( exam.getStudyId() + "_" + exam.getContentId() + ",------------试卷保存完毕 ,msg = " + msg + " , " + LocalDateTime.now());
|
||||||
exam.setAnswerJson("");
|
exam.setAnswerJson("");
|
||||||
exam.setPaperJson("");
|
exam.setPaperJson("");
|
||||||
|
|
||||||
//执行完毕 清除redis记录
|
//执行完毕 清除redis记录
|
||||||
redisTemplate.delete(key);
|
redisTemplate.delete(key);
|
||||||
|
List<StudyCourse> allUserList = thirdApi.getStudyCourseList(exam.getStudyId() ,exam.getCourseId(), token);
|
||||||
|
log.info("在线课学习记录"+allUserList);
|
||||||
return success(exam);
|
return success(exam);
|
||||||
}catch(Exception e) {
|
}catch(Exception e) {
|
||||||
log.error("保存答卷信息错误",e);
|
log.error("保存答卷信息错误",e);
|
||||||
|
|||||||
@@ -3,6 +3,8 @@ package com.xboe.school.study.api;
|
|||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import com.xboe.api.ThirdApi;
|
||||||
|
import com.xboe.school.study.entity.StudyCourse;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
@@ -19,6 +21,9 @@ import com.xboe.school.study.service.IStudyHomeWorkService;
|
|||||||
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping(value="/xboe/school/study/homework")
|
@RequestMapping(value="/xboe/school/study/homework")
|
||||||
@@ -26,9 +31,10 @@ public class StudyHomeWorkApi extends ApiBaseController{
|
|||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
IStudyHomeWorkService shomeworkService;
|
IStudyHomeWorkService shomeworkService;
|
||||||
|
@Resource
|
||||||
|
private ThirdApi thirdApi;
|
||||||
@PostMapping("/save")
|
@PostMapping("/save")
|
||||||
public JsonResponse<StudyHomeWork> save(@RequestBody StudyHomeWork shw){
|
public JsonResponse<StudyHomeWork> save(@RequestBody StudyHomeWork shw, HttpServletRequest request){
|
||||||
if(StringUtils.isBlank(shw.getCourseId())) {
|
if(StringUtils.isBlank(shw.getCourseId())) {
|
||||||
return badRequest("无课程信息");
|
return badRequest("无课程信息");
|
||||||
}
|
}
|
||||||
@@ -36,15 +42,18 @@ public class StudyHomeWorkApi extends ApiBaseController{
|
|||||||
if(StringUtils.isBlank(shw.getStudyId())) {
|
if(StringUtils.isBlank(shw.getStudyId())) {
|
||||||
return badRequest("您还没有学习,不可提交作业");
|
return badRequest("您还没有学习,不可提交作业");
|
||||||
}
|
}
|
||||||
|
String token = request.getHeader("Xboe-Access-Token");
|
||||||
|
if (StringUtils.isEmpty(token)) {
|
||||||
|
token = request.getHeader("token");
|
||||||
|
}
|
||||||
try {
|
try {
|
||||||
CurrentUser cu=getCurrent();
|
CurrentUser cu=getCurrent();
|
||||||
shw.setStudentId(cu.getAccountId());
|
shw.setStudentId(cu.getAccountId());
|
||||||
shw.setStudentName(cu.getName());
|
shw.setStudentName(cu.getName());
|
||||||
shw.setEndTime(LocalDateTime.now());
|
shw.setEndTime(LocalDateTime.now());
|
||||||
|
shomeworkService.save(shw,token);
|
||||||
shomeworkService.save(shw);
|
List<StudyCourse> allUserList = thirdApi.getStudyCourseList(shw.getStudyId() ,shw.getCourseId(), token);
|
||||||
|
log.info("在线课学习记录"+allUserList);
|
||||||
return success(shw);
|
return success(shw);
|
||||||
}catch(Exception e) {
|
}catch(Exception e) {
|
||||||
log.error("保存答卷信息错误",e);
|
log.error("保存答卷信息错误",e);
|
||||||
|
|||||||
@@ -1,7 +1,9 @@
|
|||||||
package com.xboe.school.study.dao;
|
package com.xboe.school.study.dao;
|
||||||
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import com.xboe.api.ThirdApi;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
@@ -13,6 +15,8 @@ import com.xboe.module.course.dao.CourseContentDao;
|
|||||||
import com.xboe.school.study.entity.StudyCourse;
|
import com.xboe.school.study.entity.StudyCourse;
|
||||||
import com.xboe.school.study.entity.StudyCourseItem;
|
import com.xboe.school.study.entity.StudyCourseItem;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@Repository
|
@Repository
|
||||||
public class StudyCourseDao extends BaseDao<StudyCourse> {
|
public class StudyCourseDao extends BaseDao<StudyCourse> {
|
||||||
@@ -22,14 +26,16 @@ public class StudyCourseDao extends BaseDao<StudyCourse> {
|
|||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
StudyCourseItemDao scItemDao;
|
StudyCourseItemDao scItemDao;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private ThirdApi thirdApi;
|
||||||
/**
|
/**
|
||||||
* 完成情况检查
|
* 完成情况检查
|
||||||
* @param studyId
|
* @param studyId
|
||||||
* @param courseId
|
* @param courseId
|
||||||
* @param total
|
* @param total
|
||||||
*/
|
*/
|
||||||
public void finishCheck(String studyId,String courseId,Integer total){
|
public void finishCheck(String studyId,String courseId,Integer total,String token){
|
||||||
log.info("------1.完成情况检查---------------studyId = " + studyId + " , courseId = " + courseId + " , total = " + total );
|
log.info("------1.完成情况检查---------------studyId = " + studyId + " , courseId = " + courseId + " , total = " + total );
|
||||||
LocalDateTime now=LocalDateTime.now();
|
LocalDateTime now=LocalDateTime.now();
|
||||||
//已完成的内容
|
//已完成的内容
|
||||||
@@ -58,6 +64,9 @@ public class StudyCourseDao extends BaseDao<StudyCourse> {
|
|||||||
UpdateBuilder.create("lastTime",LocalDateTime.now()),
|
UpdateBuilder.create("lastTime",LocalDateTime.now()),
|
||||||
UpdateBuilder.create("status",StudyCourse.STATUS_STUDYING));
|
UpdateBuilder.create("status",StudyCourse.STATUS_STUDYING));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
List<StudyCourse> allUserList = thirdApi.getStudyCourseList(studyId ,courseId, token);
|
||||||
|
log.info("在线课学习记录"+allUserList);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void finishCheck1(String studyId,String courseId,Integer total){
|
public void finishCheck1(String studyId,String courseId,Integer total){
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ public interface IStudyAssessService {
|
|||||||
* 保存考试信息
|
* 保存考试信息
|
||||||
* @param exam
|
* @param exam
|
||||||
*/
|
*/
|
||||||
void save(StudyAssess homework);
|
void save(StudyAssess homework,String token);
|
||||||
|
|
||||||
StudyAssess get(String id);
|
StudyAssess get(String id);
|
||||||
|
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ public interface IStudyExamService {
|
|||||||
* 保存考试信息
|
* 保存考试信息
|
||||||
* @param exam
|
* @param exam
|
||||||
*/
|
*/
|
||||||
String save(StudyExam exam);
|
String save(StudyExam exam,String token);
|
||||||
|
|
||||||
|
|
||||||
StudyExam get(String id);
|
StudyExam get(String id);
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ public interface IStudyHomeWorkService {
|
|||||||
* 保存考试信息
|
* 保存考试信息
|
||||||
* @param exam
|
* @param exam
|
||||||
*/
|
*/
|
||||||
void save(StudyHomeWork homework);
|
void save(StudyHomeWork homework,String token);
|
||||||
|
|
||||||
|
|
||||||
StudyHomeWork get(String id);
|
StudyHomeWork get(String id);
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ public interface IStudyService {
|
|||||||
* @param studyContentId
|
* @param studyContentId
|
||||||
* @param progress
|
* @param progress
|
||||||
*/
|
*/
|
||||||
void updateProcess(String studyContentId,String studyId, String courseId,Integer total,Integer progress);
|
void updateProcess(String studyContentId,String studyId, String courseId,Integer total,Integer progress,String token);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 更新最后的学习时间,及学习时间点
|
* 更新最后的学习时间,及学习时间点
|
||||||
@@ -44,7 +44,7 @@ public interface IStudyService {
|
|||||||
* 资源学习记录
|
* 资源学习记录
|
||||||
* @param sci
|
* @param sci
|
||||||
*/
|
*/
|
||||||
void saveStudyInfo(StudyContentDto dto);
|
void saveStudyInfo(StudyContentDto dto,String token);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 保存学习内容,用于开始学习时添加学习条目
|
* 保存学习内容,用于开始学习时添加学习条目
|
||||||
@@ -59,7 +59,7 @@ public interface IStudyService {
|
|||||||
* @param courseId
|
* @param courseId
|
||||||
* @param cnum
|
* @param cnum
|
||||||
*/
|
*/
|
||||||
void finishVideoStudyItem(String itemId,String studyId,String courseId,Integer cnum);
|
void finishVideoStudyItem(String itemId,String studyId,String courseId,Integer cnum,String token);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 追加学习持续时长,此处理是一期的,有追加记录,二期后追加记录在stat服务中,这里不需要再记录了,所以不建议使用此方法
|
* 追加学习持续时长,此处理是一期的,有追加记录,二期后追加记录在stat服务中,这里不需要再记录了,所以不建议使用此方法
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ public class StudyAssessServiceImpl implements IStudyAssessService{
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional
|
@Transactional
|
||||||
public void save(StudyAssess assess) {
|
public void save(StudyAssess assess,String token) {
|
||||||
|
|
||||||
//完成处理,判断是否已存在
|
//完成处理,判断是否已存在
|
||||||
Object obj=scItemDao.findField("id", FieldFilters.eq("studyId", assess.getStudyId()), FieldFilters.eq("contentId", assess.getContentId()));
|
Object obj=scItemDao.findField("id", FieldFilters.eq("studyId", assess.getStudyId()), FieldFilters.eq("contentId", assess.getContentId()));
|
||||||
@@ -59,8 +59,9 @@ public class StudyAssessServiceImpl implements IStudyAssessService{
|
|||||||
assess.setStudyItemId(sci.getId());
|
assess.setStudyItemId(sci.getId());
|
||||||
dao.save(assess);
|
dao.save(assess);
|
||||||
//检查是否全部学习完成
|
//检查是否全部学习完成
|
||||||
int totalContent=courseContentDao.count(FieldFilters.eq("courseId", assess.getCourseId()),FieldFilters.eq("deleted",false));
|
// int totalContent=courseContentDao.count(FieldFilters.eq("courseId", assess.getCourseId()),FieldFilters.eq("deleted",false));
|
||||||
scDao.finishCheck(assess.getStudyId(),assess.getCourseId(),totalContent);
|
int totalContent = courseContentDao.getCount(assess.getCourseId());
|
||||||
|
scDao.finishCheck(assess.getStudyId(),assess.getCourseId(),totalContent,token);
|
||||||
}else {
|
}else {
|
||||||
//转为评估只有一条,所以这里显示一条,不能再增加
|
//转为评估只有一条,所以这里显示一条,不能再增加
|
||||||
assess.setStudyItemId(obj.toString());
|
assess.setStudyItemId(obj.toString());
|
||||||
|
|||||||
@@ -7,7 +7,9 @@ import java.util.concurrent.TimeUnit;
|
|||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import javax.transaction.Transactional;
|
import javax.transaction.Transactional;
|
||||||
|
|
||||||
|
import com.xboe.api.ThirdApi;
|
||||||
import com.xboe.core.orm.QueryBuilder;
|
import com.xboe.core.orm.QueryBuilder;
|
||||||
|
import com.xboe.school.study.entity.StudyCourse;
|
||||||
import com.xboe.system.user.entity.Message;
|
import com.xboe.system.user.entity.Message;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
@@ -52,7 +54,7 @@ public class StudyExamServiceImpl implements IStudyExamService{
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional
|
@Transactional
|
||||||
public String save(StudyExam exam) {
|
public String save(StudyExam exam,String token) {
|
||||||
String key = exam.getStudyId() + "_" + exam.getContentId();
|
String key = exam.getStudyId() + "_" + exam.getContentId();
|
||||||
// //判断是否存在redis
|
// //判断是否存在redis
|
||||||
// if(StringUtils.isNotEmpty(redisTemplate.opsForValue().get(key))){
|
// if(StringUtils.isNotEmpty(redisTemplate.opsForValue().get(key))){
|
||||||
@@ -102,7 +104,7 @@ public class StudyExamServiceImpl implements IStudyExamService{
|
|||||||
//检查是否全部学习完成
|
//检查是否全部学习完成
|
||||||
// int totalContent=courseContentDao.count(FieldFilters.eq("courseId", exam.getCourseId()),FieldFilters.eq("deleted",false));
|
// int totalContent=courseContentDao.count(FieldFilters.eq("courseId", exam.getCourseId()),FieldFilters.eq("deleted",false));
|
||||||
int totalContent = courseContentDao.getCount(exam.getCourseId());
|
int totalContent = courseContentDao.getCount(exam.getCourseId());
|
||||||
scDao.finishCheck(exam.getStudyId(),exam.getCourseId(),totalContent);
|
scDao.finishCheck(exam.getStudyId(),exam.getCourseId(),totalContent,token);
|
||||||
|
|
||||||
}else {
|
}else {
|
||||||
exam.setStudyItemId(obj.toString());//此项就是学习条目的id
|
exam.setStudyItemId(obj.toString());//此项就是学习条目的id
|
||||||
@@ -112,10 +114,10 @@ public class StudyExamServiceImpl implements IStudyExamService{
|
|||||||
scItemDao.updateFieldById(exam.getStudyItemId(), "progress",prog);
|
scItemDao.updateFieldById(exam.getStudyItemId(), "progress",prog);
|
||||||
}
|
}
|
||||||
if(prog==100){
|
if(prog==100){
|
||||||
scDao.updateFieldById(exam.getStudyId(), "progress",100.0f);
|
scItemDao.updateFieldById(exam.getStudyId(), "progress",100);
|
||||||
scDao.updateFieldById(exam.getStudyId(), "finish_time",LocalDateTime.now());
|
scItemDao.updateFieldById(exam.getStudyId(), "finish_time",LocalDateTime.now());
|
||||||
scDao.updateFieldById(exam.getStudyId(), "status",StudyCourseItem.STATUS_FINISH);
|
scItemDao.updateFieldById(exam.getStudyId(), "status",StudyCourseItem.STATUS_FINISH);
|
||||||
scDao.updateFieldById(exam.getStudyId(), "last_score",100.0f);
|
scItemDao.updateFieldById(exam.getStudyId(), "score",100.0f);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -126,12 +128,13 @@ public class StudyExamServiceImpl implements IStudyExamService{
|
|||||||
scItemDao.updateFieldById(exam.getStudyItemId(), "status", f>=exam.getPassLine()?StudyCourseItem.STATUS_FINISH:StudyCourseItem.STATUS_STUDYING);
|
scItemDao.updateFieldById(exam.getStudyItemId(), "status", f>=exam.getPassLine()?StudyCourseItem.STATUS_FINISH:StudyCourseItem.STATUS_STUDYING);
|
||||||
scItemDao.updateFieldById(exam.getStudyItemId(), "progress",f>=exam.getPassLine()?100:f.intValue());
|
scItemDao.updateFieldById(exam.getStudyItemId(), "progress",f>=exam.getPassLine()?100:f.intValue());
|
||||||
if(f>=exam.getPassLine()){
|
if(f>=exam.getPassLine()){
|
||||||
scDao.updateFieldById(exam.getStudyId(), "progress",100.0f);
|
scItemDao.updateFieldById(exam.getStudyId(), "progress",100);
|
||||||
scDao.updateFieldById(exam.getStudyId(), "finish_time",LocalDateTime.now());
|
scItemDao.updateFieldById(exam.getStudyId(), "finish_time",LocalDateTime.now());
|
||||||
scDao.updateFieldById(exam.getStudyId(), "status",StudyCourseItem.STATUS_FINISH);
|
scItemDao.updateFieldById(exam.getStudyId(), "status",StudyCourseItem.STATUS_FINISH);
|
||||||
scDao.updateFieldById(exam.getStudyId(), "last_score",100.0f);
|
scItemDao.updateFieldById(exam.getStudyId(), "score",100.0f);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//执行完毕 清除redis记录
|
//执行完毕 清除redis记录
|
||||||
// redisTemplate.delete(key);
|
// redisTemplate.delete(key);
|
||||||
return "";
|
return "";
|
||||||
|
|||||||
@@ -36,7 +36,7 @@ public class StudyHomeWorkServiceImpl implements IStudyHomeWorkService{
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional
|
@Transactional
|
||||||
public void save(StudyHomeWork homework) {
|
public void save(StudyHomeWork homework,String token) {
|
||||||
|
|
||||||
|
|
||||||
//完成处理,判断是否已存在
|
//完成处理,判断是否已存在
|
||||||
@@ -62,7 +62,7 @@ public class StudyHomeWorkServiceImpl implements IStudyHomeWorkService{
|
|||||||
dao.save(homework);
|
dao.save(homework);
|
||||||
//检查是否全部学习完成
|
//检查是否全部学习完成
|
||||||
int totalContent=courseContentDao.count(FieldFilters.eq("courseId", homework.getCourseId()),FieldFilters.eq("deleted",false));
|
int totalContent=courseContentDao.count(FieldFilters.eq("courseId", homework.getCourseId()),FieldFilters.eq("deleted",false));
|
||||||
scDao.finishCheck(homework.getStudyId(),homework.getCourseId(),totalContent);
|
scDao.finishCheck(homework.getStudyId(),homework.getCourseId(),totalContent,token);
|
||||||
}else {
|
}else {
|
||||||
//只是保留一条作业记录,不再保存多条记录了
|
//只是保留一条作业记录,不再保存多条记录了
|
||||||
//dao.save(homework);
|
//dao.save(homework);
|
||||||
|
|||||||
@@ -5,8 +5,10 @@ import java.util.HashMap;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
import javax.transaction.Transactional;
|
import javax.transaction.Transactional;
|
||||||
|
|
||||||
|
import com.xboe.api.ThirdApi;
|
||||||
import com.xboe.school.study.entity.StudyCourse;
|
import com.xboe.school.study.entity.StudyCourse;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
@@ -61,7 +63,7 @@ public class StudyServiceImpl implements IStudyService{
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional
|
@Transactional
|
||||||
public void saveStudyInfo(StudyContentDto dto) {
|
public void saveStudyInfo(StudyContentDto dto,String token) {
|
||||||
StudyCourseItem sci = scItemDao.findOne(FieldFilters.eq("studyId", dto.getStudyId()),FieldFilters.eq("contentId", dto.getContentId()),FieldFilters.eq("aid", dto.getAid()));
|
StudyCourseItem sci = scItemDao.findOne(FieldFilters.eq("studyId", dto.getStudyId()),FieldFilters.eq("contentId", dto.getContentId()),FieldFilters.eq("aid", dto.getAid()));
|
||||||
LocalDateTime ldt=LocalDateTime.now();
|
LocalDateTime ldt=LocalDateTime.now();
|
||||||
if(sci==null) {
|
if(sci==null) {
|
||||||
@@ -95,7 +97,7 @@ public class StudyServiceImpl implements IStudyService{
|
|||||||
|
|
||||||
dto.setStudyItemId(sci.getId());
|
dto.setStudyItemId(sci.getId());
|
||||||
//检查是否全部学习完成
|
//检查是否全部学习完成
|
||||||
scDao.finishCheck(dto.getStudyId(),dto.getCourseId(),dto.getContentTotal());
|
scDao.finishCheck(dto.getStudyId(),dto.getCourseId(),dto.getContentTotal(),token);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -193,7 +195,7 @@ public class StudyServiceImpl implements IStudyService{
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional
|
@Transactional
|
||||||
public void updateProcess(String studyContentId,String studyId, String courseId,Integer total, Integer progress) {
|
public void updateProcess(String studyContentId,String studyId, String courseId,Integer total, Integer progress,String token) {
|
||||||
int status=StudyCourseItem.STATUS_STUDYING;
|
int status=StudyCourseItem.STATUS_STUDYING;
|
||||||
LocalDateTime now=LocalDateTime.now();
|
LocalDateTime now=LocalDateTime.now();
|
||||||
if(progress.intValue()==100) {
|
if(progress.intValue()==100) {
|
||||||
@@ -204,7 +206,7 @@ public class StudyServiceImpl implements IStudyService{
|
|||||||
UpdateBuilder.create("finishTime",now),
|
UpdateBuilder.create("finishTime",now),
|
||||||
UpdateBuilder.create("status",status));
|
UpdateBuilder.create("status",status));
|
||||||
//检查是否全部学习完成
|
//检查是否全部学习完成
|
||||||
scDao.finishCheck(studyId,courseId,total);
|
scDao.finishCheck(studyId,courseId,total,token);
|
||||||
}else {
|
}else {
|
||||||
scItemDao.updateMultiFieldById(studyContentId,
|
scItemDao.updateMultiFieldById(studyContentId,
|
||||||
UpdateBuilder.create("progress",progress),
|
UpdateBuilder.create("progress",progress),
|
||||||
@@ -296,7 +298,7 @@ public class StudyServiceImpl implements IStudyService{
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional
|
@Transactional
|
||||||
public void finishVideoStudyItem(String itemId,String studyId,String courseId,Integer cnum) {
|
public void finishVideoStudyItem(String itemId,String studyId,String courseId,Integer cnum,String token) {
|
||||||
LocalDateTime now=LocalDateTime.now();
|
LocalDateTime now=LocalDateTime.now();
|
||||||
scItemDao.updateMultiFieldById(itemId,
|
scItemDao.updateMultiFieldById(itemId,
|
||||||
UpdateBuilder.create("progress", 100),
|
UpdateBuilder.create("progress", 100),
|
||||||
@@ -305,7 +307,7 @@ public class StudyServiceImpl implements IStudyService{
|
|||||||
UpdateBuilder.create("status",StudyCourseItem.STATUS_FINISH)
|
UpdateBuilder.create("status",StudyCourseItem.STATUS_FINISH)
|
||||||
);
|
);
|
||||||
//检查是否全部学习完成
|
//检查是否全部学习完成
|
||||||
scDao.finishCheck(studyId,courseId,cnum);
|
scDao.finishCheck(studyId,courseId,cnum,token);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
## redis
|
## redis
|
||||||
spring.redis.database=4
|
spring.redis.database=1
|
||||||
spring.redis.host=127.0.0.1
|
#spring.redis.host=127.0.0.1
|
||||||
spring.redis.password=ENC(zA5LNV8xw3yEx6LMwdGGBGgNsOaD3Cg+)
|
#spring.redis.password=ENC(zA5LNV8xw3yEx6LMwdGGBGgNsOaD3Cg+)
|
||||||
spring.redis.port=6379
|
|
||||||
#spring.redis.host=124.70.92.162
|
|
||||||
#spring.redis.password=qwert!W577
|
|
||||||
#spring.redis.port=6379
|
#spring.redis.port=6379
|
||||||
|
spring.redis.host=124.70.92.162
|
||||||
|
spring.redis.password=qwert!W577
|
||||||
|
spring.redis.port=6379
|
||||||
|
|
||||||
# cloud nacos config
|
# cloud nacos config
|
||||||
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
|
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
|
||||||
@@ -15,12 +15,12 @@ spring.jpa.show-sql = true
|
|||||||
spring.jpa.hibernate.ddl-auto=update
|
spring.jpa.hibernate.ddl-auto=update
|
||||||
spring.datasource.driverClassName=com.mysql.jdbc.Driver
|
spring.datasource.driverClassName=com.mysql.jdbc.Driver
|
||||||
# spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver
|
# spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver
|
||||||
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/boeu_base?useSSL=false&useUnicode=true&characterEncoding=UTF8&zeroDateTimeBehavior=convertToNull
|
#spring.datasource.url=jdbc:mysql://127.0.0.1:3306/boe_base?useSSL=false&useUnicode=true&characterEncoding=UTF8&zeroDateTimeBehavior=convertToNull
|
||||||
spring.datasource.username=root
|
#spring.datasource.username=root
|
||||||
spring.datasource.password=ENC(lAoFOYuc8CAypPtigTNLYg==)
|
#spring.datasource.password=ENC(lAoFOYuc8CAypPtigTNLYg==)
|
||||||
#spring.datasource.url=jdbc:mysql://124.70.92.162:3306/boe_base?useSSL=false&useUnicode=true&characterEncoding=UTF8&zeroDateTimeBehavior=convertToNull
|
spring.datasource.url=jdbc:mysql://10.251.160.40:3306/boe_base?useSSL=false&useUnicode=true&characterEncoding=UTF8&zeroDateTimeBehavior=convertToNull
|
||||||
#spring.datasource.username=boe_base
|
spring.datasource.username=admin
|
||||||
#spring.datasource.password=k3DbtrcCkKAcFYzd
|
spring.datasource.password=boeRds01
|
||||||
|
|
||||||
logging.level.org.hibernate.SQL=DEBUG
|
logging.level.org.hibernate.SQL=DEBUG
|
||||||
logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE
|
logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
spring.profiles.active=@profileActive@
|
spring.profiles.active=dev
|
||||||
spring.application.name=boe-server-all
|
spring.application.name=boe-server-all
|
||||||
server.port=9090
|
server.port=9090
|
||||||
server.servlet.session.timeout=30m
|
server.servlet.session.timeout=30m
|
||||||
|
|||||||
Reference in New Issue
Block a user