|
|
@ -1,8 +1,11 @@
|
|
|
|
package com.docus.server.service.handler;
|
|
|
|
package com.docus.server.service.handler;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import cn.hutool.json.JSONUtil;
|
|
|
|
import com.docus.core.util.Func;
|
|
|
|
import com.docus.core.util.Func;
|
|
|
|
import com.docus.log.annotation.TrackRetryListener;
|
|
|
|
import com.docus.log.annotation.TrackRetryListener;
|
|
|
|
import com.docus.server.api.ocr.OcrApi;
|
|
|
|
import com.docus.server.api.ocr.OcrApi;
|
|
|
|
|
|
|
|
import com.docus.server.dto.segmentation.FileDTO;
|
|
|
|
|
|
|
|
import com.docus.server.dto.segmentation.UploadBatchFileRequest;
|
|
|
|
import com.docus.server.entity.segmentation.*;
|
|
|
|
import com.docus.server.entity.segmentation.*;
|
|
|
|
import com.docus.server.enums.OcrStatusEnum;
|
|
|
|
import com.docus.server.enums.OcrStatusEnum;
|
|
|
|
import com.docus.server.infrastructure.dao.IOcrBasicDao;
|
|
|
|
import com.docus.server.infrastructure.dao.IOcrBasicDao;
|
|
|
@ -15,6 +18,8 @@ import com.docus.server.service.impl.PlatformServiceImpl;
|
|
|
|
import org.springframework.stereotype.Component;
|
|
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
|
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
import javax.annotation.Resource;
|
|
|
|
|
|
|
|
import java.io.File;
|
|
|
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
import java.util.Date;
|
|
|
|
import java.util.Date;
|
|
|
|
import java.util.List;
|
|
|
|
import java.util.List;
|
|
|
|
import java.util.stream.Collectors;
|
|
|
|
import java.util.stream.Collectors;
|
|
|
@ -59,6 +64,9 @@ public class StartSegmentHandler {
|
|
|
|
List<OcrBasic> ocrBasicList = iOcrBasicDao.findBy("patientId",patientId);
|
|
|
|
List<OcrBasic> ocrBasicList = iOcrBasicDao.findBy("patientId",patientId);
|
|
|
|
String url = iOcrUrlConfigDao.findBy("version",version).get(0).getUrl();
|
|
|
|
String url = iOcrUrlConfigDao.findBy("version",version).get(0).getUrl();
|
|
|
|
List<OcrFileInfo> fileInfoList = iOcrFileInfoDao.findBy("patientId",patientId);
|
|
|
|
List<OcrFileInfo> fileInfoList = iOcrFileInfoDao.findBy("patientId",patientId);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
List<File> files = new ArrayList<>(fileInfoList.size());
|
|
|
|
|
|
|
|
List<FileDTO> fileDTOList = new ArrayList<>(fileInfoList.size());
|
|
|
|
for (OcrFileInfo fileInfo:fileInfoList) {
|
|
|
|
for (OcrFileInfo fileInfo:fileInfoList) {
|
|
|
|
|
|
|
|
|
|
|
|
//遍历文件列表 获取ocr识别结果
|
|
|
|
//遍历文件列表 获取ocr识别结果
|
|
|
@ -103,6 +111,18 @@ public class StartSegmentHandler {
|
|
|
|
fileInfo.setHitKey(ocrRuleResult.getHitKey());
|
|
|
|
fileInfo.setHitKey(ocrRuleResult.getHitKey());
|
|
|
|
fileInfo.setRate(ocrRuleResult.getRate());
|
|
|
|
fileInfo.setRate(ocrRuleResult.getRate());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
File file = new File(fileInfo.getPicUrl());
|
|
|
|
|
|
|
|
files.add(file);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
FileDTO fileDTO = new FileDTO();
|
|
|
|
|
|
|
|
fileDTO.setAssortId(fileInfo.getAssortId());
|
|
|
|
|
|
|
|
fileDTO.setFileTitle(fileInfo.getFileTitle());
|
|
|
|
|
|
|
|
fileDTO.setSort(fileInfo.getSort());
|
|
|
|
|
|
|
|
fileDTO.setUploadFileName(fileInfo.getPicName());
|
|
|
|
|
|
|
|
fileDTO.setSerialNumber(fileInfo.getSerialNumber());
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
fileDTOList.add(null);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
//更新数据库表
|
|
|
|
//更新数据库表
|
|
|
|
List<OcrBasic> collect = ocrBasicList.stream().peek(p -> {
|
|
|
|
List<OcrBasic> collect = ocrBasicList.stream().peek(p -> {
|
|
|
@ -114,6 +134,15 @@ public class StartSegmentHandler {
|
|
|
|
iOcrFileInfoDao.updateBatchById(fileInfoList,iOcrFileInfoDao.DEFAULT_BATCH_SIZE);
|
|
|
|
iOcrFileInfoDao.updateBatchById(fileInfoList,iOcrFileInfoDao.DEFAULT_BATCH_SIZE);
|
|
|
|
|
|
|
|
|
|
|
|
//数据上传到3.0
|
|
|
|
//数据上传到3.0
|
|
|
|
platformService.uploadPlatform(null, null);
|
|
|
|
OcrBasic ocrBasic =ocrBasicList.get(0);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
UploadBatchFileRequest request = new UploadBatchFileRequest();
|
|
|
|
|
|
|
|
request.setInpatientNo(ocrBasic.getInpatientNo());
|
|
|
|
|
|
|
|
request.setPatientId(patientId);
|
|
|
|
|
|
|
|
request.setName(ocrBasic.getName());
|
|
|
|
|
|
|
|
request.setTestData(0);
|
|
|
|
|
|
|
|
request.setFileInfo(JSONUtil.toJsonStr(fileDTOList));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
platformService.uploadPlatform(files, null);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|