package com.it.user.service;
import com.it.feign.clients.ProductClient;
import com.it.feign.pojo.Dept;
import com.it.feign.pojo.Role;
import com.it.user.mapper.UserMapper;
import com.it.user.pojo.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
import java.util.List;
@Service
public class UserService {
@Autowired
private UserMapper userMapper;
@Autowired
private ProductClient productClient;
/**
* 根据用户id查询用户信息以及所属角色和部门
* @param id
* @return User
*/
public User queryById(Long id) {
// 1.查询用户
User user = userMapper.findById(id);
// 2.用Feign远程调用角色和部门
Role role = productClient.findByRoleId(user.getRoleId());
Dept dept = productClient.findByDeptId(user.getDeptId());
// 3.封装role和dept到user
user.setRole(role);
user.setDept(dept);
// 4.返回
return user;
}
/**
* 根据用户id查询用户信息以及所属角色和部门
* @param
* @return
*/
public List<User> queryUsers() {
// 1.查询用户
List<User> user = userMapper.findUsers();
for (User user1 : user) {
// 2.用Feign远程调用角色和部门
Role role = productClient.findByRoleId(user1.getRoleId());
Dept dept = productClient.findByDeptId(user1.getDeptId());
// 3.封装role和dept到user
user1.setRole(role);
user1.setDept(dept);
}
// 4.返回
return user;
}
/*@Autowired
private RestTemplate restTemplate;
public User queryById(Long id) {
// 1.查询用户
User user = userMapper.findById(id);
// 2.利用RestTemplate发起http请求,查询角色
// 2.1.url路径
String url = "http://localhost:8080/role/" + user.getRoleId();
// 2.2.发送http请求,实现远程调用
Role role = restTemplate.getForObject(url, Role.class);
// 3.封装role到user
user.setRole(role);
// 4.返回
return user;
}*/
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
项目.rar (71个子文件)
项目
it-demo
pom.xml 3KB
user-service
pom.xml 2KB
target
classes
application.yml 1KB
com
it
user
UserApplication.class 1KB
pojo
User.class 5KB
mapper
UserMapper.class 600B
web
UserController.class 2KB
service
UserService.class 2KB
generated-sources
annotations
src
test
java
main
resources
application.yml 1KB
java
com
it
user
pojo
User.java 384B
mapper
UserMapper.java 554B
UserApplication.java 1KB
web
UserController.java 1KB
service
UserService.java 2KB
gateway
pom.xml 1KB
target
maven-status
maven-compiler-plugin
compile
default-compile
inputFiles.lst 161B
createdFiles.lst 77B
classes
application.yml 738B
com
it
gateway
AuthorizeFilter.class 3KB
GatewayApplication.class 738B
generated-sources
annotations
src
test
java
main
resources
application.yml 738B
java
com
it
gateway
GatewayApplication.java 330B
AuthorizeFilter.java 1KB
it-demo.iml 81B
.idea
misc.xml 666B
encodings.xml 451B
compiler.xml 1KB
workspace.xml 14KB
inspectionProfiles
Project_Default.xml 290B
product-service
pom.xml 2KB
target
maven-status
maven-compiler-plugin
compile
default-compile
inputFiles.lst 792B
createdFiles.lst 342B
classes
application.yml 678B
com
it
product
pojo
Dept.class 2KB
Role.class 2KB
mapper
RoleMapper.class 361B
DeptMapper.class 365B
web
DeptController.class 1KB
RoleController.class 1KB
service
RoleService.class 836B
DeptService.class 840B
ProductApplication.class 827B
bootstrap.yml 222B
generated-sources
annotations
src
test
java
main
resources
application.yml 678B
bootstrap.yml 222B
java
com
it
product
pojo
Dept.java 165B
Role.java 162B
mapper
DeptMapper.java 324B
RoleMapper.java 329B
web
DeptController.java 893B
RoleController.java 857B
service
RoleService.java 594B
DeptService.java 625B
ProductApplication.java 422B
feign-api
pom.xml 851B
target
maven-status
maven-compiler-plugin
compile
default-compile
inputFiles.lst 409B
createdFiles.lst 189B
testCompile
default-testCompile
inputFiles.lst 0B
generated-test-sources
test-annotations
feign-api-1.0-SNAPSHOT.jar 6KB
classes
com
it
feign
config
DefaultFeignConfiguration.class 646B
pojo
Dept.class 2KB
Role.class 2KB
clients
DeptClient.class 465B
ProductClient.class 704B
maven-archiver
pom.properties 60B
generated-sources
annotations
src
test
java
main
resources
java
com
it
feign
config
DefaultFeignConfiguration.java 245B
pojo
Dept.java 163B
Role.java 163B
clients
DeptClient.java 446B
ProductClient.java 762B
sql
cloud_user.sql 3KB
共 71 条
- 1
资源评论
学无止境java
- 粉丝: 776
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功