1
0
Pārlūkot izejas kodu

修复试评对未选做的处理

ting.yin 3 gadi atpakaļ
vecāks
revīzija
2ab5361b43

+ 10 - 5
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/mark/service/Impl/MarkServiceImpl.java

@@ -8,7 +8,6 @@ import java.util.List;
 import java.util.Map;
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.ConcurrentHashMap;
 
 
-import org.apache.commons.lang.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -574,22 +573,28 @@ public class MarkServiceImpl implements MarkService {
             if (library != null && library.getExamId().equals(group.getExamId())
             if (library != null && library.getExamId().equals(group.getExamId())
                     && library.getSubjectCode().equals(group.getSubjectCode())
                     && library.getSubjectCode().equals(group.getSubjectCode())
                     && library.getGroupNumber().equals(group.getNumber())
                     && library.getGroupNumber().equals(group.getNumber())
-                    && result.getMarkerScore() <= group.getTotalScore()
-                    && StringUtils.isNotBlank(result.getScoreList())) {
+                    && result.getMarkerScore() <= group.getTotalScore()) {
                 if ((library.getMarkerId() == null && !hasApplied(library, marker))
                 if ((library.getMarkerId() == null && !hasApplied(library, marker))
                         || (library.getMarkerId() != null && !library.getMarkerId().equals(marker.getId()))) {
                         || (library.getMarkerId() != null && !library.getMarkerId().equals(marker.getId()))) {
                     return SubmitResult.faile();
                     return SubmitResult.faile();
                 }
                 }
                 library.setMarkerId(marker.getId());
                 library.setMarkerId(marker.getId());
                 library.setMarkerTime(new Date());
                 library.setMarkerTime(new Date());
+                // 未选做
+                if (result.isUnselective() && group.isSelective()) {
+                    result.setMarkerScore(UN_SELECTIVE_SCORE);
+                    result.setScoreList(new Double[0]);
+                    trialTrackDao.deleteByLibraryIdAndMarkerId(library.getId(), library.getMarkerId());
+                    trialTagDao.deleteByLibraryIdAndMarkerId(library.getId(), library.getMarkerId());
+                }
                 library.setMarkerScore(result.getMarkerScore());
                 library.setMarkerScore(result.getMarkerScore());
                 library.setMarkerScoreList(result.getScoreList());
                 library.setMarkerScoreList(result.getScoreList());
                 library = trialLibraryDao.save(library);
                 library = trialLibraryDao.save(library);
-                if (result.getTrackList() != null) {
+                if (result.getTrackList() != null && !result.isUnselective()) {
                     trialTrackDao.deleteByLibraryIdAndMarkerId(library.getId(), library.getMarkerId());
                     trialTrackDao.deleteByLibraryIdAndMarkerId(library.getId(), library.getMarkerId());
                     trialTrackDao.save(result.getTrackList(library));
                     trialTrackDao.save(result.getTrackList(library));
                 }
                 }
-                if (result.getSpecialTagList() != null) {
+                if (result.getSpecialTagList() != null && !result.isUnselective()) {
                     trialTagDao.deleteByLibraryIdAndMarkerId(library.getId(), library.getMarkerId());
                     trialTagDao.deleteByLibraryIdAndMarkerId(library.getId(), library.getMarkerId());
                     trialTagDao.save(result.getTagList(library));
                     trialTagDao.save(result.getTagList(library));
                 }
                 }