东莞新奥燃气

1----银行端的开发相对来说比较注重业务和代码逻辑,对于技术来说反而不是那么重要,在很多项目开发中,重要的是如何写出一份解决方案,而不是技术体系如何,下面将以东莞新奥燃气为例子,讲解如何进行一个完整的银行端项目的开发:

技术栈:前端以java为主,后端以python为主,数据库以db2, 服务器以linux服务器,前后端之间通讯以natp协议!前端向后端发送请求,后端向前端提供服务!

目的:为了实现客户用微信进行支付自助购气!

2----流程:

客户在自助终端上放置卡片点击购气,自助终端进行订单初始化(生成一个唯一渠道流水号),通过网关向我发送订单的请求。

中间业务收到请求后,初始化订单号(校验渠道流水号是否重复,生成一条记录并返回一个订单号)并返回给分行的自助终端。

分行收到信息后,直接向威富通发送该订单的相关信息。威富通负责账务的

威富通收到订单信息后,调动微信平台。

微信平台成功响应并回调威富通,给了威富通一个支付密码串(用于生成二维码)。

威富通收到信息后,将信息返回给分行的自助终端。

自助终端生成二维码信息串。

客户进行扫码支付,支付完成后,微信平台确定支付结果并调起威富通,威富通收到结果后,更新本地状态后通知中间业务。

中间业务更新结果!

---------------------------------------------------------------------------------------------------------------------------------------------------------------------

当自助终端支付完成后,每隔几秒则会向中间业务发起一次查询,确认支付结果!

查询结果发现中间业务平台已经更新,那么调起中间业务平台的接口向燃气公司发起购气!

燃气公司收到请求后进行登记,然后返回购气结果给中间业务。

中间业务收到结果后更新自己的状态,然后通知自助终端。

自助终端收到成功的请求,那么开始写卡操作,如果收到失败或者超时那么发起退款,通知威富通和中间业务!

中间业务收到冲正请求后,校验状态和信息,然后向燃气发起退款请求。

燃气更改完毕,通知中间业务,中间业务修改冲正状态,并告诉分行的自助终端!

---------------------------------------------------------------------------------------------------------------------------------------------------------------------

每天晚上11.55分开始则 不允许再进行购气,为了阻止账务跨日,导致清算出问题!

第二天邻晨3点会发起定时调度,向威富通请求对账文件。(通过外联前置)

外联前置是一个独立的转发系统,收到消息后会先回复中间业务平台成功,然后再发向威富通。

中间业务平台收到消息后,会记录一条对账状态信息,里面维护请求的文件名。

外联前置收到威富通消息后,前往下载文件,并存放在本地目录。

系统级别的定时调度定时向外联前置的文件服务器里面扫描文件,如果有新的存在,那么会根据文件名找到对应的系统和可被回调的文件。

东莞新奥燃气被回调后,会将文件路径进行迁移到自己的系统文件夹里面,并登记外联前置存放文件的路径,开始解析文件

系统解析被迁移过来的文件,是否存在,是否为空,读取文件记录的标识是否唯一,如果非自己的则跳过,自己的则处理。

属于自己的,但是记录是异常的,那么系统会报异常并终止。属于自己记录是成功的,那么系统会开始与项目的明细表对账!

文件记录有的,但是系统没有,那么维护进明细表并设置为威富通单边的记录。

文件记录没有,但是系统存在,那么保持对账状态为未对账状态。

文件记录存在,同时系统存在,更新对账状态!
---------------------------------------------------------------------------------------------------------------------------------------------------------------------

对账完成之后,第二天下午14点会,发起定时调度。将所有对账成功的记录发送到,新奥燃气。发送成功则更改自己的对账状态表!

---------------------------------------------------------------------------------------------------------------------------------------------------------------------

允许柜面发起再次对账。

柜面点击对账,那么会通过Natp协议调起后台,后台检验日期小于当天,允许开始对账。

更新对账状态表为未对账,如果找不到状态表在新增一条。

删除威富通单边账记录,然后更新所有记录为未对账。

开始发起对账!

---------------------------------------------------------------------------------------------------------------------------------------------------------------------

所有的结果分为三种处理:成功,失败,异常(详尽办法校验)

所有的外连接通讯需要进行判重,防止重复发起。

所有的通讯结果需要保持外连接的通讯时间!

猜你喜欢

转载自blog.csdn.net/qq_36505948/article/details/81348988