|
|
|
@ -5,6 +5,7 @@ import cn.hutool.core.util.StrUtil;
|
|
|
|
|
import cn.hutool.json.JSONUtil;
|
|
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
|
|
import com.supervision.constant.OcrProcessStatus;
|
|
|
|
|
import com.supervision.minio.domain.MinioFile;
|
|
|
|
|
import com.supervision.minio.service.MinioService;
|
|
|
|
|
import com.supervision.police.domain.FileOcrProcess;
|
|
|
|
@ -65,11 +66,26 @@ public class FileOcrProcessServiceImpl extends ServiceImpl<FileOcrProcessMapper,
|
|
|
|
|
log.info("submitOCR:fileIds为空。提交ocr任务...");
|
|
|
|
|
return new ArrayList<>(1);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Map<String, FileOcrProcess> ocrProcessMap = super.lambdaQuery().in(FileOcrProcess::getFileId, fileIdList).list()
|
|
|
|
|
.stream().collect(
|
|
|
|
|
Collectors.toMap(FileOcrProcess::getFileId, fileOcrProcess -> fileOcrProcess, (k1, k2) -> k1));
|
|
|
|
|
|
|
|
|
|
List<FileOcrProcess> processList = new ArrayList<>();
|
|
|
|
|
for (String fileId : fileIdList) {
|
|
|
|
|
FileOcrProcess fileOcrProcess = new FileOcrProcess(fileId, -1);
|
|
|
|
|
super.save(fileOcrProcess);
|
|
|
|
|
processList.add(fileOcrProcess);
|
|
|
|
|
if (null != ocrProcessMap.get(fileId)){
|
|
|
|
|
// 跳过识别成功的文件
|
|
|
|
|
FileOcrProcess fileOcrProcess = ocrProcessMap.get(fileId);
|
|
|
|
|
if (OcrProcessStatus.isFailCode(fileOcrProcess.getStatus())){
|
|
|
|
|
fileOcrProcess.setStatus(OcrProcessStatus.UNPROCESS.getCode());
|
|
|
|
|
super.updateById(fileOcrProcess);
|
|
|
|
|
processList.add(fileOcrProcess);
|
|
|
|
|
}
|
|
|
|
|
}else {
|
|
|
|
|
FileOcrProcess fileOcrProcess = new FileOcrProcess(fileId, OcrProcessStatus.UNPROCESS.getCode());
|
|
|
|
|
super.save(fileOcrProcess);
|
|
|
|
|
processList.add(fileOcrProcess);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
consumer.accept(processList);
|
|
|
|
@ -154,7 +170,15 @@ public class FileOcrProcessServiceImpl extends ServiceImpl<FileOcrProcessMapper,
|
|
|
|
|
if (CollUtil.isEmpty(fileIdList)){
|
|
|
|
|
return new ArrayList<>(1);
|
|
|
|
|
}
|
|
|
|
|
return super.baseMapper.queryFileList(fileIdList);
|
|
|
|
|
return super.baseMapper.queryFileList(null,fileIdList);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public List<RecordFileDTO> queryFileList(String status, List<String> fileIdList) {
|
|
|
|
|
if (CollUtil.isEmpty(fileIdList)){
|
|
|
|
|
return new ArrayList<>(1);
|
|
|
|
|
}
|
|
|
|
|
return super.baseMapper.queryFileList(status,fileIdList);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|