bugfix-System服务获取Member信息时,改为调用feign方式
parent
1869e1525e
commit
fbf6ffffcb
|
|
@ -35,7 +35,11 @@
|
||||||
<artifactId>yudao-module-infra-api</artifactId>
|
<artifactId>yudao-module-infra-api</artifactId>
|
||||||
<version>${revision}</version>
|
<version>${revision}</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>cn.iocoder.cloud</groupId>
|
||||||
|
<artifactId>yudao-module-member-api</artifactId>
|
||||||
|
<version>${revision}</version>
|
||||||
|
</dependency>
|
||||||
<!-- 业务组件 -->
|
<!-- 业务组件 -->
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>cn.iocoder.cloud</groupId>
|
<groupId>cn.iocoder.cloud</groupId>
|
||||||
|
|
|
||||||
|
|
@ -3,10 +3,11 @@ package cn.iocoder.yudao.module.system.framework.rpc.config;
|
||||||
import cn.iocoder.yudao.module.infra.api.config.ConfigApi;
|
import cn.iocoder.yudao.module.infra.api.config.ConfigApi;
|
||||||
import cn.iocoder.yudao.module.infra.api.file.FileApi;
|
import cn.iocoder.yudao.module.infra.api.file.FileApi;
|
||||||
import cn.iocoder.yudao.module.infra.api.websocket.WebSocketSenderApi;
|
import cn.iocoder.yudao.module.infra.api.websocket.WebSocketSenderApi;
|
||||||
|
import cn.iocoder.yudao.module.member.api.user.MemberUserApi;
|
||||||
import org.springframework.cloud.openfeign.EnableFeignClients;
|
import org.springframework.cloud.openfeign.EnableFeignClients;
|
||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
|
||||||
@Configuration(proxyBeanMethods = false)
|
@Configuration(proxyBeanMethods = false)
|
||||||
@EnableFeignClients(clients = {FileApi.class, WebSocketSenderApi.class, ConfigApi.class})
|
@EnableFeignClients(clients = {FileApi.class, WebSocketSenderApi.class, ConfigApi.class, MemberUserApi.class})
|
||||||
public class RpcConfiguration {
|
public class RpcConfiguration {
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,8 @@
|
||||||
package cn.iocoder.yudao.module.system.service.member;
|
package cn.iocoder.yudao.module.system.service.member;
|
||||||
|
|
||||||
import cn.hutool.core.util.ClassUtil;
|
import cn.iocoder.yudao.module.member.api.user.MemberUserApi;
|
||||||
import cn.hutool.core.util.ReflectUtil;
|
import cn.iocoder.yudao.module.member.api.user.dto.MemberUserRespDTO;
|
||||||
import cn.hutool.extra.spring.SpringUtil;
|
import jakarta.annotation.Resource;
|
||||||
import org.springframework.beans.factory.annotation.Value;
|
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -14,41 +13,28 @@ import org.springframework.stereotype.Service;
|
||||||
@Service
|
@Service
|
||||||
public class MemberServiceImpl implements MemberService {
|
public class MemberServiceImpl implements MemberService {
|
||||||
|
|
||||||
@Value("${yudao.info.base-package}")
|
@Resource
|
||||||
private String basePackage;
|
private MemberUserApi memberUserApi;
|
||||||
|
|
||||||
private volatile Object memberUserApi;
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getMemberUserMobile(Long id) {
|
public String getMemberUserMobile(Long id) {
|
||||||
Object user = getMemberUser(id);
|
MemberUserRespDTO user = getMemberUser(id);
|
||||||
if (user == null) {
|
if (user == null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
return ReflectUtil.invoke(user, "getMobile");
|
return user.getMobile();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getMemberUserEmail(Long id) {
|
public String getMemberUserEmail(Long id) {
|
||||||
Object user = getMemberUser(id);
|
throw new UnsupportedOperationException("暂不支持获取邮箱功能,请联系管理员!");
|
||||||
if (user == null) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
return ReflectUtil.invoke(user, "getEmail");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private Object getMemberUser(Long id) {
|
private MemberUserRespDTO getMemberUser(Long id) {
|
||||||
if (id == null) {
|
if (id == null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
return ReflectUtil.invoke(getMemberUserApi(), "getUser", id);
|
return memberUserApi.getUser(id).getCheckedData();
|
||||||
}
|
|
||||||
|
|
||||||
private Object getMemberUserApi() {
|
|
||||||
if (memberUserApi == null) {
|
|
||||||
memberUserApi = SpringUtil.getBean(ClassUtil.loadClass(String.format("%s.module.member.api.user.MemberUserApi", basePackage)));
|
|
||||||
}
|
|
||||||
return memberUserApi;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue