From 6e3ec594f15cc54272fcea53b544d48638dc8d30 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Tue, 19 Sep 2023 12:39:31 +0800 Subject: [PATCH] bannner --- src/main/java/cc/mrbird/febs/mall/controller/AdminMallGoodsController.java | 115 +++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 87 insertions(+), 28 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallGoodsController.java b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallGoodsController.java index fff94ad..fa61156 100644 --- a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallGoodsController.java +++ b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallGoodsController.java @@ -12,6 +12,7 @@ import cc.mrbird.febs.mall.mapper.DataDictionaryCustomMapper; import cc.mrbird.febs.mall.service.IAdminMallGoodsService; import cc.mrbird.febs.mall.vo.*; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.StrUtil; import lombok.RequiredArgsConstructor; @@ -42,6 +43,63 @@ private final IAdminMallGoodsService adminMallGoodsService; private final DataDictionaryCustomMapper dataDictionaryCustomMapper; +// /** +// * 图片上传 +// * @return +// */ +// @PostMapping(value = "/uploadFileBase64") +// @ControllerEndpoint(operation = "图片上传", exceptionMessage = "上传失败") +// public Map<String,Object> uploadFileBase64(@RequestBody @Validated MultipartFile file) { +// if (file.isEmpty()) { +// new FebsResponse().message("上传文件为空"); +// } +// +// String base64EncoderImg = ""; +// try { +// //输出到BufferedImage +// BufferedImage bufferedImage = Thumbnails.of(file.getInputStream()) +// // 图片大小(长宽)压缩比例 从0-1,1表示原图 +// .scale(1f) +// // 图片质量压缩比例 从0-1,越接近1质量越好 +// .outputQuality(0.5f) +// .asBufferedImage(); +// //对内存中的图片文件进行Base64处理 +// ByteArrayOutputStream newBaos = new ByteArrayOutputStream();//io流 +// ImageIO.write(bufferedImage, "jpg", newBaos);//写入流中 +// byte[] bytes = newBaos.toByteArray();//转换成字节 +// base64EncoderImg = new BASE64Encoder().encode(bytes); +//// base64EncoderImg = URLEncoder.encode(new BASE64Encoder().encode(bytes), "UTF-8"); +// } catch (Exception e) { +// e.printStackTrace(); +// } +// +// +// //文件加密 +//// BASE64Encoder base64Encoder =new BASE64Encoder(); +//// try { +//// base64EncoderImg = base64Encoder.encode(file.getBytes()); +//// } catch (IOException e) { +//// e.printStackTrace(); +//// } +// +// String imageFuffix = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); +//// String imageFuffix = ".png"; +// String imageNames = System.currentTimeMillis() + IdUtil.simpleUUID() + imageFuffix; +// String imageName = "uploadeFile/" + imageNames; +// OssUtils.uploadFileWithBase64(base64EncoderImg, imageName); +// String bucket_name ="https://excoin.oss-cn-hangzhou.aliyuncs.com"; +// String url = bucket_name + "/" + imageName; +// +// Map<String,Object> map = new HashMap<String,Object>(); +// Map<String,Object> map2 = new HashMap<String,Object>(); +// map.put("code",0);//0表示成功,1失败 +// map.put("msg","上传成功");//提示消息 +// map.put("data",map2); +// map2.put("src",url);//图片url +// map2.put("title",imageNames);//图片名称,这个会显示在输入框里 +// return map; +// } + /** * 图片上传 * @return @@ -52,36 +110,37 @@ if (file.isEmpty()) { new FebsResponse().message("上传文件为空"); } - String base64EncoderImg = ""; - try { - //输出到BufferedImage - BufferedImage bufferedImage = Thumbnails.of(file.getInputStream()) - // 图片大小(长宽)压缩比例 从0-1,1表示原图 - .scale(1f) - // 图片质量压缩比例 从0-1,越接近1质量越好 - .outputQuality(0.5f) - .asBufferedImage(); - //对内存中的图片文件进行Base64处理 - ByteArrayOutputStream newBaos = new ByteArrayOutputStream();//io流 - ImageIO.write(bufferedImage, "jpg", newBaos);//写入流中 - byte[] bytes = newBaos.toByteArray();//转换成字节 - base64EncoderImg = new BASE64Encoder().encode(bytes); -// base64EncoderImg = URLEncoder.encode(new BASE64Encoder().encode(bytes), "UTF-8"); - } catch (Exception e) { - e.printStackTrace(); - } - - - //文件加密 -// BASE64Encoder base64Encoder =new BASE64Encoder(); -// try { -// base64EncoderImg = base64Encoder.encode(file.getBytes()); -// } catch (IOException e) { -// e.printStackTrace(); -// } - + BASE64Encoder base64Encoder =new BASE64Encoder(); + List<String> imageFuffixStr = CollUtil.toList(StrUtil.split(file.getOriginalFilename(), ".")); String imageFuffix = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); + if("jpg".equals(imageFuffixStr.get(1))){ + try { + //输出到BufferedImage + BufferedImage bufferedImage = Thumbnails.of(file.getInputStream()) + // 图片大小(长宽)压缩比例 从0-1,1表示原图 + .scale(1f) + // 图片质量压缩比例 从0-1,越接近1质量越好 + .outputQuality(0.5f) + .asBufferedImage(); + //对内存中的图片文件进行Base64处理 + ByteArrayOutputStream newBaos = new ByteArrayOutputStream();//io流 + ImageIO.write(bufferedImage, "jpg", newBaos);//写入流中 + byte[] bytes = newBaos.toByteArray();//转换成字节 + base64EncoderImg = base64Encoder.encode(bytes); +// base64EncoderImg = URLEncoder.encode(new BASE64Encoder().encode(bytes), "UTF-8"); + } catch (Exception e) { + e.printStackTrace(); + } + }else{ + try { + base64EncoderImg = base64Encoder.encode(file.getBytes()); + } catch (IOException e) { + e.printStackTrace(); + } + } + //文件加密 +// String imageFuffix = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); // String imageFuffix = ".png"; String imageNames = System.currentTimeMillis() + IdUtil.simpleUUID() + imageFuffix; String imageName = "uploadeFile/" + imageNames; -- Gitblit v1.9.1