|
@@ -316,25 +316,23 @@ public class PaperService {
|
|
|
|
|
|
paperDetail.setCnNum(CommonUtils.toCHNum(paperDetail.getNumber()));
|
|
|
paperDetail.setNumber(++mainNum);
|
|
|
- if (paperDetail.getPaperDetailUnits() == null || paperDetail.getPaperDetailUnits().size() == 0) {
|
|
|
- return;
|
|
|
- }
|
|
|
|
|
|
- for (PaperDetailUnitExp paperDetailUnit : paperDetail.getPaperDetailUnits()) {
|
|
|
-
|
|
|
- quesService.formatQuesUnit(paperDetailUnit.getQuestion());
|
|
|
-
|
|
|
- List<Question> subQuesList = paperDetailUnit.getQuestion().getSubQuestions();
|
|
|
-
|
|
|
- if (subQuesList != null && subQuesList.size() > 0) {
|
|
|
- for (Question subQues : subQuesList) {
|
|
|
- Map<String, String> params = new HashMap<String, String>();
|
|
|
- params.put("number", String.valueOf(++subNum));
|
|
|
- subQues.setQuesParams(params);
|
|
|
- quesService.formatQuesUnit(subQues);
|
|
|
+ if (paperDetail != null && paperDetail.getPaperDetailUnits() != null
|
|
|
+ && paperDetail.getPaperDetailUnits().size() > 0) {
|
|
|
+ for (PaperDetailUnitExp paperDetailUnit : paperDetail.getPaperDetailUnits()) {
|
|
|
+ quesService.formatQuesUnit(paperDetailUnit.getQuestion());
|
|
|
+ List<Question> subQuesList = paperDetailUnit.getQuestion().getSubQuestions();
|
|
|
+
|
|
|
+ if (subQuesList != null && subQuesList.size() > 0) {
|
|
|
+ for (Question subQues : subQuesList) {
|
|
|
+ Map<String, String> params = new HashMap<String, String>();
|
|
|
+ params.put("number", String.valueOf(++subNum));
|
|
|
+ subQues.setQuesParams(params);
|
|
|
+ quesService.formatQuesUnit(subQues);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ paperDetailUnit.setNumber(++subNum);
|
|
|
}
|
|
|
- } else {
|
|
|
- paperDetailUnit.setNumber(++subNum);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -389,7 +387,7 @@ public class PaperService {
|
|
|
if (unit.getScore() != null) {
|
|
|
score += unit.getScore();
|
|
|
}
|
|
|
- if (unit.getQuestion().getSubQuestions() != null
|
|
|
+ if (unit.getQuestion() != null && unit.getQuestion().getSubQuestions() != null
|
|
|
&& unit.getQuestion().getSubQuestions().size() > 0) {
|
|
|
nestQusNum += unit.getQuestion().getSubQuestions().size() - 1;
|
|
|
}
|
|
@@ -426,15 +424,18 @@ public class PaperService {
|
|
|
List<PaperDetailUnit> needPdus = new ArrayList<PaperDetailUnit>();
|
|
|
List<Paper> papers = new ArrayList<Paper>();
|
|
|
for (PaperDetailUnit pdu : pdus) {
|
|
|
- if (PaperType.GENERATE == pdu.getPaper().getPaperType()) {
|
|
|
- paperNames.add(pdu.getPaper().getName());
|
|
|
- needPdus.add(pdu);
|
|
|
- if (!papers.contains(pdu.getPaper())) {
|
|
|
- papers.add(pdu.getPaper());
|
|
|
- }
|
|
|
+ if (pdu.getPaper() != null) {
|
|
|
+ if (PaperType.GENERATE == pdu.getPaper().getPaperType()) {
|
|
|
+ paperNames.add(pdu.getPaper().getName());
|
|
|
+ needPdus.add(pdu);
|
|
|
+ if (!papers.contains(pdu.getPaper())) {
|
|
|
+ papers.add(pdu.getPaper());
|
|
|
+ }
|
|
|
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
if (paperNames.size() == 0) {
|
|
|
paperDetailUnitRepo.delete(needPdus);
|
|
|
quesBakRepo.save(BeanCopierUtil.copyProperties(ques, QuestionBak.class));
|
|
@@ -548,7 +549,7 @@ public class PaperService {
|
|
|
public String checkPaperName(String paperName, String orgId) {
|
|
|
String msg = null;
|
|
|
Paper paperTemp = new Paper();
|
|
|
- paperTemp.setName(paperName);
|
|
|
+ paperTemp.setName(paperName.trim());
|
|
|
paperTemp.setOrgId(orgId);
|
|
|
Paper paper = paperRepo.findOne(Example.of(paperTemp));
|
|
|
if (paper != null) {
|