|
@@ -1473,16 +1473,18 @@ public class ImportPaperService {
|
|
|
map.put("msg", msg);
|
|
|
return map;
|
|
|
}
|
|
|
+ //新课程
|
|
|
+ Course course = courseRepo.findFirstByCodeAndOrgId(courseNo,user.getRootOrgId().toString());
|
|
|
//克隆原试卷所有属性
|
|
|
- Paper newPaper = cloneOldPaper(oldPaper,paperName,courseNo,user);
|
|
|
+ Paper newPaper = cloneOldPaper(oldPaper,paperName,course,user);
|
|
|
//克隆所有大题和小题
|
|
|
- clonePaperDetails(newPaper,oldPaper,paperName,user);
|
|
|
+ clonePaperDetails(newPaper,oldPaper,paperName,user,course);
|
|
|
map.put("msg", "success");
|
|
|
return map;
|
|
|
}
|
|
|
|
|
|
//克隆所有大题和小题
|
|
|
- private void clonePaperDetails(Paper newPaper, Paper oldPaper,String paperName,AccessUser user) {
|
|
|
+ private void clonePaperDetails(Paper newPaper, Paper oldPaper,String paperName,AccessUser user,Course course) {
|
|
|
List<PaperDetail> oldPaperDetails = paperDetailRepo.findByPaperOrderByNumber(oldPaper);
|
|
|
if(oldPaperDetails != null && oldPaperDetails.size() >0){
|
|
|
for(PaperDetail oldPaperDetail:oldPaperDetails){
|
|
@@ -1508,8 +1510,7 @@ public class ImportPaperService {
|
|
|
paperDetailUnit.setSubScoreList(oldPaperDetailUnit.getSubScoreList());
|
|
|
paperDetailUnit.setPaperDetail(paperDetail);
|
|
|
paperDetailUnit.setQuestionType(oldPaperDetailUnit.getQuestionType());
|
|
|
- copyQuestion(paperDetailUnit,oldPaperDetailUnit);
|
|
|
- //paperDetailUnit.setQuestion(oldPaperDetailUnit.getQuestion());
|
|
|
+ copyQuestion(paperDetailUnit,oldPaperDetailUnit,course);
|
|
|
paperDetailUnit.setOptionOrder(oldPaperDetailUnit.getOptionOrder());
|
|
|
paperDetailUnit.setCreator(user.getName());
|
|
|
paperDetailUnit.setCreateTime(CommonUtils.getCurDateTime());
|
|
@@ -1522,7 +1523,7 @@ public class ImportPaperService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- private void copyQuestion(PaperDetailUnit paperDetailUnit,PaperDetailUnit oldPaperDetailUnit) {
|
|
|
+ private void copyQuestion(PaperDetailUnit paperDetailUnit,PaperDetailUnit oldPaperDetailUnit,Course course) {
|
|
|
Question oldQuestion = oldPaperDetailUnit.getQuestion();
|
|
|
Question newQuestion = BeanCopierUtil.copyProperties(oldQuestion,Question.class);
|
|
|
QuestionPkgPath oldQuesPkgPath = quesPkgPathRepo.findFirstById(oldQuestion.getQuesPkgPathId());
|
|
@@ -1530,6 +1531,7 @@ public class ImportPaperService {
|
|
|
newQuestionPkgPath.setId(null);
|
|
|
newQuestionPkgPath = quesPkgPathRepo.save(newQuestionPkgPath);
|
|
|
newQuestion.setQuesPkgPathId(newQuestionPkgPath.getId());
|
|
|
+ newQuestion.setCourse(course);
|
|
|
newQuestion.setId(null);
|
|
|
newQuestion.setQuesProperties(null);
|
|
|
newQuestion.setPropertyGroup(null);
|
|
@@ -1538,8 +1540,7 @@ public class ImportPaperService {
|
|
|
}
|
|
|
|
|
|
//克隆原试卷所有属性
|
|
|
- private Paper cloneOldPaper(Paper oldPaper,String paperName,String courseNo, AccessUser user) {
|
|
|
- Course course = courseRepo.findFirstByCodeAndOrgId(courseNo,user.getRootOrgId().toString());
|
|
|
+ private Paper cloneOldPaper(Paper oldPaper,String paperName,Course course, AccessUser user) {
|
|
|
Paper newPaper = BeanCopierUtil.copyProperties(oldPaper, Paper.class);
|
|
|
newPaper.setName(paperName);
|
|
|
newPaper.setCreateTime(CommonUtils.getCurDateTime());
|