diff --git a/ruoyi-modules/ruoyi-system/pom.xml b/ruoyi-modules/ruoyi-system/pom.xml
index aebef1ec..edafa295 100644
--- a/ruoyi-modules/ruoyi-system/pom.xml
+++ b/ruoyi-modules/ruoyi-system/pom.xml
@@ -1,117 +1,123 @@
-
-
-
- com.ruoyi
- ruoyi-modules
- 3.0.0
-
- 4.0.0
-
- ruoyi-modules-system
-
-
- ruoyi-modules-system系统模块
-
-
-
-
-
-
- com.alibaba.cloud
- spring-cloud-starter-alibaba-nacos-discovery
-
-
-
-
- com.alibaba.cloud
- spring-cloud-starter-alibaba-nacos-config
-
-
-
-
- com.alibaba.cloud
- spring-cloud-starter-alibaba-sentinel
-
-
-
-
- org.springframework.boot
- spring-boot-starter-actuator
-
-
-
-
- io.springfox
- springfox-swagger-ui
- ${swagger.fox.version}
-
-
-
-
- mysql
- mysql-connector-java
-
-
-
-
- com.ruoyi
- ruoyi-common-datasource
-
-
-
-
- com.ruoyi
- ruoyi-common-datascope
-
-
-
-
- com.ruoyi
- ruoyi-common-log
-
-
-
-
- com.ruoyi
- ruoyi-common-swagger
-
-
-
- com.ruoyi
- xhpc-common
- 3.0.0
-
-
-
-
- ${project.artifactId}
-
-
- org.springframework.boot
- spring-boot-maven-plugin
- 2.4.0
-
-
-
- repackage
-
-
-
-
-
-
-
- src/main/resources
-
- **/*.yml
- **/*.xml
- **/*.properties
-
- true
-
-
-
-
-
+
+
+
+ com.ruoyi
+ ruoyi-modules
+ 3.0.0
+
+ 4.0.0
+
+ ruoyi-modules-system
+
+
+ ruoyi-modules-system系统模块
+
+
+
+
+
+
+ com.alibaba.cloud
+ spring-cloud-starter-alibaba-nacos-discovery
+
+
+
+
+ com.alibaba.cloud
+ spring-cloud-starter-alibaba-nacos-config
+
+
+
+
+ com.alibaba.cloud
+ spring-cloud-starter-alibaba-sentinel
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter-actuator
+
+
+
+
+ io.springfox
+ springfox-swagger-ui
+ ${swagger.fox.version}
+
+
+
+
+ mysql
+ mysql-connector-java
+
+
+
+
+ com.ruoyi
+ ruoyi-common-datasource
+
+
+
+
+ com.ruoyi
+ ruoyi-common-datascope
+
+
+
+
+ com.ruoyi
+ ruoyi-common-log
+
+
+
+
+ com.ruoyi
+ ruoyi-common-swagger
+
+
+
+ com.ruoyi
+ xhpc-common
+ 3.0.0
+
+
+ com.aliyun.oss
+ aliyun-sdk-oss
+ 3.10.2
+ compile
+
+
+
+
+ ${project.artifactId}
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+ 2.4.0
+
+
+
+ repackage
+
+
+
+
+
+
+
+ src/main/resources
+
+ **/*.yml
+ **/*.xml
+ **/*.properties
+
+ true
+
+
+
+
+
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/xhpc/system/controller/SysProfileController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/xhpc/system/controller/SysProfileController.java
index fd46c71b..fd8be9c8 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/xhpc/system/controller/SysProfileController.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/xhpc/system/controller/SysProfileController.java
@@ -1,8 +1,15 @@
package com.xhpc.system.controller;
import java.io.IOException;
+import java.io.InputStream;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+import com.aliyun.oss.OSSClient;
+import com.xhpc.common.core.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.core.env.Environment;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
@@ -26,6 +33,9 @@ import com.xhpc.system.api.domain.SysFile;
import com.xhpc.system.api.domain.SysUser;
import com.xhpc.system.api.model.LoginUser;
import com.xhpc.system.service.ISysUserService;
+import org.springframework.web.multipart.support.StandardMultipartHttpServletRequest;
+
+import javax.servlet.http.HttpServletRequest;
/**
* 个人信息 业务处理
@@ -44,6 +54,8 @@ public class SysProfileController extends BaseController
@Autowired
private RemoteFileService remoteFileService;
+ @Autowired
+ private Environment environment;
/**
* 个人信息
@@ -124,19 +136,25 @@ public class SysProfileController extends BaseController
*/
@Log(title = "用户头像", businessType = BusinessType.UPDATE)
@PostMapping("/avatar")
- public AjaxResult avatar(@RequestParam("avatarfile") MultipartFile file) throws IOException
- {
- if (!file.isEmpty())
- {
- LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
- R fileResult = remoteFileService.upload(file);
- if (StringUtils.isNull(fileResult) || StringUtils.isNull(fileResult.getData()))
- {
- return AjaxResult.error("文件服务异常,请联系管理员");
+ public AjaxResult avatar(HttpServletRequest request) {
+ try {
+ String fileNames = "";
+ StandardMultipartHttpServletRequest req = (StandardMultipartHttpServletRequest) request;
+ Iterator iterator = req.getFileNames();
+ while (iterator.hasNext()) {
+ MultipartFile file = req.getFile(iterator.next());
+ fileNames = file.getOriginalFilename();
+ fileNames = DateUtils.timePath() + fileNames;
+ InputStream input = file.getInputStream();
+ // 创建OSSClient实例
+ OSSClient ossClient = new OSSClient(environment.getProperty("oss.endpoint"), environment.getProperty("oss.access-key"), environment.getProperty("oss.secret-key"));
+ // 上传文件流
+ ossClient.putObject(environment.getProperty("oss.bucket-name"), fileNames, input);
+ ossClient.shutdown();
}
- String url = fileResult.getData().getUrl();
- if (userService.updateUserAvatar(loginUser.getUsername(), url))
- {
+ LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
+ String url="https://xhpc-bucket1.oss-cn-hangzhou.aliyuncs.com/"+fileNames;
+ if (userService.updateUserAvatar(loginUser.getUsername(), url)) {
AjaxResult ajax = AjaxResult.success();
ajax.put("imgUrl", url);
// 更新缓存用户头像
@@ -144,6 +162,8 @@ public class SysProfileController extends BaseController
tokenService.setLoginUser(loginUser);
return ajax;
}
+ } catch (IOException e) {
+ e.printStackTrace();
}
return AjaxResult.error("上传图片异常,请联系管理员");
}