首页 > 其他分享 >微服务项目:尚融宝(60)(核心业务流程:个人中心)

微服务项目:尚融宝(60)(核心业务流程:个人中心)

时间:2022-11-03 17:01:47浏览次数:65  
标签:ApiModelProperty 业务流程 userId private 60 value 尚融宝 userIndexVO userInfo


认清现实,放弃幻想,准备斗争

一、资金列表接口

1、Controller

TransFlowController

@Api(tags = "资金记录")
@RestController
@RequestMapping("/api/core/transFlow")
@Slf4j
public class TransFlowController {

@Resource
private TransFlowService transFlowService;

@ApiOperation("获取列表")
@GetMapping("/list")
public R list(HttpServletRequest request) {
String token = request.getHeader("token");
Long userId = JwtUtils.getUserId(token);
List<TransFlow> list = transFlowService.selectByUserId(userId);
return R.ok().data("list", list);
}
}

2、Service

接口:TransFlowService

List<TransFlow> selectByUserId(Long userId);

实现:TransFlowServiceImpl 

@Override
public List<TransFlow> selectByUserId(Long userId) {

QueryWrapper<TransFlow> queryWrapper = new QueryWrapper<>();
queryWrapper
.eq("user_id", userId)
.orderByDesc("id");
return baseMapper.selectList(queryWrapper);
}

二、前端整合

脚本

pages/user/fund.vue

fetchTransFlowList() {
this.$axios.$get('/api/core/transFlow/list').then((response) => {
this.transFlowList = response.data.list
})
},

一、后端接口

1、创建VO

@Data
@ApiModel(description = "首页用户信息")
public class UserIndexVO {

@ApiModelProperty(value = "用户id")
private Long userId;

@ApiModelProperty(value = "用户姓名")
private String name;

@ApiModelProperty(value = "用户昵称")
private String nickName;

@ApiModelProperty(value = "1:出借人 2:借款人")
private Integer userType;

@ApiModelProperty(value = "用户头像")
private String headImg;

@ApiModelProperty(value = "绑定状态(0:未绑定,1:绑定成功 -1:绑定失败)")
private Integer bindStatus;

@ApiModelProperty(value = "帐户可用余额")
private BigDecimal amount;

@ApiModelProperty(value = "冻结金额")
private BigDecimal freezeAmount;

@ApiModelProperty(value = "上次登录时间")
private LocalDateTime lastLoginTime;

}

2、Controller

UserInfoController

@ApiOperation("获取个人空间用户信息")
@GetMapping("/auth/getIndexUserInfo")
public R getIndexUserInfo(HttpServletRequest request) {
String token = request.getHeader("token");
Long userId = JwtUtils.getUserId(token);
UserIndexVO userIndexVO = userInfoService.getIndexUserInfo(userId);
return R.ok().data("userIndexVO", userIndexVO);
}

3、Service

接口:UserInfoService

UserIndexVO getIndexUserInfo(Long userId);

实现:UserInfoServiceImpl 


@Override
public UserIndexVO getIndexUserInfo(Long userId) {

//用户信息
UserInfo userInfo = baseMapper.selectById(userId);

//账户信息
QueryWrapper<UserAccount> userAccountQueryWrapper = new QueryWrapper<>();
userAccountQueryWrapper.eq("user_id", userId);
UserAccount userAccount = userAccountMapper.selectOne(userAccountQueryWrapper);

//登录信息
QueryWrapper<UserLoginRecord> userLoginRecordQueryWrapper = new QueryWrapper<>();
userLoginRecordQueryWrapper
.eq("user_id", userId)
.orderByDesc("id")
.last("limit 1");
UserLoginRecord userLoginRecord = userLoginRecordMapper.selectOne(userLoginRecordQueryWrapper);
result.put("userLoginRecord", userLoginRecord);

//组装结果数据
UserIndexVO userIndexVO = new UserIndexVO();
userIndexVO.setUserId(userInfo.getId());
userIndexVO.setUserType(userInfo.getUserType());
userIndexVO.setName(userInfo.getName());
userIndexVO.setNickName(userInfo.getNickName());
userIndexVO.setHeadImg(userInfo.getHeadImg());
userIndexVO.setBindStatus(userInfo.getBindStatus());
userIndexVO.setAmount(userAccount.getAmount());
userIndexVO.setFreezeAmount(userAccount.getFreezeAmount());
userIndexVO.setLastLoginTime(userLoginRecord.getCreateTime());

return userIndexVO;
}

