失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 基于P2P万信金融--day07 万信金融项搭建用户开发业务逻辑整体项目

基于P2P万信金融--day07 万信金融项搭建用户开发业务逻辑整体项目

时间:2022-02-22 07:47:49

相关推荐

基于P2P万信金融--day07 万信金融项搭建用户开发业务逻辑整体项目

3 用户开户

3.1 需求分析 开户是指借款用户和投资用户在注册后、交易前都需要在银行存管系统开通个人存管账户,在开户流程 中银行存管系统是一个很重要的系统,它是当前P2P平台最常见的一种模式,为了保证资金不流向P2P 平台,由银行存管系统去管理借款用户和投资用户的资金,P2P平台与银行存管系统进行接口交互为借 款用户和投资用户搭建交易的桥梁,它们之间的关系如下:

第一阶段:生成开户数据(图中1.1-1.8)

1、前端填写开户信息 前端会先查询开户信息,如果曾经填写了开户信息则在界面直接显示,用户可以修改; 如果曾经没有填 写开户信息则用户在界面填写开户信息

2、前端请求用户中心服务开户

3、用户中心服务准备开户数据,并把开户信息保存到用户中心

4、用户中心服务请求存管代理服务生成交易记录(未同步),并对开户数据进行签名

5、存管代理服务将签名后的开户数据返回给用户中心

6、用户中心将开户数据返回给前端 第二阶段:请求开户(图中2.1-2.8)

7、前端携带开户信息请求银行存管系统

8、银行存管系统向前端返回开户信息确定页面

9、前端确认完成提交开户请求到银行存管系统

10、银行存管系统接收开户数据并进行校验,校验银行卡信息,信息无误则将开户信息保存至存管系统 (校验过程中存管系统会请求开户银行校验银行卡信息)

第三阶段:开户结果通知(图中3.1-3.4)

11、开户成功后,银行存管系统异步通知存管代理服务

12、存管代理服务接收到开户成功通知后更新交易状态为同步

13、存管代理服务通知用户中心服务

14、用户中心服务接收到开户成功的消息保存开户信息

3.3 第一阶段: 生成开户数据

3.3.1 需求分析

1. 参考前面的“开户业务流程图”,熟悉该阶段的具体需求和业务流程

2. 查阅银行存管系统接口说明.pdf中的“个人绑卡开户”接口说明,熟悉接口接收参数和返回值

3.3.2 接口定义

3.3.2.1 用户中心生成开户数据接口

1. 在wanxinp2p-api工程中的ConsumerAPI接口中新增createConsumer方法:

/*** 生成开户请求数据* @param consumerRequest 开户信息* @return*/RestResponse<GatewayRequest> createConsumer(ConsumerRequest consumerRequest);

2. 在wanxinp2p-consumer-service工程的ConsumerController类中实现该方法:

@Override@ApiOperation("生成开户请求数据")@ApiImplicitParam(name = "consumerRequest", value = "开户信息", required = true,dataType = "ConsumerRequest", paramType = "body")@PostMapping("/my/consumers")public RestResponse<GatewayRequest> createConsumer(@RequestBody ConsumerRequestconsumerRequest) {return null;}

启动该工程进行环境测试(注意设置启动参数:-Denv=dev -Dapollo.cluster=DEFAULT - Dserver.port=53070)

2. 在wanxinp2p-api工程中新建depository包,在该包中新建一个DepositoryAgentApi的接口,然 后定义createConsumer方法:

/*** 银行存管系统代理服务API*/public interface DepositoryAgentApi {/*** 开通存管账户* @param consumerRequest 开户信息* @return*/RestResponse<GatewayRequest> createConsumer(ConsumerRequestconsumerRequest);}

3. 在wanxinp2p-depository-agent-service工程中定义DepositoryAgentController类,并实现 createConsumer方法:

/*** 存管代理服务*/@Api(value = "存管代理服务", tags = "depository-agent")@RestControllerpublic class DepositoryAgentController implements DepositoryAgentApi {@Override@ApiOperation("生成开户请求数据")@ApiImplicitParam(name = "consumerRequest", value = "开户信息", required =true,dataType = "ConsumerRequest", paramType = "body")@PostMapping("/l/consumers")public RestResponse<GatewayRequest> createConsumer(@RequestBodyConsumerRequestconsumerRequest) {return null;}}

开户的过程就是整体完成了,中间的代码过多,不过基本上按着讲义来都可以按量完成,这个是开户的业务,下面就是投标的业务和中标的业务

如果觉得《基于P2P万信金融--day07 万信金融项搭建用户开发业务逻辑整体项目》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。