mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/per-boe/java-servers.git
synced 2025-12-11 20:06:51 +08:00
Compare commits
12 Commits
yx-104-082
...
zcwy0606-l
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fc98025a3a | ||
|
|
e2c697f860 | ||
|
|
c6a785bb4f | ||
|
|
8567fa9ecc | ||
|
|
359b66e48a | ||
|
|
8125a6bd77 | ||
|
|
9b37e8a73d | ||
|
|
2fa3378e94 | ||
|
|
0b7784779f | ||
|
|
e03118275d | ||
|
|
1b1cb17861 | ||
|
|
a35c1faa49 |
@@ -83,8 +83,13 @@ public class CourseContent extends BaseEntity {
|
|||||||
* */
|
* */
|
||||||
@Column(name = "duration")
|
@Column(name = "duration")
|
||||||
private Integer duration;
|
private Integer duration;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 视频播放进度
|
||||||
|
* */
|
||||||
|
@Column(name = "progress_video")
|
||||||
|
private Float progressVideo;
|
||||||
|
|
||||||
/**用于学习时的状态显示,非存储字段*/
|
/**用于学习时的状态显示,非存储字段*/
|
||||||
@Transient
|
@Transient
|
||||||
private Integer status;
|
private Integer status;
|
||||||
|
|||||||
@@ -82,4 +82,7 @@ public interface ICourseContentService{
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
CourseAssess getAssess(String ccid);
|
CourseAssess getAssess(String ccid);
|
||||||
|
|
||||||
|
void updateProcessVideo(String contentId, String courseId, Float processVideo);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
package com.xboe.module.course.service.impl;
|
package com.xboe.module.course.service.impl;
|
||||||
|
|
||||||
|
import java.sql.PreparedStatement;
|
||||||
|
import java.sql.SQLException;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
@@ -141,6 +143,17 @@ public class CourseContentServiceImpl implements ICourseContentService {
|
|||||||
return assess;
|
return assess;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
@Transactional
|
||||||
|
public void updateProcessVideo(String id, String courseId, Float progressVideo) {
|
||||||
|
// 处理 processVideo 为 null 的情况
|
||||||
|
if (progressVideo == null) {
|
||||||
|
progressVideo = 0.00f;
|
||||||
|
}
|
||||||
|
String sql = "UPDATE boe_course_content SET progress_video = "+ progressVideo+" WHERE id = "+ id+" AND course_id = "+ courseId+" ";
|
||||||
|
ccDao.sqlUpdate(sql);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional
|
@Transactional
|
||||||
public void updateName(String id, String name) {
|
public void updateName(String id, String name) {
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package com.xboe.module.exam.api;
|
|||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
|
import org.hibernate.exception.ConstraintViolationException;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
@@ -81,12 +82,25 @@ public class ExamTestApi extends ApiBaseController {
|
|||||||
if(StringUtil.isBlank(examTest.getTestName())){
|
if(StringUtil.isBlank(examTest.getTestName())){
|
||||||
return badRequest("标题为空");
|
return badRequest("标题为空");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 确保examTest有一个有效的主键ID(如果适用)
|
||||||
|
// 这取决于您的业务逻辑是否允许更新主键
|
||||||
|
// 通常,更新操作不会改变主键
|
||||||
|
if (examTest.getId() == null) {
|
||||||
|
return badRequest("更新操作需要有效的主键ID");
|
||||||
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
examTestService.update(examTest);
|
examTestService.update(examTest);
|
||||||
return success(examTest);
|
return success(examTest);
|
||||||
|
} catch (ConstraintViolationException e) {
|
||||||
|
// 捕获约束违反异常,并返回一个更具体的错误消息
|
||||||
|
log.error("修改失败,违反了约束条件", e);
|
||||||
|
return error("修改失败,违反了约束条件(可能是主键已存在)");
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.error("修改失败",e);
|
// 捕获其他所有异常
|
||||||
return error("修改失败",e.getMessage());
|
log.error("修改失败", e);
|
||||||
|
return error("修改失败", e.getMessage());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/**、
|
/**、
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ public class ExamTest extends BaseEntity {
|
|||||||
/**
|
/**
|
||||||
* 考试名称
|
* 考试名称
|
||||||
* */
|
* */
|
||||||
@Column(name = "test_name",nullable = false,length = 50)
|
@Column(name = "test_name",length = 50)
|
||||||
private String testName;
|
private String testName;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -46,7 +46,7 @@ public class ExamTest extends BaseEntity {
|
|||||||
/**
|
/**
|
||||||
* 考试时长 分钟
|
* 考试时长 分钟
|
||||||
* */
|
* */
|
||||||
@Column(name = "test_duration",nullable = false)
|
@Column(name = "test_duration")
|
||||||
private Integer testDuration;
|
private Integer testDuration;
|
||||||
/**
|
/**
|
||||||
* 显示解析
|
* 显示解析
|
||||||
@@ -101,19 +101,19 @@ public class ExamTest extends BaseEntity {
|
|||||||
/**
|
/**
|
||||||
* 试卷的ID
|
* 试卷的ID
|
||||||
*/
|
*/
|
||||||
@Column(name = "paper_id",nullable = false,length=20)
|
@Column(name = "paper_id",length=20)
|
||||||
private String paperId;
|
private String paperId;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 考试的类型
|
* 考试的类型
|
||||||
* */
|
* */
|
||||||
@Column(name = "test_type",nullable = false)
|
@Column(name = "test_type")
|
||||||
private Integer testType;
|
private Integer testType;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 发布状态 ,是否已发布
|
* 发布状态 ,是否已发布
|
||||||
*/
|
*/
|
||||||
@Column(name = "published",length = 1,nullable = false)
|
@Column(name = "published",length = 1)
|
||||||
private Boolean published;
|
private Boolean published;
|
||||||
/**
|
/**
|
||||||
* 发布时间
|
* 发布时间
|
||||||
@@ -154,7 +154,7 @@ public class ExamTest extends BaseEntity {
|
|||||||
/**
|
/**
|
||||||
* 范围,1表独立使用,2表课程内部
|
* 范围,1表独立使用,2表课程内部
|
||||||
* */
|
* */
|
||||||
@Column(name = "range_type",nullable = false)
|
@Column(name = "range_type")
|
||||||
private Integer rangeType;
|
private Integer rangeType;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -173,9 +173,11 @@ public class ExamTest extends BaseEntity {
|
|||||||
|
|
||||||
|
|
||||||
/**启用的,上架*/
|
/**启用的,上架*/
|
||||||
@Column(name = "enabled", nullable = false, length = 1)
|
@Column(name = "enabled", length = 1)
|
||||||
private Boolean enabled;
|
private Boolean enabled;
|
||||||
|
|
||||||
@Transient
|
@Transient
|
||||||
private String paperName;
|
private String paperName;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -70,7 +70,18 @@ public class ExamTestServiceImpl implements IExamTestService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void update(ExamTest examTest) {
|
public void update(ExamTest examTest) {
|
||||||
examTestDao.update(examTest);
|
if (examTest.getId() == null) {
|
||||||
|
throw new IllegalArgumentException("ID must not be null");
|
||||||
|
}
|
||||||
|
String sql = "update boe_exam_test set arrange = "+ examTest.getArrange() +", deadline_time = '"+examTest.getDeadlineTime() +"' , " +
|
||||||
|
"entrance_time = '"+examTest.getEntranceTime() +"' , paper_id = "+examTest.getPaperId() +",pass_line = "+examTest.getPassLine() +
|
||||||
|
", percent_score = "+examTest.getPercentScore() +" ,publish_time = '"+examTest.getPublishTime()+"' , published = "+examTest.getPublished()+
|
||||||
|
",random_count = "+examTest.getRandomCount()+" ,random_mode = "+examTest.getRandomMode()+",range_type = "+examTest.getRangeType() +
|
||||||
|
",scoring_type = "+examTest.getScoringType() +",show_analysis="+examTest.getShowAnalysis() +",show_answer = "+examTest.getShowAnswer() +
|
||||||
|
",test_duration = "+examTest.getTestDuration() +",test_name = '"+examTest.getTestName() +"',test_remark= '"+examTest.getTestRemark() +
|
||||||
|
"',test_type= '"+examTest.getTestType() +"' ,test_up = '"+examTest.getTestUp() +"' ,test_front= '"+examTest.getTestFront() +
|
||||||
|
"',times = '"+examTest.getTimes() +"' where id = "+examTest.getId()+"";
|
||||||
|
examTestDao.sqlUpdate(sql);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -529,7 +529,7 @@ public class StudyCourseApi extends ApiBaseController{
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@PostMapping("/study-video-time")
|
@PostMapping("/study-video-time")
|
||||||
public JsonResponse<Boolean> study(String studyId,String itemId,Integer videoTime){
|
public JsonResponse<Boolean> study(String itemId,Integer videoTime,String contentId , String courseId,Float progressVideo){
|
||||||
|
|
||||||
if(StringUtils.isBlank(itemId)){
|
if(StringUtils.isBlank(itemId)){
|
||||||
return error("参数错误");
|
return error("参数错误");
|
||||||
@@ -539,7 +539,10 @@ public class StudyCourseApi extends ApiBaseController{
|
|||||||
}
|
}
|
||||||
//检查是否已存在
|
//检查是否已存在
|
||||||
try {
|
try {
|
||||||
studyService.updateLastTime(itemId,videoTime,getCurrent().getAccountId());
|
studyService.updateLastTime(itemId,videoTime, getCurrent().getAccountId());
|
||||||
|
if (contentId != null && courseId != null && progressVideo != null){
|
||||||
|
contentService.updateProcessVideo(contentId, courseId, progressVideo);
|
||||||
|
}
|
||||||
return success(true);
|
return success(true);
|
||||||
}catch(Exception e) {
|
}catch(Exception e) {
|
||||||
log.error("记录最后学习时间错误",e);
|
log.error("记录最后学习时间错误",e);
|
||||||
|
|||||||
Reference in New Issue
Block a user