xiaofei преди 1 година
родител
ревизия
4bd2b9bebd

+ 3 - 2
distributed-print/install/mysql/upgrade/3.3.0.sql

@@ -69,7 +69,7 @@ INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence
 INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `enable`, `default_auth`, `front_display`) VALUES ('941', '仲裁-获取评卷状态', '/api/admin/mark/arbitrate/getStatus', 'URL', '917', '17', 'AUTH', '1', '1', '1');
 INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `enable`, `default_auth`, `front_display`) VALUES ('942', '仲裁-获取配置信息', '/api/admin/mark/arbitrate/getSetting', 'URL', '917', '18', 'AUTH', '1', '1', '1');
 INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `enable`, `default_auth`, `front_display`) VALUES ('943', '仲裁-保存任务', '/api/admin/mark/arbitrate/saveTask', 'URL', '917', '19', 'AUTH', '1', '1', '1');
-INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `related`, `enable`, `default_auth`, `front_display`) VALUES ('944', '查看详情', 'Detail', 'LINK', '917', '6', 'AUTH', '928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,964,965,966,967', '1', '0', '1');
+INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `related`, `enable`, `default_auth`, `front_display`) VALUES ('944', '查看详情', 'Detail', 'LINK', '917', '6', 'AUTH', '928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,964,965,966,967,1008', '1', '0', '1');
 INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `related`, `enable`, `default_auth`, `front_display`) VALUES ('945', '结束评卷', 'Finish', 'LINK', '917', '7', 'AUTH', '927', '1', '0', '1');
 INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `enable`, `default_auth`, `front_display`) VALUES ('946', '成绩检查', 'ScoreCheck', 'MENU', '486', '4', 'AUTH', '1', '0', '1');
 INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `related`, `enable`, `default_auth`, `front_display`) VALUES ('947', '列表', 'List', 'LIST', '946', '1', 'AUTH', '952', '1', '0', '1');
