微服务项目:尚融宝(30)(后端搭建:会员列表搭建(1))
认清现实,放弃幻想,准备斗争
需求![](/assets/blank.gif)
一、后端接口实现
1、创建查询对象
UserInfoQuery
@Data
@ApiModel(description="会员搜索对象")
public class UserInfoQuery {@ApiModelProperty(value = "手机号")private String mobile;@ApiModelProperty(value = "状态")private Integer status;@ApiModelProperty(value = "1:出借人 2:借款人")private Integer userType;
}
2、Service
接口:UserInfoService
IPage<UserInfo> listPage(Page<UserInfo> pageParam, UserInfoQuery userInfoQuery);
实现:UserInfoServiceImpl
@Override
public IPage<UserInfo> listPage(Page<UserInfo> pageParam, UserInfoQuery userInfoQuery) {String mobile = userInfoQuery.getMobile();Integer status = userInfoQuery.getStatus();Integer userType = userInfoQuery.getUserType();QueryWrapper<UserInfo> userInfoQueryWrapper = new QueryWrapper<>();if(userInfoQuery == null){return baseMapper.selectPage(pageParam, null);}userInfoQueryWrapper.eq(StringUtils.isNotBlank(mobile), "mobile", mobile).eq(status != null, "status", userInfoQuery.getStatus()).eq(userType != null, "user_type", userType);return baseMapper.selectPage(pageParam, userInfoQueryWrapper);
}
注意点
这里由于查询信息不一定会传这个参数过来需要,也可能传过来的对象的属性不全,所以这里需要对传递过来的对象属性进行一个判断操作再封装查询
3、Controller
AdminUserInfoController
@Api(tags = "会员管理")
@RestController
@RequestMapping("/admin/core/userInfo")
@Slf4j
@CrossOrigin
public class AdminUserInfoController {@Resourceprivate UserInfoService userInfoService;@ApiOperation("获取会员分页列表")@GetMapping("/list/{page}/{limit}")public R listPage(@ApiParam(value = "当前页码", required = true)@PathVariable Long page,@ApiParam(value = "每页记录数", required = true)@PathVariable Long limit,@ApiParam(value = "查询对象", required = false)UserInfoQuery userInfoQuery) {Page<UserInfo> pageParam = new Page<>(page, limit);IPage<UserInfo> pageModel = userInfoService.listPage(pageParam, userInfoQuery);return R.ok().data("pageModel", pageModel);}
}
注意点:
在restful风格中查询对应是get请求,但这里的话 UserInfoQuery userInfoQuery是作为一个对象,不能把这个对象封装在respondBody中,这个时候前端要进行一定处理
4、LocalDateTime的json格式化问题
service-base中添加json格式化配置文件
@Configuration
public class LocalDateTimeSerializerConfig {@Value("${spring.jackson.date-format:yyyy-MM-dd HH:mm:ss}")private String pattern;public LocalDateTimeSerializer localDateTimeDeserializer() {return new LocalDateTimeSerializer(DateTimeFormatter.ofPattern(pattern));}@Beanpublic Jackson2ObjectMapperBuilderCustomizer jackson2ObjectMapperBuilderCustomizer() {return builder -> builder.serializerByType(LocalDateTime.class, localDateTimeDeserializer());}
}
上面的方案全局生效,当全局的格式化方式无法满足我们需求时,我们对日期格式要做特殊的处理:在类的属性上添加注解
@JsonFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(value = "创建时间")
private LocalDateTime createTime;
微服务项目:尚融宝(30)(后端搭建:会员列表搭建(1))相关推荐
- 尚融宝30(终)-资金记录和个人中心展示
目录 一.资金记录 (一)后端 (二)前端 二.个人中心 (一)后端 (二)前端 三.整合rabbitmq (一)linux下rabbitmq 的安装 (二)整合rabbitmq发送短信 1.MQ服务 ...
- 【Spring Cloud】新闻头条微服务项目:自媒体前后端搭建素材管理(含优化)
个人简介: >
- 微服务项目:尚融宝(1)(项目介绍)
从今天开始做一个全栈项目,巩固学完的springcloud,复习之前学过的ssm mp redis MQ等知识点,拿下我的第二个项目 .技术栈中未掌握部署,计划到项目后期部署的时候,再自学一波 放弃幻 ...
- 微服务项目:尚融宝(53)(核心业务流程:投标(4))
认清现实,放弃幻想,准备斗争 前端整合 投资 pages/lend/_id.vue //投资commitInvest() {//校验用户是否登录let userInfo = cookie.get('u ...
- 微服务项目:尚融宝(59)(核心业务流程:提现和还款(2))
认清现实,放弃幻想,准备斗争 需求 放款成功后,会生成借款人的还款计划与出借人的回款计划,然后借款人按照还款计划日期操作还款即可. 参考<汇付宝商户账户技术文档>3.14还款扣款,处理业务 ...
- 【金融项目】尚融宝项目(十五)
29.提现和还款 29.1.提现 29.1.1.需求 放款成功后,借款人可以申请提现. 参考<汇付宝商户账户技术文档>3.15用户申请提现 29.1.2.前端整合 pages/user/w ...
- 【金融项目】尚融宝项目(十)
19.申请借款额度 19.1.需求介绍 19.1.1.借款人申请额度 1.需求描述 平台管理员根据借款人个人信息设置积分,通过积分规则借款人可以获取额度. 2.相关数据库表 19.1.2.具体步骤 s ...
- 【金融项目】尚融宝项目(四)
6.Alibaba EasyExcel 6.1.EasyExcel简介 6.1.1.Excel导入导出的应用场景 6.1.1.1.数据导入 减轻录入工作量 6.1.1.2.数据导出 统计信息归档 6. ...
- 【金融项目】尚融宝项目(三)
5.管理平台前端搭建 5.1.搭建管理平台前端程序 5.1.1.vue-element-admin vue-element-admin是基于element-ui 的一套后台管理系统集成方案. GitH ...
- 【金融项目】尚融宝项目(十四)
27.放款 27.1.需求介绍 27.1.1.平台放款 1.需求描述 标的募资时间到,平台会操作放款或撤标,如果达到放款条件则操作放款 说明:撤标过程与放款过程一致,处理业务相对简单,只是将出借金额返 ...
最新文章
- 新能源汽车电驱系统行业深度报告
- linux平台的实验描述,基于LINUX的操作系统实验平台的设计与实现
- centos amd双显卡_讯景RX590 AMD 50周年纪念版显卡评测
- 淡谈泛型约束T(转)
- $(function() {})
- Spring MVC面试题
- linux基础知识——进程相关概念
- 学会用Go解析复杂JSON的思路
- 小米高管:已投大量精力研发手机AI芯片,造不造还没定
- php检测是目录还是文件,php检测文件目录大小类
- 学前教育试题库及答案_学前教育学考试试题及答案
- IIS 的安装for xp3
- css实现宽高比固定
- 字母易位词(anagram)
- 连接到系统上的设备没有发挥作用解决方案
- IDEA小游戏数字炸弹
- SPC是什么,有什么用
- (纪中)2431. 移动奶牛(herding)
- html5制作八卦图,使用HTML+CSS画太极八卦图
- DB2使用db2advis工具调优SQL