diff --git a/kernel-s-sys/sys-business-hr/src/main/java/cn/stylefeng/roses/kernel/sys/modular/user/biz/UserIntegrationService.java b/kernel-s-sys/sys-business-hr/src/main/java/cn/stylefeng/roses/kernel/sys/modular/user/biz/UserIntegrationService.java index dd5b6536b..4a6062af0 100644 --- a/kernel-s-sys/sys-business-hr/src/main/java/cn/stylefeng/roses/kernel/sys/modular/user/biz/UserIntegrationService.java +++ b/kernel-s-sys/sys-business-hr/src/main/java/cn/stylefeng/roses/kernel/sys/modular/user/biz/UserIntegrationService.java @@ -1,10 +1,16 @@ package cn.stylefeng.roses.kernel.sys.modular.user.biz; +import cn.hutool.core.util.ObjectUtil; +import cn.stylefeng.roses.kernel.file.api.FileInfoApi; import cn.stylefeng.roses.kernel.sys.api.SysUserServiceApi; import cn.stylefeng.roses.kernel.sys.api.pojo.SimpleUserDTO; import cn.stylefeng.roses.kernel.sys.api.pojo.UserOrgDTO; +import cn.stylefeng.roses.kernel.sys.modular.user.entity.SysUser; +import cn.stylefeng.roses.kernel.sys.modular.user.service.SysUserService; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import org.springframework.stereotype.Service; +import javax.annotation.Resource; import java.util.List; /** @@ -16,9 +22,42 @@ import java.util.List; @Service public class UserIntegrationService implements SysUserServiceApi { + @Resource + private SysUserService sysUserService; + + @Resource + private FileInfoApi fileInfoApi; + @Override public SimpleUserDTO getUserInfoByUserId(Long userId) { - return null; + + if (ObjectUtil.isEmpty(userId)) { + return null; + } + + LambdaQueryWrapper sysUserLambdaQueryWrapper = new LambdaQueryWrapper<>(); + sysUserLambdaQueryWrapper.eq(SysUser::getUserId, userId); + sysUserLambdaQueryWrapper.select(SysUser::getRealName, SysUser::getAvatar); + SysUser sysUser = this.sysUserService.getOne(sysUserLambdaQueryWrapper); + if (sysUser == null) { + return null; + } + + SimpleUserDTO simpleUserDTO = new SimpleUserDTO(); + simpleUserDTO.setUserId(userId); + simpleUserDTO.setRealName(sysUser.getRealName()); + + // 获取头像文件id信息,转化为头像URL + Long avatarFileId = sysUser.getAvatar(); + if (avatarFileId == null) { + return null; + } + + // 获取头像的访问地址 + String fileAuthUrl = fileInfoApi.getFileAuthUrl(avatarFileId); + simpleUserDTO.setAvatarUrl(fileAuthUrl); + + return simpleUserDTO; } @Override