package cn.com.qmth.scancentral.service; import java.util.List; import cn.com.qmth.scancentral.bean.answersave.AnswerPackageDomain; import cn.com.qmth.scancentral.bean.answersave.AnswerPackageSave; import org.springframework.web.multipart.MultipartFile; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; import com.qmth.boot.core.collection.PageResult; import cn.com.qmth.scancentral.bean.BatchCreateDomain; import cn.com.qmth.scancentral.bean.BatchQueryDomain; import cn.com.qmth.scancentral.bean.User; import cn.com.qmth.scancentral.bean.WorkloadDomain; import cn.com.qmth.scancentral.bean.answersave.AnswerDomain; import cn.com.qmth.scancentral.entity.BatchEntity; import cn.com.qmth.scancentral.enums.BatchStatus; import cn.com.qmth.scancentral.enums.CheckStatus; import cn.com.qmth.scancentral.enums.VerifyStatus; import cn.com.qmth.scancentral.vo.*; import cn.com.qmth.scancentral.vo.batch.*; import cn.com.qmth.scancentral.vo.batchdetail.BatchDetailVo; import cn.com.qmth.scancentral.vo.checkimage.CheckImageSubmitVo; import cn.com.qmth.scancentral.vo.device.DeviceVo; import cn.com.qmth.scancentral.vo.task.TaskStatusVo; import cn.com.qmth.scancentral.vo.verify.VerifyTaskVo; public interface BatchService extends IService { BatchCreateVo batchCreate(BatchCreateDomain domain, User user); int getCountByExamAndSubject(Long examId, String subject); int getVerifyCount(Long examId); SheetUploadVo sheetUpload(Long batchId, String examNumber, Integer paperNumber, Integer pageIndex, MultipartFile multipartFile, String md5); SliceUploadVo sliceUpload(Long batchId, String examNumber, Integer paperNumber, Integer pageIndex, Integer index, MultipartFile multipartFile, String md5); AnswerSaveVo batchSave(AnswerDomain domain, User user); void verify(Long batchId, Boolean comfirm, User user); BatchVerifyVo batchVerify(Long id); BatchFinishVo batchFinish(Long id); void updateScanCount(Long id); void updateAssignedCount(Long id); PageResult batchQuery(BatchQueryDomain query); List batchSummary(BatchQueryDomain query); BatchDetailVo batchDetail(Long id); VerifyTaskVo getVerifyTask(Long examId, User user); boolean applyVerifyTask(BatchEntity t, String user); void releaseVerifyTask(Long examId, String user); void releaseVerifyTask(BatchEntity t); boolean hasAppliedVerifyTask(BatchEntity t, String user); IPage findUnVerify(Long examId, int pageNumber, int pageSize, VerifyStatus status); BatchEntity checkBatchStatus(BatchEntity b); List batchScanner(Long examId); int getValidCountByExam(Long examId); List workload(WorkloadDomain domain); Integer findStudentCountByBatch(Long batchId); BatchEntity findByPaperId(Long paperId); TaskStatusVo getCheckImageStatus(Long examId, User user); VerifyTaskVo getCheckImageTask(Long examId, User user); VerifyTaskVo getHistoryCheckImageTask(Long examId, Long batchId, User user); CheckImageSubmitVo submitCheckImageTask(Long examId, Long batchId, User user); boolean applyCheckImageTask(BatchEntity t, String user); void releaseCheckImageTask(Long examId, User user); void releaseCheckImageTask(BatchEntity t); int getCheckCountByExamId(Long examId, CheckStatus status, User user); IPage findUnCheck(Long examId, int pageNumber, int pageSize, BatchStatus b, CheckStatus status, String order); void batchVerifyCancel(User user, Long examId); void updateBatchCount(); List subjectList(BatchSubjectQuery req); List deviceList(BatchDeviceQuery req); List batchList(BatchQuery req); List studentList(Long batchId); AnswerPackageSave batchPackageSave(AnswerPackageDomain domain, User user); }