From 826f20416cf386f9372b374b51f03264d34ec91c Mon Sep 17 00:00:00 2001 From: zhangyuan Date: Thu, 8 Sep 2022 21:38:30 +0800 Subject: [PATCH] =?UTF-8?q?api=E6=8E=A8=E9=80=81tupian=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../elink/esua/epdc/dto/UploadToOssDTO.java | 5 ++ .../epdc/controller/ApiTopicController.java | 14 +++++ .../elink/esua/epdc/service/TopicService.java | 12 ++++ .../epdc/service/impl/TopicServiceImpl.java | 19 ++++++ .../esua/epdc/controller/OssController.java | 62 ++++++++++++++++--- 5 files changed, 102 insertions(+), 10 deletions(-) diff --git a/esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/UploadToOssDTO.java b/esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/UploadToOssDTO.java index 0fc514c07..27f47d76a 100644 --- a/esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/UploadToOssDTO.java +++ b/esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/UploadToOssDTO.java @@ -15,5 +15,10 @@ public class UploadToOssDTO implements Serializable { private String fileName; + /** + * 三大诉求标识 + */ + private String code; + private byte[] fileByte; } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiTopicController.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiTopicController.java index 5ded8ce1a..52e056174 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiTopicController.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiTopicController.java @@ -148,4 +148,18 @@ public class ApiTopicController { public Result uploadImage(@RequestParam("file") MultipartFile file) { return topicService.uploadImage(file); } + + /** + * + * 文件上传 + * + * @params [file] + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author liuchuang + * @since 2019/11/25 10:45 + */ + @PostMapping("upload/{code}") + public Result uploadImageByCode(@RequestParam("file") MultipartFile file, @PathVariable("code") String code) { + return topicService.uploadImageByCode(file, code); + } } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/TopicService.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/TopicService.java index 1ac17170b..5df6fb720 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/TopicService.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/TopicService.java @@ -109,4 +109,16 @@ public interface TopicService { * @since 2019/11/25 10:45 */ Result uploadImage(MultipartFile file); + + /** + * + * 文件上传 + * + * @param file + * @param code + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author liuchuang + * @since 2019/11/25 10:45 + */ + Result uploadImageByCode(MultipartFile file, String code); } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/TopicServiceImpl.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/TopicServiceImpl.java index 232cf137c..77ec26405 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/TopicServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/TopicServiceImpl.java @@ -156,4 +156,23 @@ public class TopicServiceImpl implements TopicService { return new Result().error("上传文件失败"); } + + @Override + public Result uploadImageByCode(MultipartFile file, String code) { + if (null == file) { + return new Result().error("上传文件不能为空"); + } + + try { + UploadToOssDTO uploadToOssDto = new UploadToOssDTO(); + uploadToOssDto.setFileByte(file.getBytes()); + uploadToOssDto.setFileName(file.getOriginalFilename()); + uploadToOssDto.setCode(code); + return ossFeignClient.uploadFile(uploadToOssDto); + } catch (Exception e) { + e.printStackTrace(); + } + + return new Result().error("上传文件失败"); + } } diff --git a/esua-epdc/epdc-module/epdc-oss/epdc-oss-server/src/main/java/com/elink/esua/epdc/controller/OssController.java b/esua-epdc/epdc-module/epdc-oss/epdc-oss-server/src/main/java/com/elink/esua/epdc/controller/OssController.java index d4daf58d9..45d1d385e 100644 --- a/esua-epdc/epdc-module/epdc-oss/epdc-oss-server/src/main/java/com/elink/esua/epdc/controller/OssController.java +++ b/esua-epdc/epdc-module/epdc-oss/epdc-oss-server/src/main/java/com/elink/esua/epdc/controller/OssController.java @@ -166,17 +166,31 @@ public class OssController { @PostMapping("uploadFile") public Result uploadFile(@RequestBody UploadToOssDTO dto) throws Exception { - byte[] fileByte = dto.getFileByte(); - if (null == fileByte || fileByte.length == NumConstant.ZERO) { - return new Result().error(ModuleErrorCode.UPLOAD_FILE_EMPTY); - } - // 图片压缩 - byte[] imgBytes = CompressImgUtils.commpressPicCycle(fileByte, 110, 0.9); - //上传文件 - String extension = FilenameUtils.getExtension(dto.getFileName()); - String url = OssFactory.build().uploadSuffix(imgBytes, extension); + if (StringUtils.isNotBlank(dto.getCode())) { + String name = ItemStateCodeEnum.getValueByCode(dto.getCode()); + + // 图片压缩 + byte[] afterJyBytes = CompressImgUtils.commpressPicCycle(dto.getFileByte(), 1024, 0.5); - return new Result().ok(url); + //上传文件 + String extension = FilenameUtils.getExtension(dto.getFileName()); + String url = OssFactory.build().upload(afterJyBytes, name, extension); + + return new Result().ok(url); + } else { + + byte[] fileByte = dto.getFileByte(); + if (null == fileByte || fileByte.length == NumConstant.ZERO) { + return new Result().error(ModuleErrorCode.UPLOAD_FILE_EMPTY); + } + // 图片压缩 + byte[] imgBytes = CompressImgUtils.commpressPicCycle(fileByte, 110, 0.9); + //上传文件 + String extension = FilenameUtils.getExtension(dto.getFileName()); + String url = OssFactory.build().uploadSuffix(imgBytes, extension); + + return new Result().ok(url); + } } /** @@ -281,4 +295,32 @@ public class OssController { String url = OssFactory.build().upload(afterJyBytes, name, extension); return ossService.afterUpload(url, file.getSize()); } + + /** + * 图片上传并压缩缩略图 + * + * @return void + * @author lpf + * @date 2020/03/27 + */ + @PostMapping("uploadImg/{code}") + @ApiOperation(value = "上传图片") + public Result uploadImgByCode(@RequestParam("file") MultipartFile file, @PathVariable("code") String code) throws Exception { + if (file.isEmpty()) { + return new Result().error(ModuleErrorCode.UPLOAD_FILE_EMPTY); + } + String name = ItemStateCodeEnum.getValueByCode(code); + + // 图片压缩 + byte[] afterJyBytes = CompressImgUtils.commpressPicCycle(file.getBytes(), 1024, 0.5); + + //上传文件 + String extension = FilenameUtils.getExtension(file.getOriginalFilename()); + String url = OssFactory.build().upload(afterJyBytes, name, extension); + UploadImgAllDTO uploadAll = new UploadImgAllDTO(); + uploadAll.setImgUrl(url); + uploadAll.setThumbnail(url); + uploadAll.setFileName(name); + return new Result().ok(uploadAll); + } }