@@ -132,6 +132,7 @@ INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence
 INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `enable`, `default_auth`, `front_display`) VALUES ('1005', '答题卡二次识别', '/api/scan/answer/refix', 'URL', '970', '35', 'AUTH', '1', '1', '1');
 INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`,`related`, `enable`, `default_auth`, `front_display`) VALUES ('1006', '查询条件', 'Condition', 'CONDITION', '970', '1', 'AUTH','971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999,1000,1001,1002,1003,1004,1005,1007', '1', '1', '1');
 INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `enable`, `default_auth`, `front_display`) VALUES ('1007', '未扫描-导出', '/api/scan/student/unexist/export', 'URL', '970', '36', 'AUTH', '1', '1', '1');
+INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `enable`, `default_auth`, `front_display`) VALUES ('1008', '仲裁-评卷历史', '/api/admin/mark/arbitrate/getHistory', 'URL', '917', '20', 'AUTH', '1', '1', '1');
 DELETE FROM `sys_privilege` WHERE (`id` = '392');
 DELETE FROM `sys_privilege` WHERE (`id` = '393');
 DELETE FROM `sys_privilege` WHERE (`id` = '394');
@@ -150,7 +151,7 @@ UPDATE `sys_privilege` SET `related` = '55,327,328' WHERE (`id` = '320');
 INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `enable`, `default_auth`, `front_display`) VALUES ('328', '查询考场下试卷列表', '/api/admin/exam/print/list_exam_detail_course', 'URL', '44', '9', 'AUTH', '1', '1', '1');
 ALTER TABLE `exam_student` ADD COLUMN `required_fields` MEDIUMTEXT NULL COMMENT '基础字段' AFTER `print_card`;
 
-INSERT INTO `sys_config` (`id`, `config_key`, `config_name`, `config_value`, `enable`, `sort`, `create_id`) VALUES ('41', 'package.barcode.position', '签到表条码坐标', '[0,0,0.5,0.5]', '1', '17', '1');
+INSERT INTO `sys_config` (`id`, `config_key`, `config_name`, `config_value`, `enable`, `sort`, `create_id`) VALUES ('41', 'package.barcode.position', '签到表条码坐标', '[0.7,0,0.3,0.1]', '1', '17', '1');
 UPDATE `sys_privilege` SET `url` = '/api/admin/exam/card/find_jpg_file' WHERE (`id` = '672');
 UPDATE `sys_privilege` SET `url` = 'MarkEntrance' WHERE (`id` = '491');
 DELETE FROM `sys_privilege` WHERE (`id` = '488');

+ 14 - 0
distributed-print/src/main/java/com/qmth/distributed/print/api/mark/MarkArbitrateController.java

@@ -118,4 +118,18 @@ public class MarkArbitrateController {
         markArbitrateHistoryService.saveArbitrateTask(markResult);
         return ResultUtil.ok(true);
     }
+
+    /**
+     * 获取单个任务
+     */
+    @ApiOperation(value = "获取单个任务")
+    @RequestMapping(value = "/getHistory", method = RequestMethod.POST)
+    public Result getTask(@ApiParam(value = "考试ID") @RequestParam(required = false) Long examId,
+                          @ApiParam(value = "试卷编号") @RequestParam(required = false) String paperNumber,
+                          @ApiParam(value = "分组号") @RequestParam(required = false) Integer groupNumber,
+                          @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
+                          @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
+        List<Task> taskList = markArbitrateHistoryService.getHistory(examId, paperNumber, groupNumber, pageNumber, pageSize);
+        return ResultUtil.ok(taskList);
+    }
 }

+ 5 - 0
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/mapper/MarkArbitrateHistoryMapper.java

@@ -2,11 +2,14 @@ package com.qmth.teachcloud.mark.mapper;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.qmth.teachcloud.common.enums.mark.MarkArbitrateStatus;
 import com.qmth.teachcloud.mark.dto.mark.manage.MarkArbitrateDto;
 import com.qmth.teachcloud.mark.entity.MarkArbitrateHistory;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.List;
+
 /**
  * <p>
  * 仲裁记录表 Mapper 接口
@@ -20,4 +23,6 @@ public interface MarkArbitrateHistoryMapper extends BaseMapper<MarkArbitrateHist
     IPage<MarkArbitrateDto> pageArbitrate(@Param("page") Page<MarkArbitrateDto> page, @Param("examId") Long examId, @Param("paperNumber") String paperNumber, @Param("groupNumber") Integer groupNumber);
 
     MarkArbitrateHistory getArbitrateWaitingOne(@Param("examId") Long examId, @Param("paperNumber") String paperNumber, @Param("groupNumber") Integer groupNumber);
+
+    List<MarkArbitrateHistory> getHistory(@Param("page") Page<MarkArbitrateHistory> page, @Param("examId") Long examId, @Param("paperNumber") String paperNumber, @Param("groupNumber") Integer groupNumber, @Param("status") String status, @Param("userId") Long userId);
 }

+ 2 - 0
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/MarkArbitrateHistoryService.java

@@ -39,4 +39,6 @@ public interface MarkArbitrateHistoryService extends IService<MarkArbitrateHisto
     void deleteByExamIdAndPaperNumberAndGroupNumber(Long examId, String paperNumber, Integer groupNumber);
 
     JSONObject getArbitrateStatus(Long examId, String paperNumber, Integer groupNumber);
+
+    List<Task> getHistory(Long examId, String paperNumber, Integer groupNumber, Integer pageNumber, Integer pageSize);
 }

+ 15 - 0
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/impl/MarkArbitrateHistoryServiceImpl.java

@@ -230,6 +230,21 @@ public class MarkArbitrateHistoryServiceImpl extends ServiceImpl<MarkArbitrateHi
         return jsonObject;
     }
 
+    @Override
+    public List<Task> getHistory(Long examId, String paperNumber, Integer groupNumber, Integer pageNumber, Integer pageSize) {
+        Long userId = ServletUtil.getRequestUserId();
+        Page<MarkArbitrateHistory> page = new Page<>(pageNumber, pageSize);
+        List<MarkArbitrateHistory> markArbitrateHistoryList = this.baseMapper.getHistory(page, examId, paperNumber, groupNumber, MarkArbitrateStatus.MARKED.name(), userId);
+        List<Task> taskList = new ArrayList<>();
+        MarkGroup markGroup = markGroupService.getByExamIdAndPaperNumberAndGroupNumber(examId, paperNumber, groupNumber);
+        for (MarkArbitrateHistory history : markArbitrateHistoryList) {
+            Task task = taskService.build(history, markGroup);
+            task.setPrevious(true);
+            taskList.add(task);
+        }
+        return taskList;
+    }
+
     private void releaseTask(Long taskId) {
         synchronized (currentTaskMap) {
             currentTaskMap.remove(taskId);

+ 8 - 9
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/impl/MarkFileServiceImpl.java

@@ -90,13 +90,12 @@ public class MarkFileServiceImpl implements MarkFileService {
         return UploadFileEnum.SHEET.getPath(UploadFileEnum.SHEET.getTitle(), examId, coursePaperId, studentCode, paperNumber, pageIndex, FormatType.JPG.name().toLowerCase());
     }
 
-	@Override
-	public String uploadPackage(InputStream in, String md5, Long examId,String coursePaperId, String packageCode,
-			Integer packageNo) {
-		String path = getPackageUri(examId,coursePaperId, packageCode, packageNo);
+    @Override
+    public String uploadPackage(InputStream in, String md5, Long examId, String coursePaperId, String packageCode,
+                                Integer packageNo) {
+        String path = getPackageUri(examId, coursePaperId, packageCode, packageNo);
         try {
-            path = fileStoreUtils.uploadFile(in, md5, UploadFileEnum.SHEET, path);
-            return fileStoreUtils.filePreview(path);
+            return fileStoreUtils.uploadFile(in, md5, UploadFileEnum.SHEET, path);
         } catch (RuntimeException e) {
             throw e;
         } catch (Exception e) {
@@ -109,10 +108,10 @@ public class MarkFileServiceImpl implements MarkFileService {
                 }
             }
         }
-	}
-	
+    }
+
     @Override
-    public String getPackageUri(Long examId, String coursePaperId,String packageCode, Integer packageNo) {
+    public String getPackageUri(Long examId, String coursePaperId, String packageCode, Integer packageNo) {
         return UploadFileEnum.PACKAGE.getPath(UploadFileEnum.PACKAGE.getTitle(), examId, coursePaperId, packageCode, packageNo, FormatType.JPG.name().toLowerCase());
     }
 }

+ 11 - 0
teachcloud-mark/src/main/resources/mapper/MarkArbitrateHistoryMapper.xml

@@ -53,5 +53,16 @@
             ORDER BY id
             LIMIT 1
     </select>
+    <select id="getHistory" resultType="com.qmth.teachcloud.mark.entity.MarkArbitrateHistory">
+        SELECT
+            *
+        FROM
+            mark_arbitrate_history t
+        WHERE
+            t.exam_id = #{examId} AND t.paper_number = #{paperNumber}
+          AND t.group_number = #{groupNumber}
+          AND t.status = #{status}
+        ORDER BY t.update_time DESC
+    </select>
 
 </mapper>