fix: 联调

feature/task-zhanglin
Vincent 2 days ago
parent 7e59cc1b98
commit ebad8e0000

@ -99,7 +99,7 @@ public class DuplicateTaskRunner {
// // 调用 OcrPictureService.listPage 查询图片
// List<OcrPicture> pictures = ocrPictureService.listPage(queryWrapper);
List<Task> tasks = taskMapper.selectByAccountNoAndQueryConfig(duplicateTask.getTenantNo(), duplicateTask.getQueryConfig());
List<Task> tasks = taskMapper.selectByAccountNoAndQueryConfig(duplicateTask.getAccountNo(), duplicateTask.getQueryConfig());
if (StringUtils.isNotEmpty(duplicateTask.getTaskNos())) {
List<String> taskNos = Arrays.asList(duplicateTask.getTaskNos().split(","));
if (!CollectionUtils.isEmpty(taskNos)) {
@ -111,7 +111,7 @@ public class DuplicateTaskRunner {
List<TaskCompletionRequest.HisPictureRepeat> historyLists = Lists.newArrayList();
Set<Long> pictureIds = Sets.newHashSet();
if (!CollectionUtils.isEmpty(tasks)) {
List<Long> taskNoList = tasks.stream().map(Task::getTaskNo).collect(Collectors.toList());
List<Long> taskNoList = tasks.stream().map(Task::getTaskNo).distinct().collect(Collectors.toList());
List<OcrPictureInfo> 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());

@ -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

@ -34,7 +34,7 @@
submit_time, live_photo, dynamic_fields
</sql>
<insert id="save" parameterType="org.jeecg.module.custom.ocr.dataobject.Task">
<insert id="save" parameterType="org.jeecg.module.custom.ocr.dataobject.Task" useGeneratedKeys="true" keyProperty="id">
INSERT INTO task (
<include refid="Base_Column_List" />
) 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
)
</select>
<!-- <select id="selectByAccountNoAndQueryConfig" resultType="org.jeecg.module.custom.ocr.dataobject.Task">-->
<!-- 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 EXISTS (-->
<!-- SELECT 1-->
<!-- FROM JSON_TABLE(-->
<!-- JSON_EXTRACT(#{queryConfig}, '$.validateColumn'),-->
<!-- '$[*]' COLUMNS (col VARCHAR(255) PATH '$')-->
<!-- ) AS jt-->
<!-- WHERE JSON_EXTRACT(t.dynamic_fields, CONCAT('$.', jt.col)) IS NOT NULL-->
<!-- AND JSON_LENGTH(JSON_EXTRACT(t.dynamic_fields, CONCAT('$.', jt.col))) > 0-->
<!-- )-->
<!-- </select>-->
<!-- <select id="selectByAccountNoAndQueryConfig" resultType="org.jeecg.module.custom.ocr.dataobject.Task">-->
<!-- 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 EXISTS (-->
<!-- SELECT 1-->
<!-- FROM JSON_TABLE(-->
<!-- JSON_EXTRACT(#{queryConfig}, '$.validateColumn'),-->
<!-- '$[*]' COLUMNS (col VARCHAR(255) PATH '$')-->
<!-- ) AS jt-->
<!-- WHERE JSON_EXTRACT(t.dynamic_fields, CONCAT('$.', jt.col)) IS NOT NULL-->
<!-- AND JSON_LENGTH(JSON_EXTRACT(t.dynamic_fields, CONCAT('$.', jt.col))) > 0-->
<!-- )-->
<!-- </select>-->
</mapper>

Loading…
Cancel
Save