From c8d79abfc012de3d5cd6749866067b04613276c8 Mon Sep 17 00:00:00 2001 From: liyj <1003249715@qq.com> Date: Mon, 02 Sep 2024 19:50:36 +0800 Subject: [PATCH] 1、新增sys服务删除附件接口 --- dyh-service/dyh-sys/src/main/java/cn/huge/module/file/service/FileInfoService.java | 21 ++++++++++ dyh-service/dyh-sys/src/main/java/cn/huge/module/file/controller/wechat/FileInfoWechatController.java | 23 +++++++++++ dyh-service/dyh-sys/src/main/java/cn/huge/module/file/controller/web/FileInfoWebController.java | 18 ++++++++ 3 files changed, 61 insertions(+), 1 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..463a767 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 @@ -100,7 +100,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())); } @@ -220,5 +220,21 @@ } } + /** + * 删除附件 + * @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(); + } + } + } diff --git a/dyh-service/dyh-sys/src/main/java/cn/huge/module/file/controller/wechat/FileInfoWechatController.java b/dyh-service/dyh-sys/src/main/java/cn/huge/module/file/controller/wechat/FileInfoWechatController.java index 168fbcc..6967199 100644 --- a/dyh-service/dyh-sys/src/main/java/cn/huge/module/file/controller/wechat/FileInfoWechatController.java +++ b/dyh-service/dyh-sys/src/main/java/cn/huge/module/file/controller/wechat/FileInfoWechatController.java @@ -18,6 +18,7 @@ import cn.huge.module.sys.constant.FileBaseConsts; import cn.huge.module.sys.constant.FileOwnerTypeBaseEnum; import cn.huge.module.sys.dto.FileInfoBaseDTO; +import cn.huge.module.utils.BaiduOcrUtils; import lombok.extern.slf4j.Slf4j; import org.apache.commons.io.IOUtils; import org.apache.commons.lang3.StringUtils; @@ -96,6 +97,12 @@ FileInfo fileInfo = service.wechatUploadFile(file, mainId, ownerId, ownerType, fileCount, uploaderDTO); FileInfoBaseDTO fileInfoBaseDTO = new FileInfoBaseDTO(); BeanUtils.copyProperties(fileInfo, fileInfoBaseDTO); + + // 如果是身份证,就调用ocr识别 + if (FileOwnerTypeBaseEnum.OWNER_TYPE_202.getIndex().equals(ownerType)){ + fileInfoBaseDTO.setIdcardOcrResult(BaiduOcrUtils.ocrIdcard(file.getBytes())); + } + files.add(fileInfoBaseDTO); fileCount++; } else { @@ -175,6 +182,22 @@ } } + /** + * 删除附件 + * @url {ctx}/api/wechat/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(); + } + } + diff --git a/dyh-service/dyh-sys/src/main/java/cn/huge/module/file/service/FileInfoService.java b/dyh-service/dyh-sys/src/main/java/cn/huge/module/file/service/FileInfoService.java index 52b7bc8..659a334 100644 --- a/dyh-service/dyh-sys/src/main/java/cn/huge/module/file/service/FileInfoService.java +++ b/dyh-service/dyh-sys/src/main/java/cn/huge/module/file/service/FileInfoService.java @@ -11,9 +11,11 @@ import cn.huge.module.file.domain.dto.FileForCatListDTO; import cn.huge.module.file.domain.dto.UploaderDTO; import cn.huge.module.file.domain.po.FileInfo; +import cn.huge.module.file.domain.po.FileRelate; import cn.huge.module.file.utils.FtpUtils; import cn.huge.module.file.utils.FtpMultipartFileWrapper; import cn.huge.module.sys.constant.FileOwnerTypeBaseEnum; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -252,4 +254,23 @@ return fileForCatListDTOList; } + /** + * 根据编号删除附件 + * @param id 附件编号 + */ + public void deleteFileById(String id) { + try{ + // 删除关系表 + QueryWrapper<FileRelate> fileRelateQueryWrapper = new QueryWrapper<>(); + fileRelateQueryWrapper.eq("file_id", id); + fileRelateService.remove(fileRelateQueryWrapper); + // 删除附件信息表 + mapper.deleteById(id); + // 删除ftp文件 + }catch (Exception e){ + log.error("service方法[FileInfoService.deleteFileById]调用失败,异常信息:"+e, e); + throw new ServiceException("FileInfoService.deleteFileById", e); + } + } + } -- Gitblit v1.8.0