二、前端整合

脚本

pages/user/index.vue

fetchUserData() {
this.$axios
.$get('/api/core/userInfo/auth/getIndexUserInfo')
.then((response) => {
this.userIndexVO = response.data.userIndexVO
})
},

今日分享

计算机网络是指将地理位置不同的具有独立功能的多台​计算机

微服务项目:尚融宝(60)(核心业务流程:个人中心)_微服务

https://baike.baidu.com/item/%E8%AE%A1%E7%AE%97%E6%9C%BA/140338​及其外部设备,通过通信线路连接起来,在​网络操作系统​​网络管理软件

微服务项目:尚融宝(60)(核心业务流程:个人中心)_java_02

https://baike.baidu.com/item/%E7%BD%91%E7%BB%9C%E7%AE%A1%E7%90%86%E8%BD%AF%E4%BB%B6/6579078​
​网络通信协议​的管理和协调下,实现​资源共享​和信息传递的计算机系统。 [1] 

计算机网络主要是由一些通用的、可编程的硬件互连而成的,而这些硬件并非专门用来实现某一特定目的(例如,传送数据或视频信号)。这些可编程的硬件能够用来传送多种不同类型的数据,并能支持广泛的和日益增长的应用。


标签:ApiModelProperty,业务流程,userId,private,60,value,尚融宝,userIndexVO,userInfo
From: https://blog.51cto.com/u_15786786/5820562

相关文章

  • [题解] HDU7060 Separated Number 思路整理
    题目链接HDU7060SeparatedNumber题目大意给一个\(n\)位数,把该数字分成\(k\)段,每种方案的贡献为其分割出的段的数字之和。求所有分法的贡献之和(对\(998244353\)......
  • 代码随想录day35 | 860.柠檬水找零 406. 根据身高重建队列 452. 用最少数量的箭引爆
    860.柠檬水找零题目|文章思路这道题看上去很复杂,其实只要把每种情况写下来,答案就已经解决了。1.收到52.收到103.收到20实现点击查看代码classSolution{publi......
  • 【luogu P1600】天天爱跑步(线段树合并)(LCA)
    天天爱跑步题目链接:luoguP1600题目大意有一棵树,给你若干条路径,对于每个点,有一个数x,求出有多少条路径的第x个点是当前点。思路考虑把路径拆成两个部分,向上和向下。......
  • 1602:烽火传递
    序列A,选择一些a[i],任意一个长度为m的区间内至少有一个所选的问sum{a[i]}的最小值 #include<iostream>#include<cstring>usingnamespacestd;constint......
  • 一本通1603 绿色通道
    有 n 道题目要抄,耗时a[i]  。用不超过 t分钟抄这个,每道题要么不写,要么抄完,。下标连续的一些空题称为一个空题段,它的长度就是所包含的题目数。现在,小Y想知道他在这......
  • Linux(Debian11 Ubuntu20.04 Gnome) 4k 60hz 显示器 闪屏
    显示器没问题,线没问题,是CPU驱动的bug。困扰了我好几年的问题,只要是4k@60Hz,就随机频繁的闪屏,因此一直无法在4k@60Hz下使用Linux桌面。直到我发现了这样一个帖子:帖子中......
  • leetcode-1460-easy
    MakeTwoArraysEqualbyReversingSubarraysYouaregiventwointegerarraysofequallengthtargetandarr.Inonestep,youcanselectanynon-emptysubarra......
  • [单片机框架][drivers层][bq25601] charger 电源管理
    接上一篇:​​[单片机框架][device层]charger电源管理​​bq25601器件是高度集成的3A开关模式电池充电管理和系统电源路径管理器件,适用于单节锂离子和锂聚合物电池。低......
  • 26Jmeter之60并发时Address alread in use :connect
    发现问题的背景:执行阶梯压力测试,大概60并发报错:JMeter错误:java.net.BindException:Addressalreadyinuse:connect1.分析报错原因:windows默认的TCP/IP端口只有1024-5......
  • 基于单片机的智能洗手器系统设计(#0460)
    功能描述本设计由STC89C52单片机电路+2路水泵控制电路+红外避障传感器电路+继电器控制电路+DS18B20温度检测电路+按键电路+电源电路组成。1、当红外避障传感器检测到障碍后......