|
@@ -1,17 +1,18 @@
|
|
package com.qmth.cqb.question.service;
|
|
package com.qmth.cqb.question.service;
|
|
|
|
|
|
-import com.qmth.cqb.question.dao.QuesRepo;
|
|
|
|
-import com.qmth.cqb.question.model.QuesOption;
|
|
|
|
-import com.qmth.cqb.question.model.Question;
|
|
|
|
-import com.qmth.cqb.question.model.QuestionSearchCondition;
|
|
|
|
|
|
+import java.util.List;
|
|
|
|
|
|
-import com.qmth.cqb.utils.BeanCopierUtil;
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.data.domain.Example;
|
|
import org.springframework.data.domain.Example;
|
|
import org.springframework.data.domain.Page;
|
|
import org.springframework.data.domain.Page;
|
|
import org.springframework.data.domain.PageRequest;
|
|
import org.springframework.data.domain.PageRequest;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
-import java.util.List;
|
|
|
|
|
|
+
|
|
|
|
+import com.qmth.cqb.question.dao.QuesRepo;
|
|
|
|
+import com.qmth.cqb.question.model.QuesOption;
|
|
|
|
+import com.qmth.cqb.question.model.Question;
|
|
|
|
+import com.qmth.cqb.question.model.QuestionSearchCondition;
|
|
|
|
+import com.qmth.cqb.utils.BeanCopierUtil;
|
|
|
|
|
|
/**
|
|
/**
|
|
* Created by songyue on 16/12/28.
|
|
* Created by songyue on 16/12/28.
|
|
@@ -24,17 +25,18 @@ public class QuesService {
|
|
|
|
|
|
/**
|
|
/**
|
|
* 保存试题
|
|
* 保存试题
|
|
|
|
+ *
|
|
* @param question
|
|
* @param question
|
|
*/
|
|
*/
|
|
- public void saveQues(Question question){
|
|
|
|
|
|
+ public void saveQues(Question question) {
|
|
Question saveQues = quesRepo.findOne(question.getId());
|
|
Question saveQues = quesRepo.findOne(question.getId());
|
|
saveQues.setQuesAnswer(question.getQuesAnswer());
|
|
saveQues.setQuesAnswer(question.getQuesAnswer());
|
|
saveQues.setScore(question.getScore());
|
|
saveQues.setScore(question.getScore());
|
|
saveQues.setQuesBody(question.getQuesBody());
|
|
saveQues.setQuesBody(question.getQuesBody());
|
|
- if(question.getQuesOptions() != null && question.getQuesOptions().size() > 0){
|
|
|
|
|
|
+ if (question.getQuesOptions() != null && question.getQuesOptions().size() > 0) {
|
|
List<QuesOption> quesOptions = question.getQuesOptions();
|
|
List<QuesOption> quesOptions = question.getQuesOptions();
|
|
List<QuesOption> saveQuesOptions = saveQues.getQuesOptions();
|
|
List<QuesOption> saveQuesOptions = saveQues.getQuesOptions();
|
|
- for(int i = 0;i < quesOptions.size();i++){
|
|
|
|
|
|
+ for (int i = 0; i < quesOptions.size(); i++) {
|
|
saveQuesOptions.get(i).setOptionBody(quesOptions.get(i).getOptionBody());
|
|
saveQuesOptions.get(i).setOptionBody(quesOptions.get(i).getOptionBody());
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -43,25 +45,28 @@ public class QuesService {
|
|
|
|
|
|
/**
|
|
/**
|
|
* 查询所有试题
|
|
* 查询所有试题
|
|
|
|
+ *
|
|
* @param searchCondition
|
|
* @param searchCondition
|
|
* @param curPage
|
|
* @param curPage
|
|
* @param pageSize
|
|
* @param pageSize
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
- public Page<Question> findAll(QuestionSearchCondition searchCondition,
|
|
|
|
- int curPage,
|
|
|
|
- int pageSize){
|
|
|
|
- Question ques = BeanCopierUtil.copyProperties(searchCondition,Question.class);
|
|
|
|
- return quesRepo.findAll(Example.of(ques),new PageRequest(curPage - 1,pageSize));
|
|
|
|
|
|
+ public Page<Question> findAll(QuestionSearchCondition searchCondition, int curPage, int pageSize) {
|
|
|
|
+ Question ques = BeanCopierUtil.copyProperties(searchCondition, Question.class);
|
|
|
|
+ Page<Question> list = quesRepo.findAll(Example.of(ques), new PageRequest(curPage - 1, pageSize));
|
|
|
|
+ for (Question question : list) {
|
|
|
|
+ formatQues(question);
|
|
|
|
+ }
|
|
|
|
+ return list;
|
|
}
|
|
}
|
|
|
|
|
|
-
|
|
|
|
/**
|
|
/**
|
|
* 按ID获取试题
|
|
* 按ID获取试题
|
|
|
|
+ *
|
|
* @param id
|
|
* @param id
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
- public Question findById(String id){
|
|
|
|
|
|
+ public Question findById(String id) {
|
|
Question question = quesRepo.findOne(id);
|
|
Question question = quesRepo.findOne(id);
|
|
formatQues(question);
|
|
formatQues(question);
|
|
return question;
|
|
return question;
|
|
@@ -69,24 +74,28 @@ public class QuesService {
|
|
|
|
|
|
/**
|
|
/**
|
|
* 去除试题中的word
|
|
* 去除试题中的word
|
|
|
|
+ *
|
|
* @param question
|
|
* @param question
|
|
*/
|
|
*/
|
|
- public void formatQues(Question question){
|
|
|
|
|
|
+ public void formatQues(Question question) {
|
|
formatQuesUnit(question);
|
|
formatQuesUnit(question);
|
|
- if(question.getSubQuestions() != null && question.getSubQuestions().size() > 0){
|
|
|
|
- question.getSubQuestions().stream().forEach(subQues->{
|
|
|
|
- formatQuesUnit(subQues);});
|
|
|
|
|
|
+ if (question.getSubQuestions() != null && question.getSubQuestions().size() > 0) {
|
|
|
|
+ question.getSubQuestions().stream().forEach(subQues -> {
|
|
|
|
+ formatQuesUnit(subQues);
|
|
|
|
+ });
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- public void formatQuesUnit(Question question){
|
|
|
|
|
|
+ public void formatQuesUnit(Question question) {
|
|
question.setQuesBodyWord(null);
|
|
question.setQuesBodyWord(null);
|
|
question.setQuesAnswerWord(null);
|
|
question.setQuesAnswerWord(null);
|
|
question.setQuesAnswerAnalysisWord(null);
|
|
question.setQuesAnswerAnalysisWord(null);
|
|
question.setQuesPkg(new byte[0]);
|
|
question.setQuesPkg(new byte[0]);
|
|
- if(question.getQuesOptions() != null && question.getQuesOptions().size() > 0){
|
|
|
|
|
|
+ if (question.getQuesOptions() != null && question.getQuesOptions().size() > 0) {
|
|
question.getQuesOptions().stream().forEach(quesOption -> {
|
|
question.getQuesOptions().stream().forEach(quesOption -> {
|
|
- quesOption.setOptionBodyWord(null);});
|
|
|
|
|
|
+ quesOption.setOptionBodyWord(null);
|
|
|
|
+ });
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
}
|
|
}
|