|
@@ -98,10 +98,15 @@ public class PaperService {
|
|
|
* @param paperExp
|
|
|
* @return
|
|
|
*/
|
|
|
- public Paper savePaper(PaperExp paperExp) {
|
|
|
- Paper paper = BeanCopierUtil.copyProperties(paperExp, Paper.class);
|
|
|
- formatPaper(paper);
|
|
|
- return paperRepo.save(paper);
|
|
|
+ public Paper savePaper(PaperExp paperExp, AccessUser user) {
|
|
|
+ Paper oldPaper = paperRepo.findOne(paperExp.getId());
|
|
|
+ if (oldPaper != null) {
|
|
|
+ oldPaper.setTitle(paperExp.getTitle());
|
|
|
+ oldPaper.setName(paperExp.getName());
|
|
|
+ oldPaper.setLastModifyName(user.getLoginName());
|
|
|
+ return paperRepo.save(oldPaper);
|
|
|
+ }
|
|
|
+ return null;
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -156,7 +161,7 @@ public class PaperService {
|
|
|
examPaper.setExamId(examId);
|
|
|
examPaper.setGroupCode(groupCode);
|
|
|
examPaper.setCourseCode(courseCode);
|
|
|
-// examPaper.setPaperId(paperId);
|
|
|
+ // examPaper.setPaperId(paperId);
|
|
|
examPaperRepo.save(examPaper);
|
|
|
}
|
|
|
|
|
@@ -165,7 +170,7 @@ public class PaperService {
|
|
|
examPaper.setExamId(examId);
|
|
|
examPaper.setGroupCode(groupCode);
|
|
|
examPaper.setCourseCode(courseCode);
|
|
|
-// examPaper.setPaperId(paperId);
|
|
|
+ // examPaper.setPaperId(paperId);
|
|
|
examPaperRepo.delete(examPaper);
|
|
|
}
|
|
|
|
|
@@ -360,7 +365,7 @@ public class PaperService {
|
|
|
*
|
|
|
* @param paper
|
|
|
*/
|
|
|
- public void formatPaper(Paper paper) {
|
|
|
+ public void formatPaper(Paper paper, AccessUser user) {
|
|
|
List<PaperDetail> paperDetails = paperDetailRepo.findByPaper(paper);
|
|
|
// 计算试卷总分
|
|
|
List<PaperDetailUnit> paperDetailUnitAll = paperDetailUnitRepo.findByPaper(paper);
|
|
@@ -399,6 +404,9 @@ public class PaperService {
|
|
|
paper.setUnitCount(paperDetailUnitAll.size());
|
|
|
paper.setPaperDetailCount(paperDetails.size());
|
|
|
paper.setTotalScore(totalScore);
|
|
|
+ if (user != null) {
|
|
|
+ paper.setLastModifyName(user.getLoginName());
|
|
|
+ }
|
|
|
paperDetailRepo.save(paperDetails);
|
|
|
paperRepo.save(paper);
|
|
|
}
|
|
@@ -409,7 +417,7 @@ public class PaperService {
|
|
|
* @param questionId
|
|
|
* @return
|
|
|
*/
|
|
|
- public List<String> deleteImportQuestionById(String questionId) {
|
|
|
+ public List<String> deleteImportQuestionById(String questionId, AccessUser user) {
|
|
|
Question ques = quesRepo.findOne(questionId);
|
|
|
List<PaperDetailUnit> pdus = CommonUtils.toList(paperDetailUnitRepo.findByQuestion(ques));
|
|
|
List<String> paperNames = new ArrayList<String>();
|
|
@@ -430,7 +438,7 @@ public class PaperService {
|
|
|
quesBakRepo.save(BeanCopierUtil.copyProperties(ques, QuestionBak.class));
|
|
|
quesRepo.delete(ques);
|
|
|
for (Paper paper : papers) {
|
|
|
- formatPaper(paper);
|
|
|
+ formatPaper(paper, user);
|
|
|
}
|
|
|
|
|
|
}
|
|
@@ -462,7 +470,7 @@ public class PaperService {
|
|
|
pdu.setNumber(pdus.indexOf(pdu) + 1);
|
|
|
pdu.setScore(0d);
|
|
|
paperDetailUnitRepo.save(pdu);
|
|
|
- formatPaper(paper);
|
|
|
+ formatPaper(paper, user);
|
|
|
return paper;
|
|
|
|
|
|
}
|
|
@@ -508,7 +516,8 @@ public class PaperService {
|
|
|
return quesService.findByIdExclude(selectedIds, paper.getCourseNo(), quesType, curPage, pageSize);
|
|
|
}
|
|
|
|
|
|
- public Paper selectQuestionsToPaper(String paperId, String paperDetailId, List<Question> questions) {
|
|
|
+ public Paper selectQuestionsToPaper(String paperId, String paperDetailId, List<Question> questions,
|
|
|
+ AccessUser user) {
|
|
|
Paper paper = paperRepo.findOne(paperId);
|
|
|
PaperDetail pd = paperDetailRepo.findOne(paperDetailId);
|
|
|
List<PaperDetailUnit> pdus = paperDetailUnitRepo.findByPaperDetail(pd);
|
|
@@ -530,7 +539,7 @@ public class PaperService {
|
|
|
}
|
|
|
|
|
|
paperDetailUnitRepo.save(saveUnits);
|
|
|
- formatPaper(paper);
|
|
|
+ formatPaper(paper, user);
|
|
|
return paper;
|
|
|
}
|
|
|
|