Index: lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/controller/QaAuthoringController.java =================================================================== diff -u -r8384e056e833d8aadcd6cb12a219094f89c67042 -rb9740eeb1daa4a7158866b8f2298b4dc9abe7205 --- lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/controller/QaAuthoringController.java (.../QaAuthoringController.java) (revision 8384e056e833d8aadcd6cb12a219094f89c67042) +++ lams_tool_laqa/src/java/org/lamsfoundation/lams/tool/qa/web/controller/QaAuthoringController.java (.../QaAuthoringController.java) (revision b9740eeb1daa4a7158866b8f2298b4dc9abe7205) @@ -539,19 +539,6 @@ qaContent = qaService.getQaContent(toolContentId); - for (QaCondition condition : conditions) { - condition.setQuestions(new TreeSet<>(new QaQueContentComparator())); - for (QaQuestionDTO dto : condition.temporaryQuestionDTOSet) { - for (QaQueContent queContent : qaContent.getQaQueContents()) { - if (dto.getDisplayOrder().equals(String.valueOf(queContent.getDisplayOrder()))) { - condition.getQuestions().add(queContent); - } - } - } - } - qaContent.setConditions(conditions); - qaService.updateQaContent(qaContent); - // persist questions int displayOrder = 0; for (QaQuestionDTO questionDTO : questionDTOs) { @@ -587,6 +574,19 @@ qaService.saveOrUpdateQuestion(question); } + for (QaCondition condition : conditions) { + condition.setQuestions(new TreeSet<>(new QaQueContentComparator())); + for (QaQuestionDTO dto : condition.temporaryQuestionDTOSet) { + for (QaQueContent queContent : qaContent.getQaQueContents()) { + if (dto.getDisplayOrder().equals(String.valueOf(queContent.getDisplayOrder()))) { + condition.getQuestions().add(queContent); + } + } + } + } + qaContent.setConditions(conditions); + qaService.updateQaContent(qaContent); + return qaContent; }