From e3167016f7cbaaa9462eccd6f7d5dd8e54b72468 Mon Sep 17 00:00:00 2001 From: wucongxing8150 <815046773@qq.com> Date: Wed, 16 Jul 2025 09:50:13 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=8B=E8=AF=951?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../expert/controller/ExpertController.java | 54 +++++++++---------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/sa-admin/src/main/java/net/lab1024/sa/admin/module/app/expert/controller/ExpertController.java b/sa-admin/src/main/java/net/lab1024/sa/admin/module/app/expert/controller/ExpertController.java index c2025f7..683ca6a 100644 --- a/sa-admin/src/main/java/net/lab1024/sa/admin/module/app/expert/controller/ExpertController.java +++ b/sa-admin/src/main/java/net/lab1024/sa/admin/module/app/expert/controller/ExpertController.java @@ -365,33 +365,33 @@ public class ExpertController { @ApiOperation(value = "上传图片", notes = "仅在上传执业医师资格证使用") @PostMapping("/user/uoloadImg") public ResponseDTO uoloadImg(@RequestParam("file") MultipartFile file) throws IOException { -// HashMap params = new HashMap<>(); -// //文件上传只需将参数中的键指定(默认file),值设为文件对象即可,对于使用者来说,文件上传与普通表单提交并无区别 -// // 创建一个临时文件 -// File tempFile = File.createTempFile("temp", file.getOriginalFilename()); -// // 将 MultipartFile 的内容写入到临时文件中 -// try (InputStream inputStream = file.getInputStream(); -// OutputStream outputStream = new FileOutputStream(tempFile)) { -// -// byte[] buffer = new byte[1024]; -// int bytesRead; -// while ((bytesRead = inputStream.read(buffer)) != -1) { -// outputStream.write(buffer, 0, bytesRead); -// } -// params.put("platform", IGANDAN_WX_PLATFORM); -// params.put("timestamp", System.currentTimeMillis()/1000); -// String signature = Sha256Util.getSign(params, IGANDAN_WX_token); -// params.put("signature", signature); -// params.put("file", tempFile); -// String result= HttpUtil.post(IGANDAN_WX_HOST + UOLOADIMGV2_URL, params); -// ResponseDTO responseDTO = JSON.parseObject(result, ResponseDTO.class); -// if(responseDTO.getCode() == 200){ -// String data = (String) responseDTO.getData(); -// return ResponseDTO.app_ok(IGANDAN_DOC_HOST + data); -// } -// }finally { -// tempFile.deleteOnExit(); -// } + HashMap params = new HashMap<>(); + //文件上传只需将参数中的键指定(默认file),值设为文件对象即可,对于使用者来说,文件上传与普通表单提交并无区别 + // 创建一个临时文件 + File tempFile = File.createTempFile("temp", file.getOriginalFilename()); + // 将 MultipartFile 的内容写入到临时文件中 + try (InputStream inputStream = file.getInputStream(); + OutputStream outputStream = new FileOutputStream(tempFile)) { + + byte[] buffer = new byte[1024]; + int bytesRead; + while ((bytesRead = inputStream.read(buffer)) != -1) { + outputStream.write(buffer, 0, bytesRead); + } + params.put("platform", IGANDAN_WX_PLATFORM); + params.put("timestamp", System.currentTimeMillis()/1000); + String signature = Sha256Util.getSign(params, IGANDAN_WX_token); + params.put("signature", signature); + params.put("file", tempFile); + String result= HttpUtil.post(IGANDAN_WX_HOST + UOLOADIMGV2_URL, params); + ResponseDTO responseDTO = JSON.parseObject(result, ResponseDTO.class); + if(responseDTO.getCode() == 200){ + String data = (String) responseDTO.getData(); + return ResponseDTO.app_ok(IGANDAN_DOC_HOST + data); + } + }finally { + tempFile.deleteOnExit(); + } return ResponseDTO.userErrorParam(); }