yin 9 hónapja
szülő
commit
88fa396574

+ 6 - 5
src/main/java/cn/com/qmth/scancentral/service/OmrGroupService.java

@@ -1,13 +1,14 @@
 package cn.com.qmth.scancentral.service;
 
+import java.util.List;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.qmth.boot.core.collection.PageResult;
+
 import cn.com.qmth.scancentral.entity.OmrGroupEntity;
 import cn.com.qmth.scancentral.vo.OmrGroupUpdateVo;
 import cn.com.qmth.scancentral.vo.OmrGroupVo;
 import cn.com.qmth.scancentral.vo.omr.OmrGroupQuery;
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.qmth.boot.core.collection.PageResult;
-
-import java.util.List;
 
 public interface OmrGroupService extends IService<OmrGroupEntity> {
 
@@ -23,7 +24,7 @@ public interface OmrGroupService extends IService<OmrGroupEntity> {
 
     void save(OmrGroupUpdateVo vo);
 
-    List<OmrGroupEntity> findByExamIdAndFixed(Long examId, Boolean fixed);
+    List<OmrGroupEntity> findByExamIdAndSubjectCodeAndFixed(Long examId,String subjectCode, Boolean fixed);
 
     void updateTotalCount(Long id);
 

+ 26 - 23
src/main/java/cn/com/qmth/scancentral/service/impl/OmrGroupServiceImpl.java

@@ -1,5 +1,29 @@
 package cn.com.qmth.scancentral.service.impl;
 
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.apache.commons.collections4.CollectionUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.qmth.boot.core.collection.PageResult;
+import com.qmth.boot.core.concurrent.service.ConcurrentService;
+import com.qmth.boot.core.exception.ParameterException;
+import com.qmth.boot.core.exception.ReentrantException;
+import com.qmth.boot.core.exception.StatusException;
+
 import cn.com.qmth.scancentral.dao.OmrGroupDao;
 import cn.com.qmth.scancentral.entity.OmrGroupEntity;
 import cn.com.qmth.scancentral.entity.OmrTaskEntity;
@@ -18,28 +42,6 @@ import cn.com.qmth.scancentral.vo.OmrConditionVo;
 import cn.com.qmth.scancentral.vo.OmrGroupUpdateVo;
 import cn.com.qmth.scancentral.vo.OmrGroupVo;
 import cn.com.qmth.scancentral.vo.omr.OmrGroupQuery;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.qmth.boot.core.collection.PageResult;
-import com.qmth.boot.core.concurrent.service.ConcurrentService;
-import com.qmth.boot.core.exception.ParameterException;
-import com.qmth.boot.core.exception.ReentrantException;
-import com.qmth.boot.core.exception.StatusException;
-import org.apache.commons.collections4.CollectionUtils;
-import org.apache.commons.lang3.StringUtils;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
 
 @Service
 public class OmrGroupServiceImpl extends ServiceImpl<OmrGroupDao, OmrGroupEntity> implements OmrGroupService {
@@ -275,10 +277,11 @@ public class OmrGroupServiceImpl extends ServiceImpl<OmrGroupDao, OmrGroupEntity
     }
 
     @Override
-    public List<OmrGroupEntity> findByExamIdAndFixed(Long examId, Boolean fixed) {
+    public List<OmrGroupEntity> findByExamIdAndSubjectCodeAndFixed(Long examId,String subjectCode, Boolean fixed) {
         QueryWrapper<OmrGroupEntity> wrapper = new QueryWrapper<>();
         LambdaQueryWrapper<OmrGroupEntity> lw = wrapper.lambda();
         lw.eq(OmrGroupEntity::getExamId, examId);
+        lw.eq(OmrGroupEntity::getSubjectCode, subjectCode);
         lw.eq(OmrGroupEntity::getFixed, fixed);
         return baseMapper.selectList(wrapper);
     }

+ 1 - 1
src/main/java/cn/com/qmth/scancentral/service/impl/StudentServiceImpl.java

@@ -243,7 +243,7 @@ public class StudentServiceImpl extends ServiceImpl<StudentDao, StudentEntity> i
         // }
         if (updateOmrTask) {
             // 遍历固定任务分组
-            List<OmrGroupEntity> gs = omrGroupService.findByExamIdAndFixed(student.getExamId(), true);
+            List<OmrGroupEntity> gs = omrGroupService.findByExamIdAndSubjectCodeAndFixed(student.getExamId(),student.getSubjectCode(), true);
             if (CollectionUtils.isNotEmpty(gs)) {
                 for (OmrGroupEntity g : gs) {
                     concurrentService.getReadWriteLock(LockType.OMR_GROUP + "-" + g.getId()).readLock().lock();