From 4dc8a15cb1f1c7b8a70fce95f3f715b472302a9c Mon Sep 17 00:00:00 2001 From: wangwh <2397901735@qq.com> Date: Fri, 06 Sep 2024 18:20:26 +0800 Subject: [PATCH] 1、联合处置相关接口 2、查询办理结果接口 3、查询档案信息接口 4、修改督办相关接口等 --- dyh-service/dyh-sys/src/main/java/cn/huge/module/file/controller/web/FileInfoWebController.java | 77 +++++++++++++++++++++++++++++++++++--- 1 files changed, 71 insertions(+), 6 deletions(-) diff --git a/dyh-service/dyh-sys/src/main/java/cn/huge/module/file/controller/web/FileInfoWebController.java b/dyh-service/dyh-sys/src/main/java/cn/huge/module/file/controller/web/FileInfoWebController.java index b91f202..8820dc0 100644 --- a/dyh-service/dyh-sys/src/main/java/cn/huge/module/file/controller/web/FileInfoWebController.java +++ b/dyh-service/dyh-sys/src/main/java/cn/huge/module/file/controller/web/FileInfoWebController.java @@ -1,7 +1,7 @@ package cn.huge.module.file.controller.web; import cn.huge.base.common.exception.ClientException; -import cn.huge.module.sys.dto.IdcardOcrResultDTO; +import cn.huge.module.file.domain.dto.IdFileDTO; import cn.huge.module.utils.BaiduOcrUtils; import cn.huge.base.common.utils.ContentTypeUtils; import cn.huge.base.common.utils.ReturnFailUtils; @@ -34,10 +34,8 @@ import java.io.InputStream; import java.io.OutputStream; import java.net.URLEncoder; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; -import java.util.Map; +import java.util.*; +import java.util.stream.Collectors; /** * @title: 附件信息表接口api-web端 @@ -100,7 +98,7 @@ FileInfoBaseDTO fileInfoBaseDTO = new FileInfoBaseDTO(); BeanUtils.copyProperties(fileInfo, fileInfoBaseDTO); - // 如果是身份证,就采用ocr失败 + // 如果是身份证,就调用ocr识别 if (FileOwnerTypeBaseEnum.OWNER_TYPE_202.getIndex().equals(ownerType)){ fileInfoBaseDTO.setIdcardOcrResult(BaiduOcrUtils.ocrIdcard(file.getBytes())); } @@ -185,6 +183,33 @@ } /** + * ocr识别文字 + * @url {ctx}/api/web/fileInfo/recognitionText?ownerId=&ownerType= + * @param request + * @return Object + */ + @PostMapping(value = "/recognitionText") + public Object recognitionText(MultipartHttpServletRequest request){ + try{ + Map<String , Object> result = Maps.newHashMap(); + Iterator<String> itr = request.getFileNames(); + while (itr.hasNext()) { + MultipartFile file = request.getFile(itr.next()); + try{ + Map<String , Object> map = BaiduOcrUtils.ocrText(file.getBytes()); + result.put("ocrResult", map); + }catch (Exception e){ + log.error("Controller接口[FileInfoController.recognitionText]请求异常:"+e, e); + return ReturnFailUtils.getRepInfo("OCR失败!"); + } + } + return ReturnSucUtils.getRepInfo("识别成功", result); + }catch (Exception e){ + return ReturnFailUtils.getRepInfo(e.getMessage()); + } + } + + /** * 查看附件组件-分类查询附件 * @url {ctx}/api/web/fileInfo/listFileByCat * @param mainId 所属业务主体编号 @@ -220,5 +245,45 @@ } } + /** + * 删除附件 + * @url {ctx}/api/web/fileInfo/deleteFileById?id= + * @param id 附件编号 + * @return Object + */ + @GetMapping("/deleteFileById") + public Object deleteFileById(@RequestParam(value = "id") String id) { + try { + service.deleteFileById(id); + return ReturnSucUtils.getRepInfo(); + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(); + } + } + /** + * 根据多个所属编号查询附件并根据先根据ownerId再根据附件类型分组 + * @url {ctx}/api/web/fileInfo/listIdTypeInfo + * @return Object + */ + @PostMapping("/listIdTypeInfo") + public Object listIdTypeInfo(@RequestBody IdFileDTO idFileDTO) { + try { + Map<String, Object> term = new HashMap<>(); + String ownerIds = idFileDTO.getOwnerIdList().stream().map(String:: valueOf).collect(Collectors.joining("','")); + String types = idFileDTO.getTypeList().stream().map(String:: valueOf).collect(Collectors.joining("','")); + if(StringUtils.isNotBlank(ownerIds)){ + ownerIds = "'" + ownerIds + "'"; + } + if(StringUtils.isNotBlank(types)){ + types = "'" + types + "'"; + } + term.put("ownerIds", ownerIds); + term.put("types", types); + term.put("mainId", idFileDTO.getMainId()); + return ReturnSucUtils.getRepInfo(service.listIdTypeInfoByOwnerIdList(term)); + } catch (Exception e) { + return ReturnFailUtils.getRepInfo(); + } + } } -- Gitblit v1.8.0