中合金网_支付流程-下支付定单
2022-05-06 16:38:15 0 举报
支付流程
作者其他创作
大纲/内容
Y
查询平台通用模板(csr_mall_model_cfg)
orderInfo.getTerminal()==07-->跳一体机支付页面
查询收银台支付模板(csr_webpage_model_cfg)
支付订单查询:findByOrderIdAndChannelId()表:cer_order_info;csr_ceb_pay_info
生产上已经很久没有联动的数据报文,基本都是光大支付数据,后续流程不在梳理
根据收银台订单号和渠道号查询支付信息表:csr_ceb_pay_info
生成流水号:CSR+渠道号+订单状态+支付类型(光大or江苏)+id()
解析报文,获取报文体的实体类ifsMessageService.getIfsMessageBody()
收银台返回成功的话-更新出入金记录表表(TAB_FUND_INOUT_LOG)更新收银台返回的支付流水号存到 authIdea 字段中
更新回调信息表(csr_message_order_rel)
获取支付渠道商户号及相关信息1.查询订单支付账号信息(csr_payment_merchant);2.根据支付渠道code查询记录(csr_pay_mer_relation)3.根据不同的mallId+channelCode查商户相关信息(csr_pay_mer_relation)
跳转页面逻辑
应该是已经废弃了逻辑分支
cashier
OrderPaymentController.paySycn()
PayTradeClient.execute() ---> 调用 /order/payment/api/sycn 接口
GxsBankPayService
doPayment
orderPayInfoService.recOrderPayInfo(接收前台报文,更新订单支付表)
是否使用供销宝
更新支付信息数据update()
else
是否使用联动支付
插入支付单明细表(csr_ceb_pay_info)
保存流水信息(csr_pay_serial)
解析报文,获取报文头内容ifsMessageService.getIfsMessageHead()
调用-收银台支付cashierService.pay(BUY_CSR_1001)
更新子订单数据-比对数据,数据库中有的进行更新;上送的不包含数据库中的,数据库中的数据进行删除csr_child_order_info)
查询对应平台模板信息(csr_mall_model_cfg)
支付信息是否为空cebPayInfo==null
查询订单支付状态-进行验证
N
etrade
更新订单数据表(csr_order_info)
csr_ceb_pay_info 表中有 unique_key(transId+channelCd)索引;
this.useCebOrJs()-> cebPayInfoService.insertOrUpdateCebPayInfo();
插入支付信息数据insertCebPayInfo()
插入数据:1.订单表(csr_order_info)2.支付信息表(csr_payment)3.插入回调信息表(csr_message_order_rel)
业务渠道配置信息查询busiChannelService.findByChannelCode()
订单信息是否存在
插入-入金订单流水表(tab_fund_in_biz_log)
查询支付状态:changeOrderStatusService.getPayStatus()
调用银行支付接口-组装入金订单流水表、出入金记录表对象
是否使用光大、江苏支付
更新支付单明细表 (csr_ceb_pay_info)
插入子订单流水信息(csr_pay_serial);插入子订单数据(csr_child_order_info)
0 条评论
回复 删除
下一页