From c17c4e4f2d9e2d636a165827a73687f137fdd459 Mon Sep 17 00:00:00 2001 From: chenzhihang <709011834@qq.com> Date: Thu, 3 Apr 2025 10:56:45 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=A8=E6=88=B7=E5=90=8C=E6=AD=A5=E5=8A=9F?= =?UTF-8?q?=E8=83=BD=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ruoyi/system/api/RemoteMmpService.java | 4 +- .../com/ruoyi/auth/service/Oauth2Service.java | 5 +- .../ruoyi/platform/utils/NewHttpUtils.java | 10 +-- .../controller/SysProfileController.java | 3 +- .../ruoyi/system/service/ISysUserService.java | 2 +- .../service/impl/SysUserServiceImpl.java | 71 ++++++++++--------- 6 files changed, 50 insertions(+), 45 deletions(-) diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/RemoteMmpService.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/RemoteMmpService.java index 4404f86c..45e2ccfd 100644 --- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/RemoteMmpService.java +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/RemoteMmpService.java @@ -19,10 +19,10 @@ public interface RemoteMmpService { @PostMapping("/gitLink/resetPwd") public GenericsAjaxResult resetPwd(@RequestBody SysUser sysUser) throws Exception; - @PostMapping("/gitLink/resetEmail") + @PutMapping("/gitLink/resetEmail") public GenericsAjaxResult resetEmail(@RequestBody SysUser sysUser) throws Exception; - @PostMapping("/gitLink/resetPhoneNum") + @PutMapping("/gitLink/resetPhoneNum") public GenericsAjaxResult resetPhoneNum(@RequestBody SysUser sysUser) throws Exception; @DeleteMapping("/gitLink/deleteGitLinkUser") diff --git a/ruoyi-auth/src/main/java/com/ruoyi/auth/service/Oauth2Service.java b/ruoyi-auth/src/main/java/com/ruoyi/auth/service/Oauth2Service.java index ca646842..02b81404 100644 --- a/ruoyi-auth/src/main/java/com/ruoyi/auth/service/Oauth2Service.java +++ b/ruoyi-auth/src/main/java/com/ruoyi/auth/service/Oauth2Service.java @@ -2,6 +2,7 @@ package com.ruoyi.auth.service; import com.ruoyi.auth.domain.OauthAccount; import com.ruoyi.auth.mapper.Oauth2Mapper; +import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.system.api.constant.Constant; import com.ruoyi.system.api.domain.SysUser; import org.springframework.beans.factory.annotation.Autowired; @@ -31,7 +32,9 @@ public class Oauth2Service { OauthAccount oauthAccount = new OauthAccount(); oauthAccount.setClientId(clientId); oauthAccount.setUsername(user.getUserName()); - oauthAccount.setPassword(user.getPassword()); + if (StringUtils.isNotEmpty(user.getPassword())) { + oauthAccount.setPassword(user.getPassword()); + } oauthAccount.setMobile(user.getPhonenumber()); oauthAccount.setEmail(user.getEmail()); if (Constant.DelFlag.equals(user.getDelFlag())) { diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/utils/NewHttpUtils.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/utils/NewHttpUtils.java index 0286c623..dc88ad0e 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/utils/NewHttpUtils.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/utils/NewHttpUtils.java @@ -127,10 +127,12 @@ public class NewHttpUtils { throw new IOException("HTTP request failed with response code: " + statusCode); } log.info("Response: " + result); - Map resultMap = JsonUtils.jsonToMap(result); - Integer status = (Integer) resultMap.get("status"); - if (status != null && status != 0) { - throw new Exception((String) resultMap.get("message")); + if (result.startsWith("{")) { + Map resultMap = JsonUtils.jsonToMap(result); + Integer status = (Integer) resultMap.get("status"); + if (status != null && status != 0 && status != 1) { + throw new Exception((String) resultMap.get("message")); + } } } } catch (URISyntaxException e) { diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysProfileController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysProfileController.java index d81100d3..a64f0176 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysProfileController.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysProfileController.java @@ -63,8 +63,7 @@ public class SysProfileController extends BaseController */ @Log(title = "个人信息", businessType = BusinessType.UPDATE) @PutMapping - public AjaxResult updateProfile(@RequestBody SysUser user) - { + public AjaxResult updateProfile(@RequestBody SysUser user) throws Exception { LoginUser loginUser = SecurityUtils.getLoginUser(); SysUser currentUser = loginUser.getSysUser(); currentUser.setNickName(user.getNickName()); diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java index 51d5886c..2e76ee11 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java @@ -151,7 +151,7 @@ public interface ISysUserService * @param user 用户信息 * @return 结果 */ - public int updateUserProfile(SysUser user); + public int updateUserProfile(SysUser user) throws Exception; /** * 修改用户头像 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java index 840ad17b..ca5ae679 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java @@ -31,7 +31,6 @@ import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; -import static com.ruoyi.common.security.utils.SecurityUtils.decrypt; import static com.ruoyi.common.security.utils.SecurityUtils.encrypt; /** @@ -291,8 +290,6 @@ public class SysUserServiceImpl implements ISysUserService { @Transactional(rollbackFor = Exception.class) public int updateUser(SysUser user) throws Exception { Long userId = user.getUserId(); - SysUser oldUser = userMapper.selectUserById(userId); - // 删除用户与角色关联 userRoleMapper.deleteUserRoleByUserId(userId); // 新增用户与角色管理 @@ -302,37 +299,7 @@ public class SysUserServiceImpl implements ISysUserService { // 新增用户与岗位管理 insertUserPost(user); - // 更新gitlink用户 - if (!oldUser.getEmail().equals(user.getEmail())) { - GenericsAjaxResult result = remoteMmpService.resetEmail(user); - if (result.getCode() != 200) { - throw new Exception(result.getMsg()); - } - } - - if (!oldUser.getPhonenumber().equals(user.getPhonenumber())) { - GenericsAjaxResult result = remoteMmpService.resetPhoneNum(user); - if (result.getCode() != 200) { - throw new Exception(result.getMsg()); - } - } - - if (StringUtils.isNotEmpty(user.getPassword())) { - GenericsAjaxResult result = remoteMmpService.resetPwd(user); - if (result.getCode() != 200) { - throw new Exception(result.getMsg()); - } - } - - if (StringUtils.isNotEmpty(user.getPassword())) { - user.setOriginPassword(encrypt(user.getPassword())); - user.setPassword(SecurityUtils.encryptPassword(user.getPassword())); - } - - // 更新oauth2用户 - remoteAuthService.edit(user); - - // todo 更新火石平台用户 + updateUserProfile(user); return userMapper.updateUser(user); } @@ -368,7 +335,41 @@ public class SysUserServiceImpl implements ISysUserService { * @return 结果 */ @Override - public int updateUserProfile(SysUser user) { + public int updateUserProfile(SysUser user) throws Exception { + SysUser oldUser = userMapper.selectUserById(user.getUserId()); + + // 更新gitlink用户 + if (!oldUser.getEmail().equals(user.getEmail())) { + GenericsAjaxResult result = remoteMmpService.resetEmail(user); + if (result.getCode() != 200) { + throw new Exception(result.getMsg()); + } + } + + if (!oldUser.getPhonenumber().equals(user.getPhonenumber())) { + GenericsAjaxResult result = remoteMmpService.resetPhoneNum(user); + if (result.getCode() != 200) { + throw new Exception(result.getMsg()); + } + } + + if (StringUtils.isNotEmpty(user.getPassword())) { + GenericsAjaxResult result = remoteMmpService.resetPwd(user); + if (result.getCode() != 200) { + throw new Exception(result.getMsg()); + } + } + + if (StringUtils.isNotEmpty(user.getPassword())) { + user.setOriginPassword(encrypt(user.getPassword())); + user.setPassword(SecurityUtils.encryptPassword(user.getPassword())); + } + + // 更新oauth2用户 + remoteAuthService.edit(user); + + // todo 更新火石平台用户 + return userMapper.updateUser(user); }