|
@@ -716,7 +716,7 @@ public class MarkServiceImpl implements MarkService {
|
|
|
if (group.getStatus() == MarkStatus.FINISH) {
|
|
|
return false;
|
|
|
}
|
|
|
- if (libraryDao.resetById(library.getId(), LibraryStatus.WAITING, LibraryStatus.MARKED, LibraryStatus.PROBLEM,
|
|
|
+ if (libraryDao.resetById(library.getId(), LibraryStatus.REJECTED, LibraryStatus.MARKED, LibraryStatus.PROBLEM,
|
|
|
LibraryStatus.INSPECTED) > 0) {
|
|
|
trackDao.deleteByLibraryId(library.getId());
|
|
|
specialTagDao.deleteByLibraryId(library.getId());
|
|
@@ -1322,7 +1322,7 @@ public class MarkServiceImpl implements MarkService {
|
|
|
List<MarkLibrary> list = libraryDao.findByStudentIdAndGroupNumber(student.getId(), groupNumber);
|
|
|
int count = 0;
|
|
|
for (MarkLibrary library : list) {
|
|
|
- if (libraryDao.resetById(library.getId(), LibraryStatus.WAITING, LibraryStatus.MARKED,
|
|
|
+ if (libraryDao.resetById(library.getId(), LibraryStatus.REJECTED, LibraryStatus.MARKED,
|
|
|
LibraryStatus.PROBLEM, LibraryStatus.INSPECTED) > 0) {
|
|
|
count++;
|
|
|
trackDao.deleteByLibraryId(library.getId());
|
|
@@ -1369,6 +1369,7 @@ public class MarkServiceImpl implements MarkService {
|
|
|
List<MarkLibrary> list = libraryDao.findByStudentIdAndGroupNumber(student.getId(), group.getNumber());
|
|
|
List<ExamQuestion> questions = questionDao.findByExamIdAndSubjectCodeAndObjectiveAndGroupNumber(
|
|
|
group.getExamId(), group.getSubjectCode(), false, group.getNumber());
|
|
|
+ List<MarkStepDTO> qList = map.get(group);
|
|
|
int count = 0;
|
|
|
for (MarkLibrary library : list) {
|
|
|
if (library.getTaskNumber() == 3) {
|
|
@@ -1379,9 +1380,9 @@ public class MarkServiceImpl implements MarkService {
|
|
|
count++;
|
|
|
continue;
|
|
|
}
|
|
|
- if (library.getStatus().equals(LibraryStatus.ARBITRATED)) {
|
|
|
- // 仲裁任务直接重置
|
|
|
- libraryDao.resetById(library.getId(), LibraryStatus.WAITING, LibraryStatus.MARKED,
|
|
|
+ if (library.getStatus().equals(LibraryStatus.ARBITRATED) || qList.size() == questions.size()) {
|
|
|
+ // 仲裁任务直接重置 或者该分组下所有分数被打回也重置
|
|
|
+ libraryDao.resetById(library.getId(), LibraryStatus.REJECTED, LibraryStatus.MARKED,
|
|
|
LibraryStatus.PROBLEM, LibraryStatus.INSPECTED);
|
|
|
trackDao.deleteByLibraryId(library.getId());
|
|
|
specialTagDao.deleteByLibraryId(library.getId());
|
|
@@ -1389,7 +1390,6 @@ public class MarkServiceImpl implements MarkService {
|
|
|
continue;
|
|
|
}
|
|
|
if (library.getStatus().equals(LibraryStatus.MARKED)) {
|
|
|
- List<MarkStepDTO> qList = map.get(group);
|
|
|
List<ScoreItem> sList = library.getScoreList();
|
|
|
for (MarkStepDTO markStepDTO : qList) {
|
|
|
trackDao.deleteByLibraryIdAndQuestionNumber(library.getId(), markStepDTO.getMainNumber() + "."
|