From ebad8e0000d1e1751b1e1b910b91292bfd81757d Mon Sep 17 00:00:00 2001 From: Vincent <19330835921@163.com> Date: Thu, 19 Jun 2025 17:01:38 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E8=81=94=E8=B0=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ocr/api/thread/DuplicateTaskRunner.java | 13 +++-- .../ocr/service/impl/TaskServiceImpl.java | 2 +- .../src/main/resources/mapper/TaskMapper.xml | 51 +++++++++++++++++-- 3 files changed, 57 insertions(+), 9 deletions(-) diff --git a/jeecg-module-custom/src/main/java/org/jeecg/module/custom/ocr/api/thread/DuplicateTaskRunner.java b/jeecg-module-custom/src/main/java/org/jeecg/module/custom/ocr/api/thread/DuplicateTaskRunner.java index 423490e..365692b 100644 --- a/jeecg-module-custom/src/main/java/org/jeecg/module/custom/ocr/api/thread/DuplicateTaskRunner.java +++ b/jeecg-module-custom/src/main/java/org/jeecg/module/custom/ocr/api/thread/DuplicateTaskRunner.java @@ -99,7 +99,7 @@ public class DuplicateTaskRunner { // // 调用 OcrPictureService.listPage 查询图片 // List pictures = ocrPictureService.listPage(queryWrapper); - List tasks = taskMapper.selectByAccountNoAndQueryConfig(duplicateTask.getTenantNo(), duplicateTask.getQueryConfig()); + List tasks = taskMapper.selectByAccountNoAndQueryConfig(duplicateTask.getAccountNo(), duplicateTask.getQueryConfig()); if (StringUtils.isNotEmpty(duplicateTask.getTaskNos())) { List taskNos = Arrays.asList(duplicateTask.getTaskNos().split(",")); if (!CollectionUtils.isEmpty(taskNos)) { @@ -111,7 +111,7 @@ public class DuplicateTaskRunner { List historyLists = Lists.newArrayList(); Set pictureIds = Sets.newHashSet(); if (!CollectionUtils.isEmpty(tasks)) { - List taskNoList = tasks.stream().map(Task::getTaskNo).collect(Collectors.toList()); + List taskNoList = tasks.stream().map(Task::getTaskNo).distinct().collect(Collectors.toList()); List pictures = ocrPictureInfoMapper.selectByTaskNos(taskNoList); if (!CollectionUtils.isEmpty(pictures)) { pictures = pictures.stream().filter(item -> queryConfig.getValidateColumn().contains(item.getType())).collect(Collectors.toList()); @@ -193,7 +193,6 @@ public class DuplicateTaskRunner { data.setTenantNo(tenantNo); data.setAccountNo(accountNo); data.setTaskNo(Long.parseLong(taskNo)); - data.setApproveResult(0); // 假设默认通过 data.setApproveRemark("Task completed successfully"); data.setPictureMatchDegree(new BigDecimal(maxSimilarity)); data.setExtendField(null); @@ -214,6 +213,14 @@ public class DuplicateTaskRunner { .collect(Collectors.toList()); data.setPictureRepeatList(pictureRepeatList); + if (CollectionUtils.isEmpty(pictureRepeatList)) { + // 通过 + data.setApproveResult(0); + } else { + // 不通过 + data.setApproveResult(1); + } + // 其他列表暂设为空(需补充逻辑) data.setFalseImgList(Arrays.asList()); data.setBriefRepeatTaskList(Arrays.asList()); diff --git a/jeecg-module-custom/src/main/java/org/jeecg/module/custom/ocr/service/impl/TaskServiceImpl.java b/jeecg-module-custom/src/main/java/org/jeecg/module/custom/ocr/service/impl/TaskServiceImpl.java index 6dfc073..e101d1a 100644 --- a/jeecg-module-custom/src/main/java/org/jeecg/module/custom/ocr/service/impl/TaskServiceImpl.java +++ b/jeecg-module-custom/src/main/java/org/jeecg/module/custom/ocr/service/impl/TaskServiceImpl.java @@ -49,7 +49,7 @@ public class TaskServiceImpl implements TaskService { @Override public Task getById(Long id) { - return this.taskMapper.selectById(id); + return this.taskMapper.selectById(String.valueOf(id)); } @Transactional diff --git a/jeecg-module-custom/src/main/resources/mapper/TaskMapper.xml b/jeecg-module-custom/src/main/resources/mapper/TaskMapper.xml index 64a0adc..24943cf 100644 --- a/jeecg-module-custom/src/main/resources/mapper/TaskMapper.xml +++ b/jeecg-module-custom/src/main/resources/mapper/TaskMapper.xml @@ -34,7 +34,7 @@ submit_time, live_photo, dynamic_fields - + INSERT INTO task ( ) VALUES ( @@ -78,10 +78,13 @@ SELECT * FROM task t WHERE t.account_no = #{accountNo} - AND JSON_EXTRACT(t.dynamic_fields, CONCAT('$.', JSON_UNQUOTE(JSON_EXTRACT(#{queryConfig}, '$.validateTimeColumn')))) BETWEEN - UNIX_TIMESTAMP(STR_TO_DATE(JSON_UNQUOTE(JSON_EXTRACT(#{queryConfig}, '$.startTime')), '%Y-%m-%d %H:%i:%s.%f')) * 1000 - AND - UNIX_TIMESTAMP(STR_TO_DATE(JSON_UNQUOTE(JSON_EXTRACT(#{queryConfig}, '$.endTime')), '%Y-%m-%d %H:%i:%s.%f')) * 1000 + AND UNIX_TIMESTAMP(STR_TO_DATE( + JSON_UNQUOTE(JSON_EXTRACT(t.dynamic_fields, CONCAT('$.', JSON_UNQUOTE(JSON_EXTRACT(#{queryConfig}, '$.validateTimeColumn'))))), + '%Y-%m-%d %H:%i:%s' + )) * 1000 BETWEEN + UNIX_TIMESTAMP(STR_TO_DATE(JSON_UNQUOTE(JSON_EXTRACT(#{queryConfig}, '$.startTime')), '%Y-%m-%d %H:%i:%s')) * 1000 + AND + UNIX_TIMESTAMP(STR_TO_DATE(JSON_UNQUOTE(JSON_EXTRACT(#{queryConfig}, '$.endTime')), '%Y-%m-%d %H:%i:%s')) * 1000 AND EXISTS ( SELECT 1 FROM JSON_TABLE( @@ -92,4 +95,42 @@ AND JSON_LENGTH(JSON_EXTRACT(t.dynamic_fields, CONCAT('$.', jt.col))) > 0 ) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +