diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/ocr/controller/OcrIdentifyController.java b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/ocr/controller/OcrIdentifyController.java index 49f17b0..56a0a78 100644 --- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/ocr/controller/OcrIdentifyController.java +++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/ocr/controller/OcrIdentifyController.java @@ -255,6 +255,34 @@ public class OcrIdentifyController extends JeecgController ocrRuleCheckMap = ocrRuleCheckService.listToMap(null); + Map metadataConfigMap = ocrMetadataConfigService.listToMap(null); + Map taskNameMap = ocrTaskTypeService.listNameToMap(null); + List ocrIdentifyDetailList = null; + ocrIdentifyDetailList = ocrIdentifyDetailService.list(new LambdaQueryWrapper().eq(OcrIdentifyDetail::getIdentifyId, id)); + List identifyDetailList = new ArrayList<>(); + + if ("1".equals(ocrIdentify.getStatus()) &&ocrIdentifyDetailList!=null&&ocrIdentifyDetailList.size()>0) { + //判断明细是否识别成功 + identifyDetailList = ocrIdentifyDetailList.stream().filter(o -> o.getIdentifyId().equals(ocrIdentify.getId())).collect(Collectors.toList()); + if (identifyDetailList.size()>0) { + long errorCount = identifyDetailList.stream().filter(i -> i.getStatus().equals("1")).count(); + //errorCount>0,说明有失败的明细 + ocrIdentify.setTaskResult(errorCount>0?"0":"1"); + }else{ + //失败 + ocrIdentify.setTaskResult("0"); + } + } + OcrRuleCheckVo ocrRuleCheckVo = ocrRuleCheckMap.get(ocrIdentify.getRuleCheck()); + if (ocrRuleCheckVo!=null && StringUtils.isNotBlank(ocrRuleCheckVo.getMetadataConfigId())) { + ocrIdentify.setMetadataConfigId(ocrRuleCheckVo.getMetadataConfigId()); + OcrMetadataConfigVo ocrMetadataConfigVo = metadataConfigMap.get(ocrRuleCheckVo.getMetadataConfigId()); + if (ocrMetadataConfigVo!=null) { + ocrIdentify.setTaskType(ocrMetadataConfigVo.getTaskType()); + ocrIdentify.setTaskType_dictText(taskNameMap.get(ocrMetadataConfigVo.getTaskType())); + } + } return Result.OK(ocrIdentify); }