Răsfoiți Sursa

清除schoolid

xiatian 9 luni în urmă
părinte
comite
a7d8859884

+ 0 - 10
src/main/java/cn/com/qmth/scancentral/bean/ImportExamDomain.java

@@ -9,8 +9,6 @@ public class ImportExamDomain {
 
     private Long id;
 
-    private Long schoolId;
-
     private String schoolName;
 
     private String name;
@@ -115,14 +113,6 @@ public class ImportExamDomain {
         this.absentBarcodeContent = absentBarcodeContent;
     }
 
-    public Long getSchoolId() {
-        return schoolId;
-    }
-
-    public void setSchoolId(Long schoolId) {
-        this.schoolId = schoolId;
-    }
-
     public String getName() {
         return name;
     }

+ 0 - 10
src/main/java/cn/com/qmth/scancentral/bean/ImportUserDomain.java

@@ -4,8 +4,6 @@ import cn.com.qmth.scancentral.enums.Role;
 
 public class ImportUserDomain {
 
-    private Long schoolId;
-
     private String name;
 
     private String loginName;
@@ -46,12 +44,4 @@ public class ImportUserDomain {
         this.role = role;
     }
 
-    public Long getSchoolId() {
-        return schoolId;
-    }
-
-    public void setSchoolId(Long schoolId) {
-        this.schoolId = schoolId;
-    }
-
 }

+ 0 - 56
src/main/java/cn/com/qmth/scancentral/bean/SchoolSession.java

@@ -1,56 +0,0 @@
-package cn.com.qmth.scancentral.bean;
-
-import cn.com.qmth.scancentral.enums.Role;
-
-public class SchoolSession {
-
-    private Long id;
-
-    private String account;
-
-    private Role role;
-
-    private String markingCloudToken;
-
-    public String getAccount() {
-        return account;
-    }
-
-    public void setAccount(String account) {
-        this.account = account;
-    }
-
-    public Role getRole() {
-        return role;
-    }
-
-    public void setRole(Role role) {
-        this.role = role;
-    }
-
-    public Long getId() {
-        return id;
-    }
-
-    public void setId(Long id) {
-        this.id = id;
-    }
-
-    public String getMarkingCloudToken() {
-        return markingCloudToken;
-    }
-
-    public void setMarkingCloudToken(String markingCloudToken) {
-        this.markingCloudToken = markingCloudToken;
-    }
-
-    public static SchoolSession of(User user) {
-        SchoolSession s = new SchoolSession();
-        // s.setId(user.getSchoolId());
-        s.setAccount(user.getAccount());
-        s.setMarkingCloudToken(user.getMarkingCloudToken());
-        s.setRole(user.getRole());
-        return s;
-    }
-
-}

+ 0 - 48
src/main/java/cn/com/qmth/scancentral/consumer/UploadConsumer.java

@@ -1,48 +0,0 @@
-package cn.com.qmth.scancentral.consumer;
-
-import java.util.concurrent.CountDownLatch;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.annotation.Scope;
-import org.springframework.stereotype.Service;
-
-import cn.com.qmth.scancentral.service.StudentService;
-import cn.com.qmth.scancentral.vo.StudentUploadVo;
-
-@Scope("prototype")
-@Service
-public class UploadConsumer implements Runnable {
-
-    private CountDownLatch endGate;
-
-    private StudentUploadVo vo;
-
-    @Autowired
-    private StudentService studentService;
-
-    @Override
-    public void run() {
-        try {
-            studentService.uploadData(vo);
-        } finally {
-            endGate.countDown();
-        }
-    }
-
-    public StudentUploadVo getVo() {
-        return vo;
-    }
-
-    public void setVo(StudentUploadVo vo) {
-        this.vo = vo;
-    }
-
-    public CountDownLatch getEndGate() {
-        return endGate;
-    }
-
-    public void setEndGate(CountDownLatch endGate) {
-        this.endGate = endGate;
-    }
-
-}

+ 38 - 39
src/main/java/cn/com/qmth/scancentral/controller/admin/CardController.java

@@ -1,22 +1,7 @@
 package cn.com.qmth.scancentral.controller.admin;
 
-import cn.com.qmth.scancentral.controller.BaseController;
-import cn.com.qmth.scancentral.enums.LockType;
-import cn.com.qmth.scancentral.service.AdapteFileService;
-import cn.com.qmth.scancentral.service.AnswerCardService;
-import cn.com.qmth.scancentral.service.ExamService;
-import cn.com.qmth.scancentral.vo.ResultVo;
-import cn.com.qmth.scancentral.vo.card.CardEdit;
-import cn.com.qmth.scancentral.vo.card.CardInfo;
-import cn.com.qmth.scancentral.vo.card.CardQuery;
-import com.qmth.boot.api.annotation.Aac;
-import com.qmth.boot.api.constant.ApiConstant;
-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 io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
+import javax.annotation.Resource;
+
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -26,7 +11,22 @@ import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.multipart.MultipartFile;
 
-import javax.annotation.Resource;
+import com.qmth.boot.api.annotation.Aac;
+import com.qmth.boot.api.constant.ApiConstant;
+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 cn.com.qmth.scancentral.controller.BaseController;
+import cn.com.qmth.scancentral.enums.LockType;
+import cn.com.qmth.scancentral.service.AnswerCardService;
+import cn.com.qmth.scancentral.vo.ResultVo;
+import cn.com.qmth.scancentral.vo.card.CardEdit;
+import cn.com.qmth.scancentral.vo.card.CardInfo;
+import cn.com.qmth.scancentral.vo.card.CardQuery;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
 
 @RestController
 @Api(tags = "卡格式相关接口")
@@ -42,12 +42,6 @@ public class CardController extends BaseController {
     @Resource
     private ConcurrentService concurrentService;
 
-    @Autowired
-    private AdapteFileService adapteFileService;
-
-    @Autowired
-    private ExamService examService;
-
     @ApiOperation(value = "查询卡格式列表(分页)")
     @RequestMapping(value = "/list", method = RequestMethod.POST)
     public PageResult<CardInfo> list(CardQuery query) {
@@ -88,31 +82,36 @@ public class CardController extends BaseController {
     }
 
     // @ApiOperation(value = "答题卡适配卡格式上传")
-    // @RequestMapping(value = "/answer/adapte/upload", method = RequestMethod.POST)
-    // public UriVo adapteUpload(HttpServletRequest request, @RequestParam Long examId, @RequestParam Integer cardNumber,
-    //                           @RequestParam MultipartFile file, @RequestParam String md5, @RequestParam Integer dpi) {
-    //     return adapteFileService.save(RequestUtil.getIpAddress(request), getAccessUser().getRole(), examId, cardNumber,
-    //             md5, dpi, file);
+    // @RequestMapping(value = "/answer/adapte/upload", method =
+    // RequestMethod.POST)
+    // public UriVo adapteUpload(HttpServletRequest request, @RequestParam Long
+    // examId, @RequestParam Integer cardNumber,
+    // @RequestParam MultipartFile file, @RequestParam String md5, @RequestParam
+    // Integer dpi) {
+    // return adapteFileService.save(RequestUtil.getIpAddress(request),
+    // getAccessUser().getRole(), examId, cardNumber,
+    // md5, dpi, file);
     // }
     //
     // @ApiOperation(value = "卡格式详情")
     // @RequestMapping(value = "/info", method = RequestMethod.POST)
     // public Map<String, Object> info(@RequestParam Long examId) {
-    //     Map<String, Object> status = new HashMap<String, Object>();
-    //     status.put("synching", concurrentService.isLocked(LockType.CARD_SYNC + "-" + examId));
-    //     status.put("updateTime", examService.getById(examId).getCardSyncTime());
-    //     Map<String, Object> result = new HashMap<String, Object>();
-    //     result.put("status", status);
-    //     result.put("answer", answerCardService.listByExamId(examId));
-    //     result.put("package", new ArrayList<>());
-    //     return result;
+    // Map<String, Object> status = new HashMap<String, Object>();
+    // status.put("synching", concurrentService.isLocked(LockType.CARD_SYNC +
+    // "-" + examId));
+    // status.put("updateTime", examService.getById(examId).getCardSyncTime());
+    // Map<String, Object> result = new HashMap<String, Object>();
+    // result.put("status", status);
+    // result.put("answer", answerCardService.listByExamId(examId));
+    // result.put("package", new ArrayList<>());
+    // return result;
     // }
     //
     // @ApiOperation(value = "创建/修改签到表卡格式")
     // @RequestMapping(value = "/package/save", method = RequestMethod.POST)
     // public JSONObject packageSave() {
-    //     JSONObject result = new JSONObject();
-    //     return result;
+    // JSONObject result = new JSONObject();
+    // return result;
     // }
 
 }

+ 45 - 45
src/main/java/cn/com/qmth/scancentral/controller/admin/CheckAssignedController.java

@@ -52,39 +52,43 @@ public class CheckAssignedController extends BaseController {
     @Autowired
     private StudentService studentService;
 
-     @Resource
-     private ConcurrentService concurrentService;
+    @Resource
+    private ConcurrentService concurrentService;
 
-     @Autowired
-     private ExamService examService;
-
-     @Autowired
-     private AsyncTaskExecutor taskExecutor;
+    @Autowired
+    private ExamService examService;
 
-//    @ApiOperation(value = "列表")
-//    @RequestMapping(value = "/list", method = RequestMethod.POST)
-//    public PageResult<AnswerQueryVo> list(@Validated AssignedQueryDomain query) {
-//        if (query.getAssignedCheckCount() == null || query.getAssignedCheckCount() <= 1) {
-//            query.setAssignedCheckCount(1);
-//        }
-//        query.setAssigned(true);
-//        return studentService.queryAssignedCheckPage(query);
-//    }
+    @Autowired
+    private AsyncTaskExecutor taskExecutor;
+
+    // @ApiOperation(value = "列表")
+    // @RequestMapping(value = "/list", method = RequestMethod.POST)
+    // public PageResult<AnswerQueryVo> list(@Validated AssignedQueryDomain
+    // query) {
+    // if (query.getAssignedCheckCount() == null ||
+    // query.getAssignedCheckCount() <= 1) {
+    // query.setAssignedCheckCount(1);
+    // }
+    // query.setAssigned(true);
+    // return studentService.queryAssignedCheckPage(query);
+    // }
 
     @ApiOperation(value = "导出")
     @RequestMapping(value = "/export", method = RequestMethod.POST)
-    public void export(@RequestParam Long examId, @RequestParam String subjectCode, @RequestParam GroupType type, HttpServletResponse response) throws IOException {
+    public void export(@RequestParam Long examId, @RequestParam String subjectCode, @RequestParam GroupType type,
+            HttpServletResponse response) throws IOException {
         String fileName = URLEncoder.encode("复核校验", "UTF-8");
         response.setHeader("Content-Disposition", "inline; filename=" + fileName + ".xlsx");
         response.setContentType("application/vnd.ms-excel");
         ExcelWriter writer = ExcelWriter.create(ExcelType.XLSX);
-        if(GroupType.STUDENT_CODE.equals(type)){
+        if (GroupType.STUDENT_CODE.equals(type)) {
             AssignedQueryDomain query1 = new AssignedQueryDomain();
             query1.setExamId(examId);
             query1.setSubjectCode(subjectCode);
             query1.setAssigned(true);
             query1.setAssignedSuspect(true);
             PageListIterator<AssignedCheckExport> iterator = new PageListIterator<AssignedCheckExport>(100) {
+
                 @Override
                 public Collection<AssignedCheckExport> getPageList(int pageNumber, int pageSize) {
                     query1.setPageNumber(pageNumber);
@@ -94,8 +98,8 @@ public class CheckAssignedController extends BaseController {
             };
             writer.writeObjects("复核校验", null, AssignedCheckExport.class, iterator);
 
-        }else if(GroupType.EXAM_ROOM.equals(type)){
-            List<AssignedCheckExamRoomExport> list = studentService.exportAssignedCheck(examId,subjectCode);
+        } else if (GroupType.EXAM_ROOM.equals(type)) {
+            List<AssignedCheckExamRoomExport> list = studentService.exportAssignedCheck(examId, subjectCode);
             writer.writeObjects("复核校验", null, AssignedCheckExamRoomExport.class, list.iterator());
         }
         writer.output(response.getOutputStream());
@@ -137,38 +141,34 @@ public class CheckAssignedController extends BaseController {
         return success(true);
     }
 
-     @ApiOperation(value = "重新生成")
-     @RequestMapping(value = "/reset", method = RequestMethod.POST)
-     public JSONObject reset(@RequestParam Long examId, @RequestParam String subjectCode) {
-         User user = getAccessUser();
-         ExamEntity exam = examService.getById(examId);
-         if (exam == null) {
+    @ApiOperation(value = "重新生成")
+    @RequestMapping(value = "/reset", method = RequestMethod.POST)
+    public JSONObject reset(@RequestParam Long examId, @RequestParam String subjectCode) {
+        ExamEntity exam = examService.getById(examId);
+        if (exam == null) {
             throw ParameterExceptions.EXAM_NOT_FOUND;
-         }
+        }
 
-         if (!concurrentService.isLocked(LockType.CHECK_ASSIGNED_RESET + "-" + examId)) {
-            taskExecutor.submit(new CheckAssignedResetThread(examId, subjectCode,
-            studentService, concurrentService));
-         } else {
+        if (!concurrentService.isLocked(LockType.CHECK_ASSIGNED_RESET + "-" + examId)) {
+            taskExecutor.submit(new CheckAssignedResetThread(examId, subjectCode, studentService, concurrentService));
+        } else {
             throw new ReentrantException("正在重置,请稍后再试");
-         }
-         JSONObject result = new JSONObject();
-         result.put("updateTime", System.currentTimeMillis());
-         result.put("synching", true);
-         return result;
-     }
-
-     @ApiOperation(value = "重新生成状态")
-     @RequestMapping(value = "/reset/status", method = RequestMethod.POST)
-     public Map<String, Object> resetStatus(@RequestParam Long examId, @RequestParam String subjectCode) {
-        User user = getAccessUser();
+        }
+        JSONObject result = new JSONObject();
+        result.put("updateTime", System.currentTimeMillis());
+        result.put("synching", true);
+        return result;
+    }
+
+    @ApiOperation(value = "重新生成状态")
+    @RequestMapping(value = "/reset/status", method = RequestMethod.POST)
+    public Map<String, Object> resetStatus(@RequestParam Long examId, @RequestParam String subjectCode) {
         ExamEntity exam = examService.getById(examId);
         if (exam == null) {
             throw ParameterExceptions.EXAM_NOT_FOUND;
         }
         Map<String, Object> result = new HashMap<String, Object>();
-        result.put("synching",
-        concurrentService.isLocked(LockType.CHECK_ASSIGNED_RESET + "-" + examId));
+        result.put("synching", concurrentService.isLocked(LockType.CHECK_ASSIGNED_RESET + "-" + examId));
         return result;
-     }
+    }
 }

+ 2 - 2
src/main/java/cn/com/qmth/scancentral/dao/StudentDao.java

@@ -53,9 +53,9 @@ public interface StudentDao extends BaseMapper<StudentEntity> {
 
     List<AnswerExportVo> exportList(Page<AnswerQueryVo> page, @Param("query") AnswerQueryDomain query);
 
-    List<StudentUploadVo> findToUpload(@Param("pageSize") Integer pageSize, @Param("schoolId") Long schoolId);
+    List<StudentUploadVo> findToUpload(@Param("pageSize") Integer pageSize);
 
-    List<StudentUploadVo> findUploadError(@Param("pageSize") Integer pageSize, @Param("schoolId") Long schoolId);
+    List<StudentUploadVo> findUploadError(@Param("pageSize") Integer pageSize);
 
     int getPackageCountByExam(@Param("examId") Long examId);
 

+ 0 - 10
src/main/java/cn/com/qmth/scancentral/model/StudentInfo.java

@@ -6,8 +6,6 @@ public class StudentInfo {
 
     private Long examId;
 
-    private Long schoolId;
-
     private String examNumber;
 
     private String name;
@@ -106,14 +104,6 @@ public class StudentInfo {
         this.campusName = campusName;
     }
 
-    public Long getSchoolId() {
-        return schoolId;
-    }
-
-    public void setSchoolId(Long schoolId) {
-        this.schoolId = schoolId;
-    }
-
     public String getPaperType() {
         return paperType;
     }

+ 0 - 79
src/main/java/cn/com/qmth/scancentral/model/UserInfo.java

@@ -1,79 +0,0 @@
-package cn.com.qmth.scancentral.model;
-
-import cn.com.qmth.scancentral.enums.Role;
-
-/**
- * 云阅卷用户
- */
-public class UserInfo {
-
-    private Long id;
-
-    private Long schoolId;
-
-    private String name;
-
-    private String schoolName;
-
-    private Role role;
-
-    private String token;
-
-    private String fileServer;
-
-    public Long getId() {
-        return id;
-    }
-
-    public void setId(Long id) {
-        this.id = id;
-    }
-
-    public Long getSchoolId() {
-        return schoolId;
-    }
-
-    public void setSchoolId(Long schoolId) {
-        this.schoolId = schoolId;
-    }
-
-    public String getName() {
-        return name;
-    }
-
-    public void setName(String name) {
-        this.name = name;
-    }
-
-    public String getSchoolName() {
-        return schoolName;
-    }
-
-    public void setSchoolName(String schoolName) {
-        this.schoolName = schoolName;
-    }
-
-    public Role getRole() {
-        return role;
-    }
-
-    public void setRole(Role role) {
-        this.role = role;
-    }
-
-    public String getToken() {
-        return token;
-    }
-
-    public void setToken(String token) {
-        this.token = token;
-    }
-
-    public String getFileServer() {
-        return fileServer;
-    }
-
-    public void setFileServer(String fileServer) {
-        this.fileServer = fileServer;
-    }
-}

+ 0 - 9
src/main/java/cn/com/qmth/scancentral/service/SessionService.java

@@ -1,8 +1,5 @@
 package cn.com.qmth.scancentral.service;
 
-import java.util.Collection;
-
-import cn.com.qmth.scancentral.bean.SchoolSession;
 import cn.com.qmth.scancentral.bean.User;
 
 public interface SessionService {
@@ -21,12 +18,6 @@ public interface SessionService {
 
     boolean checkScannerOnline(String device);
 
-    void removeSchoolSession(Long schoolId);
-
-    SchoolSession getSchoolSession(Long schoolId);
-
-    Collection<SchoolSession> getSchoolSessions();
-
     int getOnlineScannerCount();
 
     int getOnlineAuditorCount();

+ 2 - 4
src/main/java/cn/com/qmth/scancentral/service/StudentService.java

@@ -82,9 +82,9 @@ public interface StudentService extends IService<StudentEntity> {
 
     List<String> summary(AnswerQueryDomain query);
 
-    List<StudentUploadVo> findToUpload(int pageSize, Long schoolId);
+    List<StudentUploadVo> findToUpload(int pageSize);
 
-    boolean existUploadData(Long schoolId);
+    boolean existUploadData();
 
     List<AbsentQueryVo> absentExportList(AbsentQueryDomain query);
 
@@ -134,8 +134,6 @@ public interface StudentService extends IService<StudentEntity> {
 
     Integer getStudentAnswerCount(Long examId);
 
-    void uploadData(StudentUploadVo vo);
-
     void resetExamStatus(Long examId, Integer examNumberFillCount);
 
     void updateExamStatus(Long id, ExamStatus examStatus);

+ 0 - 7
src/main/java/cn/com/qmth/scancentral/service/UploadService.java

@@ -1,7 +0,0 @@
-package cn.com.qmth.scancentral.service;
-
-public interface UploadService {
-
-    public void upload();
-
-}

+ 7 - 41
src/main/java/cn/com/qmth/scancentral/service/impl/SessionServiceImpl.java

@@ -1,25 +1,22 @@
 package cn.com.qmth.scancentral.service.impl;
 
-import cn.com.qmth.scancentral.bean.SchoolSession;
+import java.util.Date;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
 import cn.com.qmth.scancentral.bean.User;
 import cn.com.qmth.scancentral.config.SysProperty;
 import cn.com.qmth.scancentral.enums.Role;
 import cn.com.qmth.scancentral.service.SessionService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import java.util.Collection;
-import java.util.Date;
-import java.util.Map;
-import java.util.concurrent.ConcurrentHashMap;
 
 @Service
 public class SessionServiceImpl implements SessionService {
 
     private final static Map<String, User> userSessionData = new ConcurrentHashMap<>();
 
-    private final static Map<Long, SchoolSession> schoolSessionData = new ConcurrentHashMap<>();
-
     @Autowired
     private SysProperty sysProperty;
 
@@ -52,37 +49,6 @@ public class SessionServiceImpl implements SessionService {
     @Override
     public void userLogin(User user) {
         updateUserSession(user);
-        // if (SystemMode.MARKINGCLOUD.equals(SystemMode.current())) {
-        // if (Role.SCAN_ADMIN.equals(user.getRole()) ||
-        // Role.SCHOOL_ADMIN.equals(user.getRole())) {
-        // updateSchoolSession(user);
-        // }
-        // }
-    }
-
-    // private void updateSchoolSession(User user) {
-    // SchoolSession s = schoolSessionData.get(user.getSchoolId());
-    // if (s == null) {
-    // schoolSessionData.put(user.getSchoolId(), SchoolSession.of(user));
-    // } else if (Role.SCAN_ADMIN.equals(s.getRole()) ||
-    // Role.SCHOOL_ADMIN.equals(user.getRole())) {
-    // schoolSessionData.put(user.getSchoolId(), SchoolSession.of(user));
-    // }
-    // }
-
-    @Override
-    public void removeSchoolSession(Long schoolId) {
-        schoolSessionData.remove(schoolId);
-    }
-
-    @Override
-    public Collection<SchoolSession> getSchoolSessions() {
-        return schoolSessionData.values();
-    }
-
-    @Override
-    public SchoolSession getSchoolSession(Long schoolId) {
-        return schoolSessionData.get(schoolId);
     }
 
     @Override

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

@@ -1,8 +1,20 @@
 package cn.com.qmth.scancentral.service.impl;
 
-import java.io.*;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.LineNumberReader;
 import java.math.BigDecimal;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.LinkedHashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
 import java.util.stream.Collectors;
 
 import javax.validation.constraints.NotNull;
@@ -31,13 +43,18 @@ 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.StatusException;
-import com.qmth.boot.core.retrofit.utils.SignatureInfo;
 import com.qmth.boot.tools.excel.ExcelReader;
 import com.qmth.boot.tools.excel.enums.ExcelType;
-import com.qmth.boot.tools.signature.SignatureType;
 import com.qmth.boot.tools.uuid.FastUUID;
 
-import cn.com.qmth.scancentral.bean.*;
+import cn.com.qmth.scancentral.bean.AbsentQueryDomain;
+import cn.com.qmth.scancentral.bean.AnswerDeleteDomain;
+import cn.com.qmth.scancentral.bean.AnswerQueryDomain;
+import cn.com.qmth.scancentral.bean.AssignedQueryDomain;
+import cn.com.qmth.scancentral.bean.ImportCetAbsentDomain;
+import cn.com.qmth.scancentral.bean.ImportStudentDomain;
+import cn.com.qmth.scancentral.bean.PageDeleteDomain;
+import cn.com.qmth.scancentral.bean.User;
 import cn.com.qmth.scancentral.bean.answersave.ArrayResult;
 import cn.com.qmth.scancentral.bean.answersave.BoolResult;
 import cn.com.qmth.scancentral.bean.answersave.StringResult;
@@ -49,29 +66,90 @@ import cn.com.qmth.scancentral.bean.refix.PageRefixDomain;
 import cn.com.qmth.scancentral.bean.refix.PaperRefixDomain;
 import cn.com.qmth.scancentral.config.SysProperty;
 import cn.com.qmth.scancentral.dao.StudentDao;
-import cn.com.qmth.scancentral.entity.*;
-import cn.com.qmth.scancentral.enums.*;
+import cn.com.qmth.scancentral.entity.AnswerCardEntity;
+import cn.com.qmth.scancentral.entity.ExamEntity;
+import cn.com.qmth.scancentral.entity.OmrGroupEntity;
+import cn.com.qmth.scancentral.entity.PaperEntity;
+import cn.com.qmth.scancentral.entity.PaperPageEntity;
+import cn.com.qmth.scancentral.entity.QuestionEntity;
+import cn.com.qmth.scancentral.entity.StudentEntity;
+import cn.com.qmth.scancentral.entity.StudentPaperEntity;
+import cn.com.qmth.scancentral.entity.SubjectEntity;
+import cn.com.qmth.scancentral.entity.UserEntity;
+import cn.com.qmth.scancentral.enums.ExamMode;
+import cn.com.qmth.scancentral.enums.ExamStatus;
+import cn.com.qmth.scancentral.enums.ExamStatusCheckMode;
+import cn.com.qmth.scancentral.enums.GroupType;
+import cn.com.qmth.scancentral.enums.ImageCheckStatus;
+import cn.com.qmth.scancentral.enums.LockType;
+import cn.com.qmth.scancentral.enums.OP;
+import cn.com.qmth.scancentral.enums.OmrField;
+import cn.com.qmth.scancentral.enums.Role;
+import cn.com.qmth.scancentral.enums.ScanStatus;
+import cn.com.qmth.scancentral.enums.UploadStatus;
 import cn.com.qmth.scancentral.exception.NotFoundExceptions;
 import cn.com.qmth.scancentral.exception.ParameterExceptions;
 import cn.com.qmth.scancentral.model.ManualAbsentImportDTO;
-import cn.com.qmth.scancentral.service.*;
+import cn.com.qmth.scancentral.service.AnswerCardService;
+import cn.com.qmth.scancentral.service.AnswerCardSubjectService;
+import cn.com.qmth.scancentral.service.AssignedCheckHistoryService;
+import cn.com.qmth.scancentral.service.BatchService;
+import cn.com.qmth.scancentral.service.ExamService;
+import cn.com.qmth.scancentral.service.FileService;
+import cn.com.qmth.scancentral.service.OmrGroupService;
+import cn.com.qmth.scancentral.service.OmrTaskService;
+import cn.com.qmth.scancentral.service.PaperPageService;
+import cn.com.qmth.scancentral.service.PaperService;
+import cn.com.qmth.scancentral.service.QuestionService;
+import cn.com.qmth.scancentral.service.StudentPaperService;
+import cn.com.qmth.scancentral.service.StudentService;
+import cn.com.qmth.scancentral.service.SubjectService;
+import cn.com.qmth.scancentral.service.ToolExportService;
+import cn.com.qmth.scancentral.service.UserService;
 import cn.com.qmth.scancentral.support.TaskLock;
 import cn.com.qmth.scancentral.support.TaskLockUtil;
 import cn.com.qmth.scancentral.util.BatchGetDataUtil;
 import cn.com.qmth.scancentral.util.BatchSetDataUtil;
 import cn.com.qmth.scancentral.util.MD5Util;
 import cn.com.qmth.scancentral.util.PageUtil;
-import cn.com.qmth.scancentral.vo.*;
+import cn.com.qmth.scancentral.vo.AbsentInfoVo;
+import cn.com.qmth.scancentral.vo.AbsentManualImportVo;
+import cn.com.qmth.scancentral.vo.AbsentQueryVo;
+import cn.com.qmth.scancentral.vo.AnswerDeleteVo;
+import cn.com.qmth.scancentral.vo.AnswerExportK12Vo;
+import cn.com.qmth.scancentral.vo.AnswerExportVo;
+import cn.com.qmth.scancentral.vo.AnswerRefixVo;
+import cn.com.qmth.scancentral.vo.CampusVo;
+import cn.com.qmth.scancentral.vo.ExamSiteVo;
+import cn.com.qmth.scancentral.vo.ExportCetMarkingQueryVo;
+import cn.com.qmth.scancentral.vo.ExportCetVo;
+import cn.com.qmth.scancentral.vo.ImportBreachResult;
+import cn.com.qmth.scancentral.vo.ImportResult;
+import cn.com.qmth.scancentral.vo.ImportStudentQueryVo;
+import cn.com.qmth.scancentral.vo.ImportStudentVo;
+import cn.com.qmth.scancentral.vo.PaperDeleteVo;
+import cn.com.qmth.scancentral.vo.ScanAnswerInfoVo;
+import cn.com.qmth.scancentral.vo.StudentUploadVo;
+import cn.com.qmth.scancentral.vo.UpdateTimeVo;
 import cn.com.qmth.scancentral.vo.answerquery.AnswerPageVo;
 import cn.com.qmth.scancentral.vo.answerquery.AnswerPaperVo;
 import cn.com.qmth.scancentral.vo.answerquery.AnswerQueryVo;
 import cn.com.qmth.scancentral.vo.answerquery.StudentPaperVo;
-import cn.com.qmth.scancentral.vo.assginedcheck.*;
+import cn.com.qmth.scancentral.vo.assginedcheck.AssginedTaskResult;
+import cn.com.qmth.scancentral.vo.assginedcheck.AssignedCheckExamRoomExport;
+import cn.com.qmth.scancentral.vo.assginedcheck.AssignedCheckExport;
+import cn.com.qmth.scancentral.vo.assginedcheck.AssignedTaskResultPaper;
+import cn.com.qmth.scancentral.vo.assginedcheck.AssignedTaskSaveVo;
 import cn.com.qmth.scancentral.vo.examroom.ExamRoomScannedQuery;
 import cn.com.qmth.scancentral.vo.examroom.ExamRoomScannedVo;
 import cn.com.qmth.scancentral.vo.paper.PaperCetVo;
 import cn.com.qmth.scancentral.vo.paper.PaperPageCetVo;
-import cn.com.qmth.scancentral.vo.student.*;
+import cn.com.qmth.scancentral.vo.student.StudentAnswerVo;
+import cn.com.qmth.scancentral.vo.student.StudentExamRoomVo;
+import cn.com.qmth.scancentral.vo.student.StudentPageQuery;
+import cn.com.qmth.scancentral.vo.student.StudentPageVo;
+import cn.com.qmth.scancentral.vo.student.StudentQuery;
+import cn.com.qmth.scancentral.vo.student.StudentVo;
 import cn.com.qmth.scancentral.vo.studentimport.StudentCountVo;
 import cn.com.qmth.scancentral.vo.subject.SubjectScanProgressVo;
 import cn.com.qmth.scancentral.vo.task.TaskStatusVo;
@@ -120,9 +198,6 @@ public class StudentServiceImpl extends ServiceImpl<StudentDao, StudentEntity> i
     @Autowired
     private ToolExportService toolExportService;
 
-    @Autowired
-    private SessionService sessionService;
-
     @Autowired
     private AnswerCardSubjectService answerCardSubjectService;
 
@@ -721,19 +796,19 @@ public class StudentServiceImpl extends ServiceImpl<StudentDao, StudentEntity> i
     }
 
     @Override
-    public boolean existUploadData(Long schoolId) {
-        return CollectionUtils.isNotEmpty(baseMapper.findToUpload(1, schoolId))
-                || CollectionUtils.isNotEmpty(baseMapper.findUploadError(1, schoolId));
+    public boolean existUploadData() {
+        return CollectionUtils.isNotEmpty(baseMapper.findToUpload(1))
+                || CollectionUtils.isNotEmpty(baseMapper.findUploadError(1));
     }
 
     @Override
-    public List<StudentUploadVo> findToUpload(int pageSize, Long schoolId) {
+    public List<StudentUploadVo> findToUpload(int pageSize) {
         if (pageSize <= 0) {
             pageSize = 100;
         }
-        List<StudentUploadVo> result = baseMapper.findToUpload(pageSize, schoolId);
+        List<StudentUploadVo> result = baseMapper.findToUpload(pageSize);
         if (CollectionUtils.isEmpty(result)) {
-            result = baseMapper.findUploadError(pageSize, schoolId);
+            result = baseMapper.findUploadError(pageSize);
         }
         return result;
     }
@@ -1506,225 +1581,6 @@ public class StudentServiceImpl extends ServiceImpl<StudentDao, StudentEntity> i
         }
     }
 
-    @Transactional
-    @Override
-    public void uploadData(StudentUploadVo vo) {
-        SchoolSession ss = sessionService.getSchoolSession(vo.getSchoolId());
-        if (ss == null) {
-            return;
-        }
-        // log.info("markingcloud file upload: account={}, token={}",
-        // ss.getAccount(), ss.getMarkingCloudToken());
-        SignatureInfo signatureInfo = new SignatureInfo(SignatureType.TOKEN, ss.getAccount(),
-                ss.getMarkingCloudToken());
-        StudentEntity se = this.getById(vo.getId());
-        if (se == null) {
-            return;
-        }
-        concurrentService.getReadWriteLock(LockType.STUDENT + "-" + vo.getId()).writeLock().lock();
-        try {
-            if (se.getFileUploadStatus() == UploadStatus.WAITING_UPLOAD
-                    || se.getFileUploadStatus() == UploadStatus.ERROR) {
-                log.info("开始上传文件,examId={}, examNumber={}", vo.getExamId(), vo.getExamNumber());
-                try {
-                    uploadFile(signatureInfo, se);
-                    this.updateFileUploadStatus(se.getId(), UploadStatus.UPLOADED);
-                } catch (Exception e) {
-                    log.error("文件上传出错,examId=" + vo.getExamId() + ", examNumber=" + vo.getExamNumber(), e);
-                    this.updateFileUploadStatus(se.getId(), UploadStatus.ERROR);
-                    // 文件上传出错直接返回
-                    return;
-                }
-            }
-            if (se.getDataUploadStatus() == UploadStatus.WAITING_UPLOAD
-                    || se.getDataUploadStatus() == UploadStatus.ERROR) {
-                log.info("开始上传数据,examId={}, examNumber={}", vo.getExamId(), vo.getExamNumber());
-                try {
-                    uploadData(signatureInfo, se);
-                    this.updateDataUploadStatus(se.getId(), UploadStatus.UPLOADED);
-                } catch (Exception e) {
-                    log.error("数据上传出错,examId=" + vo.getExamId() + ", examNumber=" + vo.getExamNumber(), e);
-                    this.updateDataUploadStatus(se.getId(), UploadStatus.ERROR);
-                }
-            }
-        } finally {
-            concurrentService.getReadWriteLock(LockType.STUDENT + "-" + vo.getId()).writeLock().unlock();
-        }
-    }
-
-    private void uploadFile(SignatureInfo signatureInfo, StudentEntity student) throws Exception {
-        // List<StudentPaperEntity> sps =
-        // studentPaperService.findByStudentId(student.getId());
-        // if (CollectionUtils.isEmpty(sps)) {
-        // return;
-        // }
-        // List<String> sheets = new ArrayList<>();
-        // List<String> slices = new ArrayList<>();
-        // for (StudentPaperEntity sp : sps) {
-        // List<PaperPageEntity> pages =
-        // paperPageService.listByPaperId(sp.getPaperId());
-        // if (CollectionUtils.isNotEmpty(sps)) {
-        // for (PaperPageEntity page : pages) {
-        // sheets.add(page.getSheetPath());
-        // if (CollectionUtils.isNotEmpty(page.getSlicePath())) {
-        // slices.addAll(page.getSlicePath());
-        // }
-        // }
-        // }
-        // }
-        // if (CollectionUtils.isNotEmpty(sheets)) {
-        // int index = 0;
-        // for (String s : sheets) {
-        // index++;
-        // FileUploadResponse res = markingcloudApiClient
-        // .sheetFileUpload(signatureInfo, student.getExamId(),
-        // student.getExamNumber(), index,
-        // filePropertyService.getById(s).getMd5(),
-        // UploadFile.build("file", getFileName(s),
-        // IOUtils.toByteArray(fileStore.read(s))));
-        // if (res == null || !res.getSuccess()) {
-        // throw new StatusException(
-        // "sheet上传失败,Success:false.examId=" + student.getExamId() +
-        // ",examNumber=" + student
-        // .getExamNumber());
-        // }
-        // }
-        // }
-        // if (CollectionUtils.isNotEmpty(slices)) {
-        // int index = 0;
-        // for (String s : slices) {
-        // index++;
-        // FileUploadResponse res = markingcloudApiClient
-        // .sliceFileUpload(signatureInfo, student.getExamId(),
-        // student.getExamNumber(), index,
-        // filePropertyService.getById(s).getMd5(),
-        // UploadFile.build("file", getFileName(s),
-        // IOUtils.toByteArray(fileStore.read(s))));
-        // if (res == null || !res.getSuccess()) {
-        // throw new StatusException(
-        // "slice上传失败,Success:false.examId=" + student.getExamId() +
-        // ",examNumber=" + student
-        // .getExamNumber());
-        // }
-        // }
-        // }
-    }
-
-    private void uploadData(SignatureInfo signatureInfo, StudentEntity student) {
-        // ExamEntity exam = examService.getById(student.getExamId());
-        // List<StudentPaperEntity> sps =
-        // studentPaperService.findByStudentId(student.getId());
-        // List<String> sheets = new ArrayList<>();
-        // List<String> slices = new ArrayList<>();
-        // List<PaperPageEntity> pageList = new ArrayList<>();
-        // if (CollectionUtils.isNotEmpty(sps)) {
-        // for (StudentPaperEntity sp : sps) {
-        // List<PaperPageEntity> pages =
-        // paperPageService.listByPaperId(sp.getPaperId());
-        // if (CollectionUtils.isNotEmpty(sps)) {
-        // pageList.addAll(pages);
-        // for (PaperPageEntity page : pages) {
-        // sheets.add(page.getSheetPath());
-        // if (CollectionUtils.isNotEmpty(page.getSlicePath())) {
-        // slices.addAll(page.getSlicePath());
-        // }
-        // }
-        // }
-        // }
-        // }
-        // //未扫描或者没有paper,需要删除考生原有上传状态
-        // if (student.getStatus().equals(ScanStatus.UNEXIST) ||
-        // CollectionUtils.isEmpty(sheets)) {
-        // markingcloudApiClient.studentFileDelete(signatureInfo, exam.getId(),
-        // student.getExamNumber());
-        // }
-        // //有扫描结果,正常上传考生状态
-        // else {
-        // DataUploadDto dto = new DataUploadDto();
-        // dto.setSheetCount(sheets.size());
-        // dto.setSliceCount(slices.size());
-        // dto.setExamNumber(student.getExamNumber());
-        // dto.setManual(student.getAssigned());
-        // dto.setAbsent(student.getOmrAbsent());
-        // dto.setCardNumber(student.getCardNumber());
-        // List<String> answers = new ArrayList<String>();
-        // int pageIndex = 0;
-        // for (PaperPageEntity p : pageList) {
-        // pageIndex++;
-        // if (pageIndex == 1) {
-        // dto.setPaperType(getPaperType(exam.getPaperTypeBarcodeContent(),
-        // p.getPaperType()));
-        // BatchPaperEntity bp =
-        // batchPaperService.findByPaperId(p.getPaperId());
-        // dto.setBatchCode(bp != null ? bp.getBatchId().toString() : "");
-        // }
-        // disposeQuestionMark(p.getQuestion());
-        // if (p.getQuestion() != null &&
-        // CollectionUtils.isNotEmpty(p.getQuestion().getResult())) {
-        // answers.addAll(p.getQuestion().getResult());
-        // }
-        // }
-        // dto.setAnswers(StringUtils.join(answers, ","));
-        // List<DataUploadResponse> res = markingcloudApiClient
-        // .dataUpload(signatureInfo, student.getExamId(),
-        // Collections.singletonList(dto));
-        // if (CollectionUtils.isEmpty(res) ||
-        // StringUtils.isBlank(res.get(0).getExamNumber())) {
-        // throw new StatusException(
-        // "数据上传失败,Success:false.examId=" + student.getExamId() + ",examNumber="
-        // + student
-        // .getExamNumber());
-        // }
-        // }
-    }
-
-    // private String getFileName(String path) {
-    // if (StringUtils.isBlank(path)) {
-    // throw new StatusException("文件路径有误:" + (path == null ? "" : path));
-    // }
-    // return path.substring(path.lastIndexOf("//") + 1);
-    // }
-
-    // private String getPaperType(List<String> list, StringResult sr) {
-    // String pt = sr != null ? sr.getResult() : null;
-    // if (StringUtils.isBlank(pt)) {
-    // return "#";
-    // }
-    // if (OmrType.BARCODE == sr.getType()) {
-    // if (CollectionUtils.isEmpty(list)) {
-    // if (pt.length() > 1) {
-    // return "#";
-    // }
-    // pt = pt.toUpperCase();
-    // int pAscii = (int) pt.charAt(0);
-    // if (pAscii >= 65 && pAscii <= 90) {
-    // return pt;
-    // } else {
-    // return "#";
-    // }
-    // } else {
-    // int index = list.indexOf(pt);
-    // if (index == -1) {
-    // return "#";
-    // }
-    // return String.valueOf((char) (index + 65));
-    // }
-    // } else if (OmrType.FILL_AREA == sr.getType()) {
-    // if (pt.length() > 1) {
-    // return "#";
-    // }
-    // pt = pt.toUpperCase();
-    // int pAscii = (int) pt.charAt(0);
-    // if (pAscii >= 65 && pAscii <= 90) {
-    // return pt;
-    // } else {
-    // return "#";
-    // }
-    // } else {
-    // return "#";
-    // }
-    // }
-
     @Override
     @Transactional
     public void resetExamStatus(Long examId, Integer examNumberFillCount) {

+ 0 - 100
src/main/java/cn/com/qmth/scancentral/service/impl/UploadServiceImpl.java

@@ -1,100 +0,0 @@
-package cn.com.qmth.scancentral.service.impl;
-
-import cn.com.qmth.scancentral.bean.SchoolSession;
-import cn.com.qmth.scancentral.consumer.UploadConsumer;
-import cn.com.qmth.scancentral.service.SessionService;
-import cn.com.qmth.scancentral.service.StudentService;
-import cn.com.qmth.scancentral.service.UploadService;
-import cn.com.qmth.scancentral.support.SpringContextHolder;
-import cn.com.qmth.scancentral.vo.StudentUploadVo;
-import org.apache.commons.collections4.CollectionUtils;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import java.util.Collection;
-import java.util.List;
-import java.util.concurrent.*;
-
-@Service
-public class UploadServiceImpl implements UploadService {
-
-    private static final Logger log = LoggerFactory.getLogger(UploadService.class);
-
-    @Autowired
-    private SessionService sessionService;
-
-    @Autowired
-    private StudentService studentService;
-
-    @Override
-    public void upload() {
-        // if (!SystemMode.MARKINGCLOUD.equals(SystemMode.current())) {
-        // return;
-        // }
-        ExecutorService ex = null;
-        try {
-            Collection<SchoolSession> sss = sessionService.getSchoolSessions();
-            if (CollectionUtils.isEmpty(sss)) {
-                return;
-            }
-            int count = Math.min(5, Runtime.getRuntime().availableProcessors() * 2);
-            ex = getExecutor(count);
-            for (SchoolSession ss : sss) {
-                if (studentService.existUploadData(ss.getId())) {
-                    for (;;) {
-                        List<StudentUploadVo> dtos = findOneBatchData(ss.getId());
-                        if (CollectionUtils.isEmpty(dtos)) {
-                            // 拿不到数据,结束
-                            break;
-                        }
-                        // 开始处理一轮
-                        disposeBatch(ex, dtos);
-                    }
-                }
-            }
-        } catch (Exception e) {
-            log.error("上传任务出错", e);
-        } finally {
-            if (ex != null) {
-                ex.shutdown();
-            }
-        }
-    }
-
-    private void disposeBatch(ExecutorService ex, List<StudentUploadVo> dtos) throws InterruptedException {
-        CountDownLatch endGate = new CountDownLatch(dtos.size());
-        for (StudentUploadVo vo : dtos) {
-            UploadConsumer com = SpringContextHolder.getBean(UploadConsumer.class);
-            com.setVo(vo);
-            com.setEndGate(endGate);
-            ex.execute(com);
-        }
-        endGate.await();
-    }
-
-    private List<StudentUploadVo> findOneBatchData(Long schoolId) {
-        if (sessionService.getSchoolSession(schoolId) == null) {
-            return null;
-        }
-        return studentService.findToUpload(200, schoolId);
-    }
-
-    private ExecutorService getExecutor(int threadCount) {
-        ExecutorService exec = new ThreadPoolExecutor(threadCount, threadCount, 0L, TimeUnit.SECONDS,
-                new LinkedBlockingQueue<>(threadCount * 2), r -> {
-                    Thread t = new Thread(r);
-                    return t;
-                }, (r, executor) -> {
-                    if (!executor.isShutdown()) {
-                        try {
-                            executor.getQueue().put(r);
-                        } catch (InterruptedException e) {
-                            throw new RuntimeException(e);
-                        }
-                    }
-                });
-        return exec;
-    }
-}

+ 0 - 19
src/main/java/cn/com/qmth/scancentral/task/UploadJob.java

@@ -1,19 +0,0 @@
-package cn.com.qmth.scancentral.task;
-
-import cn.com.qmth.scancentral.service.UploadService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.scheduling.annotation.Scheduled;
-import org.springframework.stereotype.Service;
-
-@Service
-public class UploadJob {
-
-    @Autowired
-    private UploadService uploadService;
-
-    @Scheduled(fixedDelay = 20 * 1000, initialDelay = 20 * 1000)
-    public void process() {
-        uploadService.upload();
-    }
-
-}

+ 0 - 10
src/main/java/cn/com/qmth/scancentral/vo/StudentUploadVo.java

@@ -9,8 +9,6 @@ public class StudentUploadVo {
 
     private Long id;
 
-    private Long schoolId;
-
     private Long examId;
 
     private String examNumber;
@@ -203,14 +201,6 @@ public class StudentUploadVo {
         this.dataUploadStatus = dataUploadStatus;
     }
 
-    public Long getSchoolId() {
-        return schoolId;
-    }
-
-    public void setSchoolId(Long schoolId) {
-        this.schoolId = schoolId;
-    }
-
     public ImageTransferMode getImageTransferMode() {
         return imageTransferMode;
     }

+ 3 - 3
src/main/resources/application.properties

@@ -8,11 +8,11 @@ spring.servlet.multipart.max-file-size=100MB
 #
 # ********** db config **********
 #
-db.host=192.168.10.30
+db.host=localhost
 db.port=3306
 db.database=scan_central
-com.qmth.datasource.username=scan_central
-com.qmth.datasource.password=scan_central
+com.qmth.datasource.username=root
+com.qmth.datasource.password=123456
 com.qmth.datasource.url=jdbc:mysql://${db.host}:${db.port}/${db.database}?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=GMT%2b8&rewriteBatchedStatements=true
 #
 # ********** sys config **********

+ 4 - 9
src/main/resources/mapper/StudentMapper.xml

@@ -120,12 +120,10 @@
 
     <select id="findToUpload"
             resultType="cn.com.qmth.scancentral.vo.StudentUploadVo">
-        select t.*,
-               e.school_id
+        select t.*
         from sc_student t
                  inner join sc_exam e on t.exam_id = e.id
-        where e.school_id = #{schoolId}
-          and e.enable_upload = 1
+        where e.enable_upload = 1
           and e.enable = 1
           and (t.file_upload_status = 'WAITING_UPLOAD' or t.data_upload_status =
                                                           'WAITING_UPLOAD')
@@ -134,12 +132,10 @@
 
     <select id="findUploadError"
             resultType="cn.com.qmth.scancentral.vo.StudentUploadVo">
-        select t.*,
-               e.school_id
+        select t.*
         from sc_student t
                  inner join sc_exam e on t.exam_id = e.id
-        where e.school_id = #{schoolId}
-          and e.enable_upload = 1
+        where e.enable_upload = 1
           and e.enable = 1
           and (t.file_upload_status = 'ERROR' or t.data_upload_status = 'ERROR')
             limit #{pageSize}
@@ -243,7 +239,6 @@
     <select id="findToPictureCopy"
             resultType="cn.com.qmth.scancentral.vo.StudentUploadVo">
         select t.*,
-               e.school_id,
                e.image_transfer_mode
         from sc_student t
                  inner join sc_exam e on t.exam_id = e.id