前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >微服务项目:尚融宝(41)(核心业务流程:借款额度审批)

微服务项目:尚融宝(41)(核心业务流程:借款额度审批)

作者头像
一个风轻云淡
发布2022-11-15 15:07:26
3450
发布2022-11-15 15:07:26
举报
文章被收录于专栏:java学习java

借款信息列表

需求

一、后端实现

1、扩展实体对象

列表的结果需要关联查询,数据字典的数据也需要展示对应的文本内容而不是值,除了定义VO的方式,我们也可以使用扩展实体类的方式 

在BorrowInfo类中扩展以下字段

//扩展字段 @ApiModelProperty(value = "姓名") @TableField(exist = false) private String name; @ApiModelProperty(value = "手机") @TableField(exist = false) private String mobile; @ApiModelProperty(value = "其他参数") @TableField(exist = false) private Map<String,Object> param = new HashMap<>();

2、Controller

添加 AdminBorrowInfoController

代码语言:javascript
复制
@Api(tags = "借款管理")
@RestController
@RequestMapping("/admin/core/borrowInfo")
@Slf4j
public class AdminBorrowInfoController {

    @Resource
    private BorrowInfoService borrowInfoService;

    @ApiOperation("借款信息列表")
    @GetMapping("/list")
    public R list() {
        List<BorrowInfo>  borrowInfoList = borrowInfoService.selectList();
        return R.ok().data("list", borrowInfoList);
    }
}

3、Service

接口:BorrowInfoService

代码语言:javascript
复制
List<BorrowInfo> selectList();

实现:BorrowInfoServiceImpl 

代码语言:javascript
复制
@Resource
private DictService dictService;

@Override
public List<BorrowInfo> selectList() {
    List<BorrowInfo> borrowInfoList = baseMapper.selectBorrowInfoList();
    borrowInfoList.forEach(borrowInfo -> {
        String returnMethod = dictService.getNameByParentDictCodeAndValue("returnMethod", borrowInfo.getReturnMethod());
        String moneyUse = dictService.getNameByParentDictCodeAndValue("moneyUse", borrowInfo.getMoneyUse());
        String status = BorrowInfoStatusEnum.getMsgByStatus(borrowInfo.getStatus());
        borrowInfo.getParam().put("returnMethod", returnMethod);
        borrowInfo.getParam().put("moneyUse", moneyUse);
        borrowInfo.getParam().put("status", status);
    });

    return borrowInfoList;
}

4、Mapper

接口:BorrowInfoMapper

代码语言:javascript
复制
<select id="selectBorrowInfoList" resultType="com.atguigu.srb.core.pojo.entity.BorrowInfo">
    SELECT
    bi.*,
    b.name,
    b.mobile
    FROM
    borrow_info AS bi
    LEFT JOIN borrower AS b ON bi.user_id = b.user_id
    WHERE bi.is_deleted = 0
</select>

 BorrowInfoStatusEnum.getMsgByStatus

代码语言:javascript
复制
   @Override
    public String getNameByparantDictAndValue(String dictCode,Integer value) {
        QueryWrapper<Dict> wrapper = new QueryWrapper<>();
        wrapper.eq("dict_code",dictCode);
        Dict dict = baseMapper.selectOne(wrapper);
        if(dict==null){
            return "";
        }
        wrapper=new QueryWrapper<>();
        wrapper.eq("parent_id",dict.getId())
                .eq("value",value);
        Dict dict1 = baseMapper.selectOne(wrapper);
        if (dict1==null){
            return  "";
        }
        return  dict1.getName();
    }
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-09-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 借款信息列表
  • 需求
  • 一、后端实现
    • 1、扩展实体对象
      • 2、Controller
        • 3、Service
          • 4、Mapper
            •  BorrowInfoStatusEnum.getMsgByStatus
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档