From 7e21e82b39520e2d850e529172f09e5512525529 Mon Sep 17 00:00:00 2001 From: liyawei Date: Thu, 3 Mar 2022 11:57:31 +0800 Subject: [PATCH] =?UTF-8?q?OCR=E8=AF=86=E5=88=AB-=E5=90=8C=E6=AD=A5?= =?UTF-8?q?=E6=96=87=E6=A1=A3=E5=BA=93=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ocr/controller/OcrRecordEOController.java | 89 +++++++++++++++---- .../src/main/resources/application-dev.yml | 23 +++++ 2 files changed, 93 insertions(+), 19 deletions(-) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ocr/controller/OcrRecordEOController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ocr/controller/OcrRecordEOController.java index 65006aa5f..179d1b29d 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ocr/controller/OcrRecordEOController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/ocr/controller/OcrRecordEOController.java @@ -1,39 +1,37 @@ package com.jero.modules.ocr.controller; -import java.util.Arrays; -import java.util.List; -import java.util.Map; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.common.api.vo.Result; +import com.jero.common.aspect.annotation.AutoLog; +import com.jero.common.system.base.controller.JeroController; import com.jero.modules.document.entity.BussDocumentLibraryEO; import com.jero.modules.document.service.IBussDocumentLibraryEOService; import com.jero.modules.ocr.entity.OcrRecordEO; +import com.jero.modules.ocr.enums.FileSyncStateEnum; import com.jero.modules.ocr.enums.FileTypeEnum; -import com.jero.modules.ocr.enums.ResultContentEnum; import com.jero.modules.ocr.page.OcrRecordEOPage; import com.jero.modules.ocr.service.IOcrRecordEOService; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.modules.oss.entity.OSSFile; import com.jero.modules.oss.service.IOSSFileService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; -import com.jero.common.system.base.controller.JeroController; import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import org.springframework.web.servlet.ModelAndView; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import com.jero.common.aspect.annotation.AutoLog; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.util.*; - /** +/** * @Description: OCR识别转换记录表 * @Author: jero-boot * @Date: 2022-02-16 @@ -104,18 +102,71 @@ public class OcrRecordEOController extends JeroController ossFileLambdaQueryWrapper = new LambdaQueryWrapper<>(); + ossFileLambdaQueryWrapper.eq(OSSFile :: getUrl, ocrRecordEO.getDocName()); + List ossFiles = ossFileService.list(ossFileLambdaQueryWrapper); + if(CollectionUtil.isEmpty(ossFiles)){ + return Result.error("没有可同步的文档"); + } + String docFileId = ossFiles.get(0).getId(); + ossFile.setId(docFileId); //设置doc文件的关联id if (FileTypeEnum.RELEASE_DRAFT.getValue().equals(ocrRecordEO.getFileType())){ - ossFile.setConnectId(bussDocumentLibraryEOList.get(0).getReleaseDraft()); + String connectId = bussDocumentLibraryEOList.get(0).getReleaseDraft(); + if(StringUtils.isBlank(connectId)){ + connectId = UUID.randomUUID().toString().replace("-",""); + //修改文档库相关字段 + BussDocumentLibraryEO bussDocumentLibraryEO = new BussDocumentLibraryEO(); + bussDocumentLibraryEO.setId(bussDocumentLibraryEOList.get(0).getId()); + bussDocumentLibraryEO.setReleaseDraft(connectId); + bussDocumentLibraryEOService.updateById(bussDocumentLibraryEO); + } + ossFile.setConnectId(connectId); + }else if (FileTypeEnum.SUPPLEMENT.getValue().equals(ocrRecordEO.getFileType())){ - ossFile.setConnectId(bussDocumentLibraryEOList.get(0).getSupplement()); + String connectId = bussDocumentLibraryEOList.get(0).getSupplement(); + if(StringUtils.isBlank(connectId)){ + connectId = UUID.randomUUID().toString().replace("-",""); + //修改文档库相关字段 + BussDocumentLibraryEO bussDocumentLibraryEO = new BussDocumentLibraryEO(); + bussDocumentLibraryEO.setId(bussDocumentLibraryEOList.get(0).getId()); + bussDocumentLibraryEO.setSupplement(connectId); + bussDocumentLibraryEOService.updateById(bussDocumentLibraryEO); + } + ossFile.setConnectId(connectId); + }else if (FileTypeEnum.APPROVAL_DRAFT.getValue().equals(ocrRecordEO.getFileType())){ - ossFile.setConnectId(bussDocumentLibraryEOList.get(0).getApprovalDraft()); + String connectId = bussDocumentLibraryEOList.get(0).getApprovalDraft(); + if(StringUtils.isBlank(connectId)){ + connectId = UUID.randomUUID().toString().replace("-",""); + //修改文档库相关字段 + BussDocumentLibraryEO bussDocumentLibraryEO = new BussDocumentLibraryEO(); + bussDocumentLibraryEO.setId(bussDocumentLibraryEOList.get(0).getId()); + bussDocumentLibraryEO.setApprovalDraft(connectId); + bussDocumentLibraryEOService.updateById(bussDocumentLibraryEO); + } + ossFile.setConnectId(connectId); + }else if (FileTypeEnum.EXPOSURE_DRAFT.getValue().equals(ocrRecordEO.getFileType())){ - ossFile.setConnectId(bussDocumentLibraryEOList.get(0).getExposureDraft()); + String connectId = bussDocumentLibraryEOList.get(0).getExposureDraft(); + if(StringUtils.isBlank(connectId)){ + connectId = UUID.randomUUID().toString().replace("-",""); + //修改文档库相关字段 + BussDocumentLibraryEO bussDocumentLibraryEO = new BussDocumentLibraryEO(); + bussDocumentLibraryEO.setId(bussDocumentLibraryEOList.get(0).getId()); + bussDocumentLibraryEO.setExposureDraft(connectId); + bussDocumentLibraryEOService.updateById(bussDocumentLibraryEO); + } + ossFile.setConnectId(connectId); + } - ossFile.setId(ocrRecordEO.getAttId()); boolean updateResult = ossFileService.updateById(ossFile); + //修改记录表的同步情况 + OcrRecordEO updateOcrRecordEO = new OcrRecordEO(); + updateOcrRecordEO.setId(ocrRecordEO.getId()); + updateOcrRecordEO.setSyncState(FileSyncStateEnum.SYNC_YES.getValue()); + ocrRecordService.editById(updateOcrRecordEO); if(updateResult){ return Result.OK("同步成功", ossFile); }else{ diff --git a/jero-boot/jero-boot-single-startup/src/main/resources/application-dev.yml b/jero-boot/jero-boot-single-startup/src/main/resources/application-dev.yml index 4ff953ac6..49b8f414a 100644 --- a/jero-boot/jero-boot-single-startup/src/main/resources/application-dev.yml +++ b/jero-boot/jero-boot-single-startup/src/main/resources/application-dev.yml @@ -316,6 +316,29 @@ OCR: times: 20 # OCR转换类型 convertType: BOTH +## 这个IFeignService是加了@FeignClient注解的类 +local-tool: + ribbon: + ## 服务提供者的地址,不是服务注册中心的地址 + listOfServers: http://139.9.235.66:9022 + +## 这个要有,如果不加,只加了上面也没用 +ribbon: + eureka: + enabled: false + #ribbon的超时时间 + ReadTimeout: 60000 + ConnectTimeout: 60000 +#hystrix的超时时间 +hystrix: + command: + default: + execution: + timeout: + enabled: true + isolation: + thread: + timeoutInMilliseconds: 60000 ## eureka注册中心 eureka: client: