|
@@ -499,67 +499,74 @@ public abstract class ExportPaperAbstractService {
|
|
* 3.设置选项号
|
|
* 3.设置选项号
|
|
* 4.替换题干中的##为____
|
|
* 4.替换题干中的##为____
|
|
*/
|
|
*/
|
|
- public void setQuestionNumberForWord(List<PaperDetailExp> paperDetails) throws Exception {
|
|
|
|
- if (CollectionUtils.isEmpty(paperDetails)) {
|
|
|
|
|
|
+ public void setQuestionNumberForWord(List<PaperDetailExp> details) throws Exception {
|
|
|
|
+ if (CollectionUtils.isEmpty(details)) {
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
|
|
|
|
- for (PaperDetailExp paperDetail : paperDetails) {
|
|
|
|
- List<PaperDetailUnitExp> paperDetailUnitExpList = paperDetail.getPaperDetailUnits();
|
|
|
|
- for (PaperDetailUnitExp paperDetailUnit : paperDetailUnitExpList) {
|
|
|
|
|
|
+ for (PaperDetailExp detail : details) {
|
|
|
|
+ List<PaperDetailUnitExp> units = detail.getPaperDetailUnits();
|
|
|
|
+ for (PaperDetailUnitExp unit : units) {
|
|
|
|
+ Question question = unit.getQuestion();
|
|
|
|
+
|
|
//定义一个字段,用来判断是否为选择题
|
|
//定义一个字段,用来判断是否为选择题
|
|
boolean isOption = false;
|
|
boolean isOption = false;
|
|
- List<QuesOption> optionList = paperDetailUnit.getQuestion().getQuesOptions();
|
|
|
|
- if (optionList != null && optionList.size() > 0) {
|
|
|
|
|
|
+ List<QuesOption> options = question.getQuesOptions();
|
|
|
|
+ if (CollectionUtils.isNotEmpty(options)) {
|
|
isOption = true;
|
|
isOption = true;
|
|
int index = 0;
|
|
int index = 0;
|
|
- for (QuesOption quesOption : optionList) {
|
|
|
|
- quesOption.setOptionBodyWord(setOptionNum(quesOption.getOptionBodyWord(), getOptionNum(index)));
|
|
|
|
|
|
+ for (QuesOption option : options) {
|
|
|
|
+ option.setOptionBodyWord(setOptionNum(option.getOptionBodyWord(), getOptionNum(index)));
|
|
index++;
|
|
index++;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
if (isOption) {
|
|
if (isOption) {
|
|
//检测选项是否换行
|
|
//检测选项是否换行
|
|
- int i = optionLine(optionList);
|
|
|
|
|
|
+ int i = optionLine(options);
|
|
if (i == 4) {
|
|
if (i == 4) {
|
|
- optionListFourline(optionList);
|
|
|
|
|
|
+ optionListFourline(options);
|
|
}
|
|
}
|
|
if (i == 2) {
|
|
if (i == 2) {
|
|
- optionListTwoline(optionList);
|
|
|
|
|
|
+ optionListTwoline(options);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- List<Question> subQuesList = paperDetailUnit.getQuestion().getSubQuestions();
|
|
|
|
- Question question = paperDetailUnit.getQuestion();
|
|
|
|
- if (subQuesList != null && subQuesList.size() > 0) {
|
|
|
|
|
|
+
|
|
|
|
+ List<Question> subQuestions = question.getSubQuestions();
|
|
|
|
+ if (CollectionUtils.isNotEmpty(subQuestions)) {
|
|
//套题主题干
|
|
//套题主题干
|
|
- question.setQuesBodyWord(replaceQuesBlank(question.getQuesBodyWord(), subQuesList.get(0).getNumber()));
|
|
|
|
- for (Question subQues : subQuesList) {
|
|
|
|
|
|
+ question.setQuesBodyWord(replaceQuesBlank(question.getQuesBodyWord(), subQuestions.get(0).getNumber()));
|
|
|
|
+
|
|
|
|
+ for (Question subQues : subQuestions) {
|
|
//处理子题题干,答案
|
|
//处理子题题干,答案
|
|
subQues.setQuesBodyWord(setSubQuesNum(subQues.getQuesBodyWord(), subQues.getNumber()));
|
|
subQues.setQuesBodyWord(setSubQuesNum(subQues.getQuesBodyWord(), subQues.getNumber()));
|
|
subQues.setQuesAnswerWord(setSubQuesNum(subQues.getQuesAnswerWord(), subQues.getNumber()));
|
|
subQues.setQuesAnswerWord(setSubQuesNum(subQues.getQuesAnswerWord(), subQues.getNumber()));
|
|
subQues.setQuesBodyWord(replaceQuesBlank(subQues.getQuesBodyWord(), subQues.getNumber()));
|
|
subQues.setQuesBodyWord(replaceQuesBlank(subQues.getQuesBodyWord(), subQues.getNumber()));
|
|
- List<QuesOption> subOptionList = subQues.getQuesOptions();
|
|
|
|
- if (subOptionList != null && subOptionList.size() > 0) {
|
|
|
|
- int sub_index = 0;
|
|
|
|
- for (QuesOption quesOption : subOptionList) {
|
|
|
|
- quesOption.setOptionBodyWord(setOptionNum(quesOption.getOptionBodyWord(), getOptionNum(sub_index)));
|
|
|
|
- sub_index++;
|
|
|
|
|
|
+
|
|
|
|
+ List<QuesOption> subOptions = subQues.getQuesOptions();
|
|
|
|
+ if (CollectionUtils.isNotEmpty(subOptions)) {
|
|
|
|
+ int subIndex = 0;
|
|
|
|
+ for (QuesOption subOption : subOptions) {
|
|
|
|
+ subOption.setOptionBodyWord(setOptionNum(subOption.getOptionBodyWord(), getOptionNum(subIndex)));
|
|
|
|
+ subIndex++;
|
|
}
|
|
}
|
|
|
|
+
|
|
//检测选项是否换行
|
|
//检测选项是否换行
|
|
- int i = optionLine(subOptionList);
|
|
|
|
|
|
+ int i = optionLine(subOptions);
|
|
if (i == 4) {
|
|
if (i == 4) {
|
|
- optionListFourline(subOptionList);
|
|
|
|
|
|
+ optionListFourline(subOptions);
|
|
}
|
|
}
|
|
if (i == 2) {
|
|
if (i == 2) {
|
|
- optionListTwoline(subOptionList);
|
|
|
|
|
|
+ optionListTwoline(subOptions);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
//处理非套题题干、答案
|
|
//处理非套题题干、答案
|
|
- question.setQuesBodyWord(setSubQuesNum(question.getQuesBodyWord(), paperDetailUnit.getNumber()));
|
|
|
|
- question.setQuesAnswerWord(setSubQuesNum(question.getQuesAnswerWord(), paperDetailUnit.getNumber()));
|
|
|
|
- question.setQuesBodyWord(replaceQuesBlank(question.getQuesBodyWord(), paperDetailUnit.getNumber()));
|
|
|
|
|
|
+ question.setQuesBodyWord(setSubQuesNum(question.getQuesBodyWord(), unit.getNumber()));
|
|
|
|
+ question.setQuesAnswerWord(setSubQuesNum(question.getQuesAnswerWord(), unit.getNumber()));
|
|
|
|
+
|
|
|
|
+ question.setQuesBodyWord(replaceQuesBlank(question.getQuesBodyWord(), unit.getNumber()));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -1634,13 +1641,14 @@ public abstract class ExportPaperAbstractService {
|
|
List<QuesOption> options = question.getQuesOptions();
|
|
List<QuesOption> options = question.getQuesOptions();
|
|
if (CollectionUtils.isNotEmpty(options)) {
|
|
if (CollectionUtils.isNotEmpty(options)) {
|
|
for (QuesOption option : options) {
|
|
for (QuesOption option : options) {
|
|
- option.setOptionBody(CommonUtils.relaceQuestionIdx(option.getOptionBody().replace("###", "____"), 0));
|
|
|
|
|
|
+ option.setOptionBody(replaceHashSign(option.getOptionBody()));
|
|
option.setOptionBodyWord(null);
|
|
option.setOptionBodyWord(null);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
List<Question> subQuestions = question.getSubQuestions();
|
|
List<Question> subQuestions = question.getSubQuestions();
|
|
question.setQuesBodyWord(null);
|
|
question.setQuesBodyWord(null);
|
|
|
|
+ question.setQuesAnswerWord(null);
|
|
|
|
|
|
if (CollectionUtils.isNotEmpty(subQuestions)) {
|
|
if (CollectionUtils.isNotEmpty(subQuestions)) {
|
|
for (Question subQues : subQuestions) {
|
|
for (Question subQues : subQuestions) {
|
|
@@ -1649,23 +1657,32 @@ public abstract class ExportPaperAbstractService {
|
|
subQues.setQuesParams(params);
|
|
subQues.setQuesParams(params);
|
|
subQues.setQuesBodyWord(null);
|
|
subQues.setQuesBodyWord(null);
|
|
subQues.setQuesAnswerWord(null);
|
|
subQues.setQuesAnswerWord(null);
|
|
- subQues.setQuesBodyWord(null);
|
|
|
|
|
|
|
|
List<QuesOption> subOptions = subQues.getQuesOptions();
|
|
List<QuesOption> subOptions = subQues.getQuesOptions();
|
|
- if (subOptions != null && subOptions.size() > 0) {
|
|
|
|
|
|
+ if (CollectionUtils.isNotEmpty(subOptions)) {
|
|
for (QuesOption subOption : subOptions) {
|
|
for (QuesOption subOption : subOptions) {
|
|
|
|
+ subOption.setOptionBody(replaceHashSign(subOption.getOptionBody()));
|
|
subOption.setOptionBodyWord(null);
|
|
subOption.setOptionBodyWord(null);
|
|
- subOption.setOptionBody(CommonUtils.relaceQuestionIdx(subOption.getOptionBody().replace("###", "____"), 0));
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
- question.setQuesAnswerWord(null);
|
|
|
|
- question.setQuesBody(CommonUtils.relaceQuestionIdx(question.getQuesBody().replace("###", "____"), 0));
|
|
|
|
- question.setQuesAnswer(CommonUtils.relaceQuestionIdx(question.getQuesAnswer().replace("###", "____"), 0));
|
|
|
|
|
|
+ question.setQuesBody(replaceHashSign(question.getQuesBody()));
|
|
|
|
+ question.setQuesAnswer(replaceHashSign(question.getQuesAnswer()));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 替换#号
|
|
|
|
+ */
|
|
|
|
+ private String replaceHashSign(String str) {
|
|
|
|
+ if (StringUtils.isEmpty(str)) {
|
|
|
|
+ return "";
|
|
|
|
+ }
|
|
|
|
+ str = str.replace("###", "____");
|
|
|
|
+ return CommonUtils.relaceQuestionIdx(str, 0);
|
|
|
|
+ }
|
|
|
|
+
|
|
}
|
|
}
|