From 9eb03b9a2a7ced30d37e12fb573a7904f58329db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=91=E5=B9=B4=E6=A2=A6=E4=B8=8E=E7=A0=96?= <2847127106@qq.com> Date: Wed, 25 Sep 2024 19:30:36 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A8=B3=E5=AE=9A=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../muyu/auth/service/SysLoginService.java | 16 +++--------- .../system/remote/RemoteSaasService.java | 2 +- .../system/remote/RemoteUserService.java | 14 ++++++++-- .../factory/RemoteUserFallbackFactory.java | 5 ++++ .../saas/controller/SysUserController.java | 2 +- .../saas/service/impl/SysUserServiceImpl.java | 26 ++++++++++++++++--- .../system/controller/SysUserController.java | 13 +++++++--- .../muyu/system/service/SysConfigService.java | 5 ++-- 8 files changed, 58 insertions(+), 25 deletions(-) diff --git a/cloud-auth/src/main/java/com/muyu/auth/service/SysLoginService.java b/cloud-auth/src/main/java/com/muyu/auth/service/SysLoginService.java index 6cfe874..929536e 100644 --- a/cloud-auth/src/main/java/com/muyu/auth/service/SysLoginService.java +++ b/cloud-auth/src/main/java/com/muyu/auth/service/SysLoginService.java @@ -76,8 +76,7 @@ public class SysLoginService { throw new ServiceException("很遗憾,访问IP已被列入系统黑名单"); } // 查询用户信息 - Result userResult = remoteSaasService.getUserInfo(firmCode, username, SecurityConstants.INNER); - + Result userResult = remoteUserService.getUserInfo(firmCode, username, SecurityConstants.INNER); if (StringUtils.isNull(userResult) || StringUtils.isNull(userResult.getData())) { recordLogService.recordLogininfor(username, Constants.LOGIN_FAIL, "登录用户不存在"); throw new ServiceException("登录用户:" + username + " 不存在"); @@ -87,7 +86,8 @@ public class SysLoginService { throw new ServiceException(userResult.getMsg()); } - SysUser user = userResult.getData(); + LoginUser loginUser = userResult.getData(); + SysUser user = loginUser.getSysUser(); if (UserStatus.DELETED.getCode().equals(user.getDelFlag())) { recordLogService.recordLogininfor(username, Constants.LOGIN_FAIL, "对不起,您的账号已被删除"); throw new ServiceException("对不起,您的账号:" + username + " 已被删除"); @@ -99,15 +99,7 @@ public class SysLoginService { passwordService.validate(user, password); recordLogService.recordLogininfor(username, Constants.LOGIN_SUCCESS, "登录成功"); - // 角色集合 - Set roles = remoteUserService.getRolePermission(user); - // 权限集合 - Set permissions = remoteUserService.getMenuPermission(user); - LoginUser sysUserVo = new LoginUser(); - sysUserVo.setSysUser(user); - sysUserVo.setRoles(roles); - sysUserVo.setPermissions(permissions); - return sysUserVo; + return loginUser; } public void logout (String loginName) { diff --git a/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/remote/RemoteSaasService.java b/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/remote/RemoteSaasService.java index 9f2d7a1..86293b3 100644 --- a/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/remote/RemoteSaasService.java +++ b/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/remote/RemoteSaasService.java @@ -22,7 +22,7 @@ public interface RemoteSaasService { * 通过用户名查询用户信息 * * @param firmCode - * @param username 用户名 + * @param userName 用户名 * @param source 请求来源 * @return 结果 */ diff --git a/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/remote/RemoteUserService.java b/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/remote/RemoteUserService.java index f595554..ca0bb3f 100644 --- a/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/remote/RemoteUserService.java +++ b/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/remote/RemoteUserService.java @@ -3,11 +3,9 @@ package com.muyu.common.system.remote; import com.muyu.common.core.constant.SecurityConstants; import com.muyu.common.core.constant.ServiceNameConstants; import com.muyu.common.core.domain.Result; -import com.muyu.common.core.web.page.TableDataInfo; import com.muyu.common.system.domain.*; import com.muyu.common.system.remote.factory.RemoteUserFallbackFactory; import org.springframework.cloud.openfeign.FeignClient; -import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.List; @@ -38,6 +36,18 @@ public interface RemoteUserService { @PostMapping("/ent/list") public Result> list (@RequestBody SysEnt sysEnt); + + /** + * 通过用户名查询用户信息 + * + * @param firmCode + * @param userName 用户名 + * @param source 请求来源 + * @return 结果 + */ + @GetMapping("/user/info") + public Result getUserInfo (@RequestParam("firmCode") String firmCode, @RequestParam("userName") String userName, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); + /** * 获取角色数据权限 * diff --git a/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/remote/factory/RemoteUserFallbackFactory.java b/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/remote/factory/RemoteUserFallbackFactory.java index e754b9d..2e0ecf6 100644 --- a/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/remote/factory/RemoteUserFallbackFactory.java +++ b/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/remote/factory/RemoteUserFallbackFactory.java @@ -41,6 +41,11 @@ public class RemoteUserFallbackFactory implements FallbackFactory getUserInfo(String firmCode, String userName, String source) { + return Result.error("获取用户信息失败:" + throwable.getMessage()); + } + @Override public Set getRolePermission(SysUser user) { return Set.of(); diff --git a/cloud-modules/cloud-modules-system-saas/src/main/java/com/muyu/system/saas/controller/SysUserController.java b/cloud-modules/cloud-modules-system-saas/src/main/java/com/muyu/system/saas/controller/SysUserController.java index 7481534..412f2cf 100644 --- a/cloud-modules/cloud-modules-system-saas/src/main/java/com/muyu/system/saas/controller/SysUserController.java +++ b/cloud-modules/cloud-modules-system-saas/src/main/java/com/muyu/system/saas/controller/SysUserController.java @@ -45,7 +45,7 @@ public class SysUserController extends BaseController { * @param user 条件 * @return 集合 */ - @PostMapping("/list") + @GetMapping("/list") public Result> list(SysUser user){ startPage(); return getDataTable(userService.selectUserList(user)); diff --git a/cloud-modules/cloud-modules-system-saas/src/main/java/com/muyu/system/saas/service/impl/SysUserServiceImpl.java b/cloud-modules/cloud-modules-system-saas/src/main/java/com/muyu/system/saas/service/impl/SysUserServiceImpl.java index af95dc6..a53838a 100644 --- a/cloud-modules/cloud-modules-system-saas/src/main/java/com/muyu/system/saas/service/impl/SysUserServiceImpl.java +++ b/cloud-modules/cloud-modules-system-saas/src/main/java/com/muyu/system/saas/service/impl/SysUserServiceImpl.java @@ -12,6 +12,7 @@ import com.muyu.common.system.domain.SysUserRole; import com.muyu.common.system.remote.RemoteUserService; import com.muyu.system.saas.mapper.SysUserPostMapper; import com.muyu.system.saas.mapper.SysUserRoleMapper; +import org.apache.commons.lang3.ObjectUtils; import org.springframework.stereotype.Service; import lombok.extern.slf4j.Slf4j; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -106,9 +107,28 @@ public class SysUserServiceImpl extends ServiceImpl @Override public List selectUserList(SysUser user) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.like( - StringUtils.isNotEmpty(user.getUserName()), - SysUser::getUserName, user.getUserName()); + queryWrapper + .like( + StringUtils.isNotEmpty(user.getUserName()), + SysUser::getUserName, user.getUserName()) + .eq( + StringUtils.isNotEmpty(user.getStatus()), + SysUser::getStatus, user.getStatus()) + .eq( + StringUtils.isNotEmpty(user.getFirmCode()), + SysUser::getFirmCode, user.getFirmCode()) + .eq( + ObjectUtils.isNotEmpty(user.getDeptId()), + SysUser::getDeptId, user.getDeptId()) + .like( + StringUtils.isNotEmpty(user.getNickName()), + SysUser::getNickName, user.getNickName()) + .like( + StringUtils.isNotEmpty(user.getEmail()), + SysUser::getEmail, user.getEmail()) + .like( + StringUtils.isNotEmpty(user.getPhonenumber()), + SysUser::getPhonenumber, user.getPhonenumber()); return this.list(queryWrapper); } diff --git a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/controller/SysUserController.java b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/controller/SysUserController.java index 6512edc..03ff398 100644 --- a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/controller/SysUserController.java +++ b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/controller/SysUserController.java @@ -31,10 +31,12 @@ import java.util.List; import java.util.Set; import java.util.stream.Collectors; + /** - * 用户信息 + * sys用户控制器 * - * @author muyu + * @author 胡杨 + * @date 2024/09/25 */ @RestController @RequestMapping("/user") @@ -69,6 +71,9 @@ public class SysUserController extends BaseController { return getDataTable(list); } + /** + * 公司集合 + */ @GetMapping("/companyList") public Result> companyList () { List list = userService.selectCompanyList(); @@ -106,8 +111,8 @@ public class SysUserController extends BaseController { */ @InnerAuth @GetMapping("/info") - public Result info (@RequestParam("firmCode") String firmCode,@RequestParam("username") String username) { - SysUser sysUser = userService.selectUserByUserName(firmCode,username); + public Result info (@RequestParam("firmCode") String firmCode,@RequestParam("userName") String userName) { + SysUser sysUser = userService.selectUserByUserName(firmCode, userName); if (StringUtils.isNull(sysUser)) { return Result.error("用户名或密码错误"); } diff --git a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/SysConfigService.java b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/SysConfigService.java index f23d67e..a79f102 100644 --- a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/SysConfigService.java +++ b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/SysConfigService.java @@ -6,9 +6,10 @@ import com.muyu.system.domain.SysConfig; import java.util.List; /** + * 系统配置服务 + * * @author DongZl - * @description: 配置plus业务层 - * @Date 2023-11-13 上午 10:06 + * @date 2024/09/25 */ public interface SysConfigService extends IService { List pageQuery (SysConfig config);