From 394a460804ab0dee5f2afe95583e2cf38cda6a34 Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期二, 04 六月 2024 17:06:18 +0800
Subject: [PATCH] 试卷类修改
---
src/main/java/com/ycl/jxkg/controller/admin/ExamPaperController.java | 7
src/main/java/com/ycl/jxkg/domain/entity/ExamPaper.java | 37 ----
src/main/java/com/ycl/jxkg/domain/vo/admin/exam/ExamTemplateVO.java | 34 +---
src/main/java/com/ycl/jxkg/service/impl/TaskExamCustomerAnswerImpl.java | 57 +++---
src/main/resources/mapper/ExamPaperMapper.xml | 22 -
src/main/resources/mapper/ExamTemplateMapper.xml | 26 --
src/main/java/com/ycl/jxkg/domain/entity/ExamTemplate.java | 60 +++----
src/main/java/com/ycl/jxkg/service/impl/ExamPaperAnswerServiceImpl.java | 105 ++++++------
src/main/java/com/ycl/jxkg/domain/vo/admin/exam/ExamPaperPageRequestVO.java | 2
src/main/java/com/ycl/jxkg/domain/vo/admin/exam/ExamResponseVO.java | 5
src/main/java/com/ycl/jxkg/service/impl/ExamPaperServiceImpl.java | 91 +++++-----
11 files changed, 184 insertions(+), 262 deletions(-)
diff --git a/src/main/java/com/ycl/jxkg/controller/admin/ExamPaperController.java b/src/main/java/com/ycl/jxkg/controller/admin/ExamPaperController.java
index efa32dd..23b4b13 100644
--- a/src/main/java/com/ycl/jxkg/controller/admin/ExamPaperController.java
+++ b/src/main/java/com/ycl/jxkg/controller/admin/ExamPaperController.java
@@ -3,6 +3,7 @@
import com.ycl.jxkg.base.BaseApiController;
import com.ycl.jxkg.base.Result;
import com.ycl.jxkg.domain.entity.ExamPaper;
+import com.ycl.jxkg.mapper.ExamPaperMapper;
import com.ycl.jxkg.service.ExamPaperService;
import com.ycl.jxkg.utils.DateTimeUtil;
import com.ycl.jxkg.utils.PageInfoHelper;
@@ -21,8 +22,9 @@
@RequestMapping(value = "/api/admin/exam/paper")
public class ExamPaperController extends BaseApiController {
- private final ExamPaperService examPaperService;
+ private final ExamPaperService examPaperService;
+ private final ExamPaperMapper baseMapper;
@RequestMapping(value = "/page", method = RequestMethod.POST)
public Result<PageInfo<ExamResponseVO>> pageList(@RequestBody ExamPaperPageRequestVO model) {
PageInfo<ExamPaper> pageInfo = examPaperService.page(model);
@@ -66,8 +68,7 @@
@RequestMapping(value = "/delete/{id}", method = RequestMethod.POST)
public Result delete(@PathVariable Integer id) {
- ExamPaper examPaper = examPaperService.getById(id);
- examPaperService.updateById(examPaper);
+ baseMapper.deleteById(id);
return Result.ok();
}
}
diff --git a/src/main/java/com/ycl/jxkg/domain/entity/ExamPaper.java b/src/main/java/com/ycl/jxkg/domain/entity/ExamPaper.java
index 29a0b03..5c9cfe5 100644
--- a/src/main/java/com/ycl/jxkg/domain/entity/ExamPaper.java
+++ b/src/main/java/com/ycl/jxkg/domain/entity/ExamPaper.java
@@ -27,19 +27,13 @@
private Integer subjectId;
/**
- * 璇曞嵎绫诲瀷( 1鍥哄畾璇曞嵎 4.鏃舵璇曞嵎 6.浠诲姟璇曞嵎)
+ * 璇曞嵎绫诲瀷( 1鍥哄畾璇曞嵎 2.闅忓嵆璇曞嵎 3.闅忓簭璇曞嵎)
*/
@TableField("paper_type")
private Integer paperType;
/**
- * 骞寸骇
- */
- @TableField("grade_level")
- private Integer gradeLevel;
-
- /**
- * 璇曞嵎鎬诲垎(鍗冨垎鍒�)
+ * 璇曞嵎鎬诲垎
*/
@TableField("score")
private Integer score;
@@ -51,43 +45,16 @@
private Integer questionCount;
/**
- * 棰樼洰鍒嗘暟
- */
- @TableField("question_score")
- private Integer questionScore;
-
- /**
* 寤鸿鏃堕暱(鍒嗛挓)
*/
@TableField("suggest_time")
private Integer suggestTime;
-
- /**
- * 鏃舵璇曞嵎 寮�濮嬫椂闂�
- */
- @TableField("limit_start_time")
- private Date limitStartTime;
-
- /**
- * 鏃舵璇曞嵎 缁撴潫鏃堕棿
- */
- @TableField("limit_end_time")
- private Date limitEndTime;
-
- /**
- * 璇曞嵎妗嗘灦 鍐呭涓篔SON
- */
- @TableField("frame_text_content_id")
- private Integer frameTextContentId;
@TableField("create_user")
private Integer createUser;
@TableField("create_time")
private Date createTime;
-
- @TableField("task_exam_id")
- private Integer taskExamId;
/**
* 鍙鎬э紝鍏紑/绉佹湁
diff --git a/src/main/java/com/ycl/jxkg/domain/entity/ExamTemplate.java b/src/main/java/com/ycl/jxkg/domain/entity/ExamTemplate.java
index 932af87..8279fd2 100644
--- a/src/main/java/com/ycl/jxkg/domain/entity/ExamTemplate.java
+++ b/src/main/java/com/ycl/jxkg/domain/entity/ExamTemplate.java
@@ -3,8 +3,10 @@
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ycl.jxkg.domain.base.AbsEntity;
+import io.swagger.models.auth.In;
import lombok.Data;
+import java.math.BigDecimal;
import java.util.Date;
/**
* 闅忔満璇曞嵎妯℃澘琛�
@@ -13,22 +15,10 @@
@TableName("t_exam_template")
public class ExamTemplate extends AbsEntity {
/**
- * 妯℃澘鍚�
+ * 璇曞嵎id
* */
- @TableField("name")
- private String name;
-
- /**
- * 瀛︾
- * */
- @TableField("subject_id")
- private Integer subjectId;
-
- /**
- * 寤鸿鑰冭瘯鏃堕暱
- * */
- @TableField("suggest_time")
- private Integer suggestTime;
+ @TableField("exam_paper_id")
+ private Integer examPaperId;
/**
* 鍗曢�夐鏁伴噺
@@ -66,27 +56,27 @@
@TableField("calculation")
private Integer calculation;
- /**
- * 鎬诲垎
- * */
- @TableField("score")
- private Integer score;
+ /** 鍗曢�夋瘡棰樺垎鏁� */
+ @TableField("single_score")
+ private BigDecimal singleScore;
- /**
- * 澶氶�夋墸鍒嗙被鍨�
- * */
- @TableField("deduct_type")
- private String deductType;
+ /** 澶氶�夋瘡棰樺垎鏁� */
+ @TableField("multiple_score")
+ private BigDecimal multipleScore;
- /**
- * 鍒涘缓鏃堕棿
- * */
- @TableField("create_time")
- private Date createTime;
+ /** 濉┖姣忛鍒嗘暟 */
+ @TableField("gap_score")
+ private BigDecimal gapScore;
- /**
- * 鍒涘缓浜�
- * */
- @TableField("create_user")
- private Integer createUser;
+ /** 鍒ゆ柇姣忛鍒嗘暟 */
+ @TableField("trueFalse_score")
+ private BigDecimal trueFalseScore;
+
+ /** 绠�绛旀瘡棰樺垎鏁� */
+ @TableField("shortAnswer_score")
+ private BigDecimal shortAnswerScore;
+
+ /** 璁$畻姣忛鍒嗘暟 */
+ @TableField("calculation_score")
+ private BigDecimal calculationScore;
}
diff --git a/src/main/java/com/ycl/jxkg/domain/vo/admin/exam/ExamPaperPageRequestVO.java b/src/main/java/com/ycl/jxkg/domain/vo/admin/exam/ExamPaperPageRequestVO.java
index ec59cb2..110fea3 100644
--- a/src/main/java/com/ycl/jxkg/domain/vo/admin/exam/ExamPaperPageRequestVO.java
+++ b/src/main/java/com/ycl/jxkg/domain/vo/admin/exam/ExamPaperPageRequestVO.java
@@ -9,6 +9,8 @@
private Integer id;
+ private String name;
+
private Integer subjectId;
private Integer level;
diff --git a/src/main/java/com/ycl/jxkg/domain/vo/admin/exam/ExamResponseVO.java b/src/main/java/com/ycl/jxkg/domain/vo/admin/exam/ExamResponseVO.java
index 44ce22d..72481c6 100644
--- a/src/main/java/com/ycl/jxkg/domain/vo/admin/exam/ExamResponseVO.java
+++ b/src/main/java/com/ycl/jxkg/domain/vo/admin/exam/ExamResponseVO.java
@@ -3,6 +3,8 @@
import lombok.Data;
+import java.util.Date;
+
@Data
public class ExamResponseVO {
@@ -22,6 +24,5 @@
private Integer paperType;
- private Integer frameTextContentId;
-
+ private Integer suggestTime;
}
diff --git a/src/main/java/com/ycl/jxkg/domain/vo/admin/exam/ExamTemplateVO.java b/src/main/java/com/ycl/jxkg/domain/vo/admin/exam/ExamTemplateVO.java
index 50a06de..68a94eb 100644
--- a/src/main/java/com/ycl/jxkg/domain/vo/admin/exam/ExamTemplateVO.java
+++ b/src/main/java/com/ycl/jxkg/domain/vo/admin/exam/ExamTemplateVO.java
@@ -18,14 +18,8 @@
@Data
public class ExamTemplateVO extends AbsVo {
- /** 妯℃澘鍚嶇О */
- private String name;
-
- /** 璇曞嵎绉戠洰 */
- private Integer subjectId;
-
- /** 鑰冭瘯鏃堕暱(鍒嗛挓) */
- private Integer suggestTime;
+ /** 璇曞嵎id */
+ private Integer examPaperId;
/** 鍗曢�夐鏁伴噺 */
private Integer singleChoice;
@@ -45,34 +39,22 @@
/** 璁$畻棰樻暟閲� */
private Integer calculation;
- /** 璇曞嵎鎬诲垎 */
- private Integer score;
-
- /** 澶氶�夐鎵e垎鏂瑰紡 */
- private String deductType;
-
- /** 鍒涘缓浜� */
- private Integer createUser;
-
- /** 鍒涘缓鏃堕棿 */
- private Date createTime;
-
- /** */
+ /** 鍗曢�夋瘡棰樺垎鏁� */
private BigDecimal singleScore;
- /** */
+ /** 澶氶�夋瘡棰樺垎鏁� */
private BigDecimal multipleScore;
- /** */
+ /** 濉┖姣忛鍒嗘暟 */
private BigDecimal gapScore;
- /** */
+ /** 鍒ゆ柇姣忛鍒嗘暟 */
private BigDecimal trueFalseScore;
- /** */
+ /** 绠�绛旀瘡棰樺垎鏁� */
private BigDecimal shortAnswerScore;
- /** */
+ /** 璁$畻姣忛鍒嗘暟 */
private BigDecimal calculationScore;
public static ExamTemplateVO getVoByEntity(@NonNull ExamTemplate entity, ExamTemplateVO vo) {
diff --git a/src/main/java/com/ycl/jxkg/service/impl/ExamPaperAnswerServiceImpl.java b/src/main/java/com/ycl/jxkg/service/impl/ExamPaperAnswerServiceImpl.java
index d5c93e7..9bfe852 100644
--- a/src/main/java/com/ycl/jxkg/service/impl/ExamPaperAnswerServiceImpl.java
+++ b/src/main/java/com/ycl/jxkg/service/impl/ExamPaperAnswerServiceImpl.java
@@ -66,27 +66,28 @@
if (null != examPaperAnswer)
return null;
}
- String frameTextContent = textContentService.getById(examPaper.getFrameTextContentId()).getContent();
- List<ExamPaperTitleItemObject> examPaperTitleItemObjects = JsonUtil.toJsonListObject(frameTextContent, ExamPaperTitleItemObject.class);
- List<Integer> questionIds = examPaperTitleItemObjects.stream().flatMap(t -> t.getQuestionItems().stream().map(q -> q.getId())).collect(Collectors.toList());
- List<Question> questions = questionMapper.selectByIds(questionIds);
- //灏嗛鐩粨鏋勭殑杞寲涓洪鐩瓟妗�
- List<ExamPaperQuestionCustomerAnswer> examPaperQuestionCustomerAnswers = examPaperTitleItemObjects.stream()
- .flatMap(t -> t.getQuestionItems().stream()
- .map(q -> {
- Question question = questions.stream().filter(tq -> tq.getId().equals(q.getId())).findFirst().get();
- ExamPaperSubmitItemVO customerQuestionAnswer = examPaperSubmitVO.getAnswerItems().stream()
- .filter(tq -> tq.getQuestionId().equals(q.getId()))
- .findFirst()
- .orElse(null);
- return ExamPaperQuestionCustomerAnswerFromVM(question, customerQuestionAnswer, examPaper, q.getItemOrder(), user, now);
- })
- ).collect(Collectors.toList());
-
- ExamPaperAnswer examPaperAnswer = ExamPaperAnswerFromVM(examPaperSubmitVO, examPaper, examPaperQuestionCustomerAnswers, user, now);
- examPaperAnswerInfo.setExamPaper(examPaper);
- examPaperAnswerInfo.setExamPaperAnswer(examPaperAnswer);
- examPaperAnswerInfo.setExamPaperQuestionCustomerAnswers(examPaperQuestionCustomerAnswers);
+ //TODO:寰呭畬鎴�
+// String frameTextContent = textContentService.getById(examPaper.getFrameTextContentId()).getContent();
+// List<ExamPaperTitleItemObject> examPaperTitleItemObjects = JsonUtil.toJsonListObject(frameTextContent, ExamPaperTitleItemObject.class);
+// List<Integer> questionIds = examPaperTitleItemObjects.stream().flatMap(t -> t.getQuestionItems().stream().map(q -> q.getId())).collect(Collectors.toList());
+// List<Question> questions = questionMapper.selectByIds(questionIds);
+// //灏嗛鐩粨鏋勭殑杞寲涓洪鐩瓟妗�
+// List<ExamPaperQuestionCustomerAnswer> examPaperQuestionCustomerAnswers = examPaperTitleItemObjects.stream()
+// .flatMap(t -> t.getQuestionItems().stream()
+// .map(q -> {
+// Question question = questions.stream().filter(tq -> tq.getId().equals(q.getId())).findFirst().get();
+// ExamPaperSubmitItemVO customerQuestionAnswer = examPaperSubmitVO.getAnswerItems().stream()
+// .filter(tq -> tq.getQuestionId().equals(q.getId()))
+// .findFirst()
+// .orElse(null);
+// return ExamPaperQuestionCustomerAnswerFromVM(question, customerQuestionAnswer, examPaper, q.getItemOrder(), user, now);
+// })
+// ).collect(Collectors.toList());
+//
+// ExamPaperAnswer examPaperAnswer = ExamPaperAnswerFromVM(examPaperSubmitVO, examPaper, examPaperQuestionCustomerAnswers, user, now);
+// examPaperAnswerInfo.setExamPaper(examPaper);
+// examPaperAnswerInfo.setExamPaperAnswer(examPaperAnswer);
+// examPaperAnswerInfo.setExamPaperQuestionCustomerAnswers(examPaperQuestionCustomerAnswers);
return examPaperAnswerInfo;
}
@@ -119,18 +120,19 @@
ExamPaperTypeEnum examPaperTypeEnum = ExamPaperTypeEnum.fromCode(examPaperAnswer.getPaperType());
switch (examPaperTypeEnum) {
case RandomOrder:
+ //TODO:寰呭畬鎴�
//浠诲姟璇曞嵎鎵规敼瀹屾垚鍚庯紝闇�瑕佹洿鏂颁换鍔$殑鐘舵��
- ExamPaper examPaper = examPaperMapper.selectById(examPaperAnswer.getExamPaperId());
- Integer taskId = examPaper.getTaskExamId();
- Integer userId = examPaperAnswer.getCreateUser();
- TaskExamCustomerAnswer taskExamCustomerAnswer = taskExamCustomerAnswerMapper.getByTUid(taskId, userId);
- TextContent textContent = textContentService.getById(taskExamCustomerAnswer.getTextContentId());
- List<TaskItemAnswerObject> taskItemAnswerObjects = JsonUtil.toJsonListObject(textContent.getContent(), TaskItemAnswerObject.class);
- taskItemAnswerObjects.stream()
- .filter(d -> d.getExamPaperAnswerId().equals(examPaperAnswer.getId()))
- .findFirst().ifPresent(taskItemAnswerObject -> taskItemAnswerObject.setStatus(examPaperAnswer.getStatus()));
- textContentService.jsonConvertUpdate(textContent, taskItemAnswerObjects, null);
- textContentService.updateById(textContent);
+// ExamPaper examPaper = examPaperMapper.selectById(examPaperAnswer.getExamPaperId());
+// Integer taskId = examPaper.getTaskExamId();
+// Integer userId = examPaperAnswer.getCreateUser();
+// TaskExamCustomerAnswer taskExamCustomerAnswer = taskExamCustomerAnswerMapper.getByTUid(taskId, userId);
+// TextContent textContent = textContentService.getById(taskExamCustomerAnswer.getTextContentId());
+// List<TaskItemAnswerObject> taskItemAnswerObjects = JsonUtil.toJsonListObject(textContent.getContent(), TaskItemAnswerObject.class);
+// taskItemAnswerObjects.stream()
+// .filter(d -> d.getExamPaperAnswerId().equals(examPaperAnswer.getId()))
+// .findFirst().ifPresent(taskItemAnswerObject -> taskItemAnswerObject.setStatus(examPaperAnswer.getStatus()));
+// textContentService.jsonConvertUpdate(textContent, taskItemAnswerObjects, null);
+// textContentService.updateById(textContent);
break;
default:
break;
@@ -239,25 +241,26 @@
Integer systemScore = examPaperQuestionCustomerAnswers.stream().mapToInt(a -> a.getCustomerScore()).sum();
long questionCorrect = examPaperQuestionCustomerAnswers.stream().filter(a -> a.getCustomerScore().equals(a.getQuestionScore())).count();
ExamPaperAnswer examPaperAnswer = new ExamPaperAnswer();
- examPaperAnswer.setPaperName(examPaper.getName());
- examPaperAnswer.setDoTime(examPaperSubmitVO.getDoTime());
- examPaperAnswer.setExamPaperId(examPaper.getId());
- examPaperAnswer.setCreateUser(user.getId());
- examPaperAnswer.setCreateTime(now);
- examPaperAnswer.setSubjectId(examPaper.getSubjectId());
- examPaperAnswer.setQuestionCount(examPaper.getQuestionCount());
- examPaperAnswer.setPaperScore(examPaper.getScore());
- examPaperAnswer.setPaperType(examPaper.getPaperType());
- examPaperAnswer.setSystemScore(systemScore);
- examPaperAnswer.setUserScore(systemScore);
- examPaperAnswer.setTaskExamId(examPaper.getTaskExamId());
- examPaperAnswer.setQuestionCorrect((int) questionCorrect);
- boolean needJudge = examPaperQuestionCustomerAnswers.stream().anyMatch(d -> QuestionTypeEnum.needSaveTextContent(d.getQuestionType()));
- if (needJudge) {
- examPaperAnswer.setStatus(ExamPaperAnswerStatusEnum.WaitJudge.getCode());
- } else {
- examPaperAnswer.setStatus(ExamPaperAnswerStatusEnum.Complete.getCode());
- }
+ //TODO:寰呭畬鎴�
+// examPaperAnswer.setPaperName(examPaper.getName());
+// examPaperAnswer.setDoTime(examPaperSubmitVO.getDoTime());
+// examPaperAnswer.setExamPaperId(examPaper.getId());
+// examPaperAnswer.setCreateUser(user.getId());
+// examPaperAnswer.setCreateTime(now);
+// examPaperAnswer.setSubjectId(examPaper.getSubjectId());
+// examPaperAnswer.setQuestionCount(examPaper.getQuestionCount());
+// examPaperAnswer.setPaperScore(examPaper.getScore());
+// examPaperAnswer.setPaperType(examPaper.getPaperType());
+// examPaperAnswer.setSystemScore(systemScore);
+// examPaperAnswer.setUserScore(systemScore);
+// examPaperAnswer.setTaskExamId(examPaper.getTaskExamId());
+// examPaperAnswer.setQuestionCorrect((int) questionCorrect);
+// boolean needJudge = examPaperQuestionCustomerAnswers.stream().anyMatch(d -> QuestionTypeEnum.needSaveTextContent(d.getQuestionType()));
+// if (needJudge) {
+// examPaperAnswer.setStatus(ExamPaperAnswerStatusEnum.WaitJudge.getCode());
+// } else {
+// examPaperAnswer.setStatus(ExamPaperAnswerStatusEnum.Complete.getCode());
+// }
return examPaperAnswer;
}
diff --git a/src/main/java/com/ycl/jxkg/service/impl/ExamPaperServiceImpl.java b/src/main/java/com/ycl/jxkg/service/impl/ExamPaperServiceImpl.java
index 367300d..ccefd50 100644
--- a/src/main/java/com/ycl/jxkg/service/impl/ExamPaperServiceImpl.java
+++ b/src/main/java/com/ycl/jxkg/service/impl/ExamPaperServiceImpl.java
@@ -85,16 +85,16 @@
frameTextContent.setContent(frameTextContentStr);
frameTextContent.setCreateTime(now);
textContentService.save(frameTextContent);
- examPaper.setFrameTextContentId(frameTextContent.getId());
examPaper.setCreateTime(now);
examPaper.setCreateUser(user.getId());
examPaperFromVM(examPaperEditRequestVO, examPaper, titleItemsVM);
examPaperMapper.insert(examPaper);
} else {
examPaper = examPaperMapper.selectById(examPaperEditRequestVO.getId());
- TextContent frameTextContent = textContentService.getById(examPaper.getFrameTextContentId());
- frameTextContent.setContent(frameTextContentStr);
- textContentService.updateById(frameTextContent);
+ //TODO:寰呭畬鎴�
+// TextContent frameTextContent = textContentService.getById(examPaper.getFrameTextContentId());
+// frameTextContent.setContent(frameTextContentStr);
+// textContentService.updateById(frameTextContent);
examPaperFromVM(examPaperEditRequestVO, examPaper, titleItemsVM);
examPaperMapper.updateById(examPaper);
}
@@ -106,32 +106,32 @@
ExamPaper examPaper = examPaperMapper.selectById(id);
ExamPaperEditRequestVO vo = new ExamPaperEditRequestVO();
BeanUtils.copyProperties(examPaper, vo);
- vo.setLevel(examPaper.getGradeLevel());
- TextContent frameTextContent = textContentService.getById(examPaper.getFrameTextContentId());
- List<ExamPaperTitleItemObject> examPaperTitleItemObjects = JsonUtil.toJsonListObject(frameTextContent.getContent(), ExamPaperTitleItemObject.class);
- List<Integer> questionIds = examPaperTitleItemObjects.stream()
- .flatMap(t -> t.getQuestionItems().stream()
- .map(q -> q.getId()))
- .collect(Collectors.toList());
- List<Question> questions = questionMapper.selectByIds(questionIds);
- List<ExamPaperTitleItemVO> examPaperTitleItemVOS = examPaperTitleItemObjects.stream().map(t -> {
- ExamPaperTitleItemVO tTitleVM = new ExamPaperTitleItemVO();
- BeanUtils.copyProperties(t, tTitleVM);
- List<QuestionEditRequestVO> questionItemsVM = t.getQuestionItems().stream().map(i -> {
- Question question = questions.stream().filter(q -> q.getId().equals(i.getId())).findFirst().get();
- QuestionEditRequestVO questionEditRequestVO = questionService.getQuestionEditRequestVM(question);
- questionEditRequestVO.setItemOrder(i.getItemOrder());
- return questionEditRequestVO;
- }).collect(Collectors.toList());
- tTitleVM.setQuestionItems(questionItemsVM);
- return tTitleVM;
- }).collect(Collectors.toList());
- vo.setTitleItems(examPaperTitleItemVOS);
- vo.setScore(ExamUtil.scoreToVM(examPaper.getScore()));
- if (ExamPaperTypeEnum.Random == ExamPaperTypeEnum.fromCode(examPaper.getPaperType())) {
- List<String> limitDateTime = Arrays.asList(DateTimeUtil.dateFormat(examPaper.getLimitStartTime()), DateTimeUtil.dateFormat(examPaper.getLimitEndTime()));
- vo.setLimitDateTime(limitDateTime);
- }
+ //TODO:寰呭畬鎴�
+// TextContent frameTextContent = textContentService.getById(examPaper.getFrameTextContentId());
+// List<ExamPaperTitleItemObject> examPaperTitleItemObjects = JsonUtil.toJsonListObject(frameTextContent.getContent(), ExamPaperTitleItemObject.class);
+// List<Integer> questionIds = examPaperTitleItemObjects.stream()
+// .flatMap(t -> t.getQuestionItems().stream()
+// .map(q -> q.getId()))
+// .collect(Collectors.toList());
+// List<Question> questions = questionMapper.selectByIds(questionIds);
+// List<ExamPaperTitleItemVO> examPaperTitleItemVOS = examPaperTitleItemObjects.stream().map(t -> {
+// ExamPaperTitleItemVO tTitleVM = new ExamPaperTitleItemVO();
+// BeanUtils.copyProperties(t, tTitleVM);
+// List<QuestionEditRequestVO> questionItemsVM = t.getQuestionItems().stream().map(i -> {
+// Question question = questions.stream().filter(q -> q.getId().equals(i.getId())).findFirst().get();
+// QuestionEditRequestVO questionEditRequestVO = questionService.getQuestionEditRequestVM(question);
+// questionEditRequestVO.setItemOrder(i.getItemOrder());
+// return questionEditRequestVO;
+// }).collect(Collectors.toList());
+// tTitleVM.setQuestionItems(questionItemsVM);
+// return tTitleVM;
+// }).collect(Collectors.toList());
+// vo.setTitleItems(examPaperTitleItemVOS);
+// vo.setScore(ExamUtil.scoreToVM(examPaper.getScore()));
+// if (ExamPaperTypeEnum.Random == ExamPaperTypeEnum.fromCode(examPaper.getPaperType())) {
+// List<String> limitDateTime = Arrays.asList(DateTimeUtil.dateFormat(examPaper.getLimitStartTime()), DateTimeUtil.dateFormat(examPaper.getLimitEndTime()));
+// vo.setLimitDateTime(limitDateTime);
+// }
return vo;
}
@@ -159,21 +159,22 @@
}
private void examPaperFromVM(ExamPaperEditRequestVO examPaperEditRequestVO, ExamPaper examPaper, List<ExamPaperTitleItemVO> titleItemsVM) {
- Integer gradeLevel = subjectService.levelBySubjectId(examPaperEditRequestVO.getSubjectId());
- Integer questionCount = titleItemsVM.stream()
- .mapToInt(t -> t.getQuestionItems().size()).sum();
- Integer score = titleItemsVM.stream().
- flatMapToInt(t -> t.getQuestionItems().stream()
- .mapToInt(q -> ExamUtil.scoreFromVM(q.getScore()))
- ).sum();
- examPaper.setQuestionCount(questionCount);
- examPaper.setScore(score);
- examPaper.setGradeLevel(gradeLevel);
- List<String> dateTimes = examPaperEditRequestVO.getLimitDateTime();
- if (ExamPaperTypeEnum.Random == ExamPaperTypeEnum.fromCode(examPaper.getPaperType())) {
- examPaper.setLimitStartTime(DateTimeUtil.parse(dateTimes.get(0), DateTimeUtil.STANDER_FORMAT));
- examPaper.setLimitEndTime(DateTimeUtil.parse(dateTimes.get(1), DateTimeUtil.STANDER_FORMAT));
- }
+ //TODO:寰呭畬鎴�
+// Integer gradeLevel = subjectService.levelBySubjectId(examPaperEditRequestVO.getSubjectId());
+// Integer questionCount = titleItemsVM.stream()
+// .mapToInt(t -> t.getQuestionItems().size()).sum();
+// Integer score = titleItemsVM.stream().
+// flatMapToInt(t -> t.getQuestionItems().stream()
+// .mapToInt(q -> ExamUtil.scoreFromVM(q.getScore()))
+// ).sum();
+// examPaper.setQuestionCount(questionCount);
+// examPaper.setScore(score);
+// examPaper.setGradeLevel(gradeLevel);
+// List<String> dateTimes = examPaperEditRequestVO.getLimitDateTime();
+// if (ExamPaperTypeEnum.Random == ExamPaperTypeEnum.fromCode(examPaper.getPaperType())) {
+// examPaper.setLimitStartTime(DateTimeUtil.parse(dateTimes.get(0), DateTimeUtil.STANDER_FORMAT));
+// examPaper.setLimitEndTime(DateTimeUtil.parse(dateTimes.get(1), DateTimeUtil.STANDER_FORMAT));
+// }
}
private List<ExamPaperTitleItemObject> frameTextContentFromVM(List<ExamPaperTitleItemVO> titleItems) {
diff --git a/src/main/java/com/ycl/jxkg/service/impl/TaskExamCustomerAnswerImpl.java b/src/main/java/com/ycl/jxkg/service/impl/TaskExamCustomerAnswerImpl.java
index 71dbd38..4f01acf 100644
--- a/src/main/java/com/ycl/jxkg/service/impl/TaskExamCustomerAnswerImpl.java
+++ b/src/main/java/com/ycl/jxkg/service/impl/TaskExamCustomerAnswerImpl.java
@@ -26,34 +26,35 @@
@Override
public void insertOrUpdate(ExamPaper examPaper, ExamPaperAnswer examPaperAnswer, Date now) {
- Integer taskId = examPaper.getTaskExamId();
- Integer userId = examPaperAnswer.getCreateUser();
- TaskExamCustomerAnswer taskExamCustomerAnswer = taskExamCustomerAnswerMapper.getByTUid(taskId, userId);
- if (null == taskExamCustomerAnswer) {
- taskExamCustomerAnswer = new TaskExamCustomerAnswer();
- taskExamCustomerAnswer.setCreateTime(now);
- taskExamCustomerAnswer.setCreateUser(userId);
- taskExamCustomerAnswer.setTaskExamId(taskId);
- TaskItemAnswerObject taskItemAnswerObject = new TaskItemAnswerObject();
- taskItemAnswerObject.setExamPaperId(examPaperAnswer.getExamPaperId());
- taskItemAnswerObject.setExamPaperAnswerId(examPaperAnswer.getId());
- taskItemAnswerObject.setStatus(examPaperAnswer.getStatus());
- List<TaskItemAnswerObject> taskItemAnswerObjects = Arrays.asList(taskItemAnswerObject);
- TextContent textContent = textContentService.jsonConvertInsert(taskItemAnswerObjects, now, null);
- textContentService.save(textContent);
- taskExamCustomerAnswer.setTextContentId(textContent.getId());
- baseMapper.insert(taskExamCustomerAnswer);
- } else {
- TextContent textContent = textContentService.getById(taskExamCustomerAnswer.getTextContentId());
- List<TaskItemAnswerObject> taskItemAnswerObjects = JsonUtil.toJsonListObject(textContent.getContent(), TaskItemAnswerObject.class);
- TaskItemAnswerObject taskItemAnswerObject = new TaskItemAnswerObject();
- taskItemAnswerObject.setExamPaperId(examPaperAnswer.getExamPaperId());
- taskItemAnswerObject.setExamPaperAnswerId(examPaperAnswer.getId());
- taskItemAnswerObject.setStatus(examPaperAnswer.getStatus());
- taskItemAnswerObjects.add(taskItemAnswerObject);
- textContentService.jsonConvertUpdate(textContent, taskItemAnswerObjects, null);
- textContentService.updateById(textContent);
- }
+ //TODO:寰呭畬鎴�
+// Integer taskId = examPaper.getTaskExamId();
+// Integer userId = examPaperAnswer.getCreateUser();
+// TaskExamCustomerAnswer taskExamCustomerAnswer = taskExamCustomerAnswerMapper.getByTUid(taskId, userId);
+// if (null == taskExamCustomerAnswer) {
+// taskExamCustomerAnswer = new TaskExamCustomerAnswer();
+// taskExamCustomerAnswer.setCreateTime(now);
+// taskExamCustomerAnswer.setCreateUser(userId);
+// taskExamCustomerAnswer.setTaskExamId(taskId);
+// TaskItemAnswerObject taskItemAnswerObject = new TaskItemAnswerObject();
+// taskItemAnswerObject.setExamPaperId(examPaperAnswer.getExamPaperId());
+// taskItemAnswerObject.setExamPaperAnswerId(examPaperAnswer.getId());
+// taskItemAnswerObject.setStatus(examPaperAnswer.getStatus());
+// List<TaskItemAnswerObject> taskItemAnswerObjects = Arrays.asList(taskItemAnswerObject);
+// TextContent textContent = textContentService.jsonConvertInsert(taskItemAnswerObjects, now, null);
+// textContentService.save(textContent);
+// taskExamCustomerAnswer.setTextContentId(textContent.getId());
+// baseMapper.insert(taskExamCustomerAnswer);
+// } else {
+// TextContent textContent = textContentService.getById(taskExamCustomerAnswer.getTextContentId());
+// List<TaskItemAnswerObject> taskItemAnswerObjects = JsonUtil.toJsonListObject(textContent.getContent(), TaskItemAnswerObject.class);
+// TaskItemAnswerObject taskItemAnswerObject = new TaskItemAnswerObject();
+// taskItemAnswerObject.setExamPaperId(examPaperAnswer.getExamPaperId());
+// taskItemAnswerObject.setExamPaperAnswerId(examPaperAnswer.getId());
+// taskItemAnswerObject.setStatus(examPaperAnswer.getStatus());
+// taskItemAnswerObjects.add(taskItemAnswerObject);
+// textContentService.jsonConvertUpdate(textContent, taskItemAnswerObjects, null);
+// textContentService.updateById(textContent);
+// }
}
@Override
diff --git a/src/main/resources/mapper/ExamPaperMapper.xml b/src/main/resources/mapper/ExamPaperMapper.xml
index cc9c2b4..a8e01d7 100644
--- a/src/main/resources/mapper/ExamPaperMapper.xml
+++ b/src/main/resources/mapper/ExamPaperMapper.xml
@@ -6,31 +6,25 @@
<result column="name" jdbcType="VARCHAR" property="name"/>
<result column="subject_id" jdbcType="INTEGER" property="subjectId"/>
<result column="paper_type" jdbcType="INTEGER" property="paperType"/>
- <result column="grade_level" jdbcType="INTEGER" property="gradeLevel"/>
<result column="score" jdbcType="INTEGER" property="score"/>
<result column="question_count" jdbcType="INTEGER" property="questionCount"/>
<result column="suggest_time" jdbcType="INTEGER" property="suggestTime"/>
- <result column="limit_start_time" jdbcType="TIMESTAMP" property="limitStartTime"/>
- <result column="limit_end_time" jdbcType="TIMESTAMP" property="limitEndTime"/>
- <result column="frame_text_content_id" jdbcType="INTEGER" property="frameTextContentId"/>
+ <result column="visibility" jdbcType="INTEGER" property="visibility"/>
+ <result column="deduct_type" jdbcType="INTEGER" property="deductType"/>
<result column="create_user" jdbcType="INTEGER" property="createUser"/>
<result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
<result column="deleted" jdbcType="BIT" property="deleted"/>
- <result column="task_exam_id" jdbcType="INTEGER" property="taskExamId"/>
</resultMap>
<sql id="Base_Column_List">
- id
- , name, subject_id, paper_type, grade_level, score, question_count, suggest_time,
- limit_start_time, limit_end_time, frame_text_content_id, create_user, create_time,
- deleted, task_exam_id
+ id, name, subject_id, paper_type, score, question_count, suggest_time,visibility
+ ,deduct_type,create_user, create_time,deleted
</sql>
<resultMap id="PaperInfoResultMap" type="com.ycl.jxkg.domain.vo.student.dashboard.PaperInfo">
<id column="id" jdbcType="INTEGER" property="id"/>
<result column="name" jdbcType="VARCHAR" property="name"/>
- <result column="limit_start_time" jdbcType="TIMESTAMP" property="limitStartTime"/>
- <result column="limit_end_time" jdbcType="TIMESTAMP" property="limitEndTime"/>
+
</resultMap>
@@ -43,8 +37,8 @@
<if test="id != null ">
and id= #{id}
</if>
- <if test="level != null ">
- and grade_level= #{level}
+ <if test="name != null and name != ''">
+ and name like concat('%',#{name},'%')
</if>
<if test="subjectId != null ">
and subject_id= #{subjectId}
@@ -62,8 +56,6 @@
FROM t_exam_paper
<where>
and deleted=0
- and task_exam_id is null
- and grade_level= #{level}
and paper_type=#{paperType}
</where>
</select>
diff --git a/src/main/resources/mapper/ExamTemplateMapper.xml b/src/main/resources/mapper/ExamTemplateMapper.xml
index 9edd4df..2243cd1 100644
--- a/src/main/resources/mapper/ExamTemplateMapper.xml
+++ b/src/main/resources/mapper/ExamTemplateMapper.xml
@@ -4,25 +4,19 @@
<!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
<resultMap id="BaseResultMap" type="com.ycl.jxkg.domain.vo.admin.exam.ExamTemplateVO">
- <result column="name" property="name" />
- <result column="subject_id" property="subjectId" />
- <result column="suggest_time" property="suggestTime" />
+ <result column="exam_paper_id" property="examPaperId" />
<result column="single_choice" property="singleChoice" />
<result column="multiple_choice" property="multipleChoice" />
<result column="gap_filling" property="gapFilling" />
<result column="true_false" property="trueFalse" />
<result column="short_answer" property="shortAnswer" />
<result column="calculation" property="calculation" />
- <result column="score" property="score" />
- <result column="deduct_type" property="deductType" />
- <result column="create_user" property="createUser" />
- <result column="create_time" property="createTime" />
<result column="single_score" property="singleScore" />
<result column="multiple_score" property="multipleScore" />
<result column="gap_score" property="gapScore" />
<result column="true_false_score" property="trueFalseScore" />
<result column="short_answer_score" property="shortAnswerScore" />
- <result column="calculation__score" property="calculationScore" />
+ <result column="calculation_score" property="calculationScore" />
</resultMap>
@@ -33,19 +27,13 @@
<select id="getById" resultMap="BaseResultMap">
SELECT
- TET.name,
- TET.subject_id,
- TET.suggest_time,
+ TET.exam_paper_id,
TET.single_choice,
TET.multiple_choice,
TET.gap_filling,
TET.true_false,
TET.short_answer,
TET.calculation,
- TET.score,
- TET.deduct_type,
- TET.create_user,
- TET.create_time,
TET.single_score,
TET.multiple_score,
TET.gap_score,
@@ -62,19 +50,13 @@
<select id="getPage" resultMap="BaseResultMap">
SELECT
- TET.name,
- TET.subject_id,
- TET.suggest_time,
+ TET.exam_paper_id,
TET.single_choice,
TET.multiple_choice,
TET.gap_filling,
TET.true_false,
TET.short_answer,
TET.calculation,
- TET.score,
- TET.deduct_type,
- TET.create_user,
- TET.create_time,
TET.single_score,
TET.multiple_score,
TET.gap_score,
--
Gitblit v1.8.0