From 8546b3d285af4235a0ef615a0c6e89486ae2c806 Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期四, 17 十月 2024 21:01:37 +0800 Subject: [PATCH] 达梦不支持value改为values --- src/main/java/com/ycl/jxkg/controller/student/UploadController.java | 66 ++++++++++++++++++++------------ 1 files changed, 41 insertions(+), 25 deletions(-) diff --git a/src/main/java/com/ycl/jxkg/controller/student/UploadController.java b/src/main/java/com/ycl/jxkg/controller/student/UploadController.java index 16fa105..196740a 100644 --- a/src/main/java/com/ycl/jxkg/controller/student/UploadController.java +++ b/src/main/java/com/ycl/jxkg/controller/student/UploadController.java @@ -2,10 +2,14 @@ import com.ycl.jxkg.base.BaseApiController; -import com.ycl.jxkg.base.RestResponse; +import com.ycl.jxkg.base.Result; +import com.ycl.jxkg.config.RuoYiConfig; import com.ycl.jxkg.service.FileUpload; import com.ycl.jxkg.service.UserService; +import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.StringUtils; +import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.RestController; @@ -13,39 +17,51 @@ import org.springframework.web.multipart.MultipartHttpServletRequest; import javax.servlet.http.HttpServletRequest; +import java.io.File; import java.io.IOException; import java.io.InputStream; +import java.util.HashMap; +import java.util.UUID; - +@RequiredArgsConstructor @RequestMapping("/api/student/upload") @RestController("StudentUploadController") public class UploadController extends BaseApiController { - private final FileUpload fileUpload; private final UserService userService; + private final RuoYiConfig ruoYiConfig; - @Autowired - public UploadController(FileUpload fileUpload, UserService userService) { - this.fileUpload = fileUpload; - this.userService = userService; - } - - - @RequestMapping("/image") - @ResponseBody - public RestResponse questionUploadAndReadExcel(HttpServletRequest request) { - MultipartHttpServletRequest multipartHttpServletRequest = (MultipartHttpServletRequest) request; - MultipartFile multipartFile = multipartHttpServletRequest.getFile("file"); - long attachSize = multipartFile.getSize(); - String imgName = multipartFile.getOriginalFilename(); - try (InputStream inputStream = multipartFile.getInputStream()) { - String filePath = fileUpload.uploadFile(inputStream, attachSize, imgName); - userService.changePicture(getCurrentUser(), filePath); - return RestResponse.ok(filePath); - } catch (IOException e) { - return RestResponse.fail(2, e.getMessage()); + @PostMapping("/image") + public Result questionUploadAndReadExcel(MultipartFile file) { + // 妫�鏌ユ枃浠舵槸鍚︿负绌� + if (file == null || file.isEmpty()) { + return Result.fail(500, "涓婁紶鐨勬枃浠朵负绌�"); } + String randomName = null; + HashMap hashMap = new HashMap(2); + try { + // 鑾峰彇鏂囦欢鍚� + String originalFileName = StringUtils.cleanPath(file.getOriginalFilename()); + randomName = UUID.randomUUID().toString().replace("-", "") + originalFileName.substring(originalFileName.lastIndexOf(".")); + // 鎸囧畾鏂囦欢瀛樺偍璺緞 + String uploadDir = ruoYiConfig.getUrl(); // 淇敼涓烘偍甯屾湜瀛樺偍鐨勭洰褰� + // 濡傛灉鐩綍涓嶅瓨鍦紝鍒欏垱寤虹洰褰� + File dir = new File(uploadDir); + if (!dir.exists()) { + dir.mkdirs(); + } + // 鏋勫缓鐩爣鏂囦欢鐨勮矾寰� + String filePath = uploadDir + "/" + randomName; + // 灏嗘枃浠朵繚瀛樺埌鐩爣浣嶇疆 + file.transferTo(new File(filePath)); + hashMap.put("name", originalFileName); + hashMap.put("url", randomName); + } catch (IOException e) { + e.printStackTrace(); + // 杩斿洖澶辫触鍝嶅簲 + return Result.fail(500, "鏂囦欢涓婁紶澶辫触"); + } + userService.changePicture(getCurrentUser(), randomName); + return Result.ok(hashMap); } - - } -- Gitblit v1.8.0