mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/per-boe/java-servers.git
synced 2025-12-10 11:26:50 +08:00
Merge remote-tracking branch 'origin/dev0525' into dev0525
This commit is contained in:
@@ -487,16 +487,32 @@ public class AloneExamServiceImpl implements IAloneExamService{
|
||||
FieldFilters.eq("testId", examScoreDto.getTestId())
|
||||
);
|
||||
aloneExamAnswer.setAloneId(aloneExamId);
|
||||
|
||||
// 添加答卷
|
||||
dao.save(aloneExamAnswer);
|
||||
|
||||
// 最后一次的分数为准
|
||||
aeDao.update(UpdateBuilder.from(AloneExam.class)
|
||||
.addUpdateField("status", examScoreDto.getStatus())
|
||||
.addUpdateField("score", examScoreDto.getScore())
|
||||
.addFilter(FieldFilters.eq("aid", userId))
|
||||
.addFilter(FieldFilters.eq("testId", examScoreDto.getTestId()))
|
||||
.builder());
|
||||
// 更新状态,状态是未完成的,这里会有问题
|
||||
if(examTest.getScoringType()!=null && examTest.getScoringType()==2) {
|
||||
//最后一次的分数为准
|
||||
aeDao.update(UpdateBuilder.from(AloneExam.class)
|
||||
.addUpdateField("status", examScoreDto.getStatus())
|
||||
.addUpdateField("score", examScoreDto.getScore())
|
||||
.addFilter(FieldFilters.eq("aid", userId))
|
||||
.addFilter(FieldFilters.eq("testId", examScoreDto.getTestId()))
|
||||
.builder());
|
||||
}else {
|
||||
//更新状态
|
||||
AloneExam ae=aeDao.findOne(FieldFilters.eq("aid", userId),FieldFilters.eq("testId", examScoreDto.getTestId()));
|
||||
if(ae!=null) {
|
||||
if(ae.getStatus()==AloneExam.STATUS_FINISH) {
|
||||
if(ae.getScore()<examScoreDto.getScore()) {
|
||||
aeDao.updateFieldById(ae.getId(), "score", examScoreDto.getScore());
|
||||
}
|
||||
}else {
|
||||
aeDao.updateMultiFieldById(ae.getId(), UpdateBuilder.create("status", examScoreDto.getStatus()),UpdateBuilder.create("score", examScoreDto.getScore()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 提交事务
|
||||
transactionManager.commit(status);
|
||||
} catch (Exception e) {
|
||||
|
||||
Reference in New Issue
Block a user