Skip to content

Latest commit

 

History

History
109 lines (89 loc) · 7.68 KB

行业知识.md

File metadata and controls

109 lines (89 loc) · 7.68 KB

行业知识

编写原因

程序员是一门跨域多行业的职业,对于程序员来说,技术能力固然重要,业务能力也不容小觑,所以,本文件主要记录一下行业上的业务知识。 (方便跳槽到同样的公司,哈哈哈哈)

车险行业

年代久远,大概说说,一个车辆保险,包含定损,核损,报价三个环节。

自来水水务

正在进行,其实很多跟正常理解的没什么问题,水表啊,客户啊,水表指度,都很容易理解。 难理解的是各种水费违约金的计算。。

支付模块设计

没负责过支付模块,但是有些要点还是记下,以防不测

一个支付模块,对外体现的业务流程是这样的,以下单为例

业务表设计

下单主记录(order_main)

字段名 字段类型 注释 是否必须 默认值
ID int 主键
create_Time timestamp 下单时间
order_user int 下单用户
type tinyint(2) 下单类别(支付宝,微信,银联卡...)
order_id int 订单ID (根据下单类别关联不同的表)
(eg:关联alipay_order表)
product_id int 消费的产品
out_trade_no varchar(64) 后端自行生成的订单号(商户订单号)
check_detail_id int 对账详情记录ID
order_amount decimal(10,2) 订单交易金额,等同下单记录的实收金额

交易阶段(order_stage)

字段名 字段类型 注释 是否 必 须 默认值
ID int 主键
order_id int 所属订单
stage tinyint(2) 阶段(等待付款,等待对账,交易成功)在某阶段失败则更改阶段为(付款失败,对账失败)具体失败原因在出错原因
pid int 上一个阶段的ID (刚刚创建的记录PID为0) 0
log_code varchar(32) 阶段处理过程中的日志记录编码(如阶段是等待付款,则日志记录编码指向下单处理时的日志)
error_msg varchar(255) 出错原因 null
create_time timestamp 创建时间,代表下单时间或者付款时间或者对账时间,根据阶段的不同而不同

支付宝下单记录(alipay_order)

字段名 字段类型 注释 是否必须 默认值
ID int 主键
scene tinyint(2) 支付场景(声波,二维码)
total_amount decimal(10,2) 订单总金额(包含被抵扣的金额等)
trans_currency tinyint(2) 币种(1人民币 2英镑 3 美元 4 日元) 1
trade_no varchar(64) 交易号(支付宝自身生成)
receipt_amount decimal(10,2) 实收金额(剔除优惠金额等金额后实际收取的金额)
mdiscount_amount decimal(10,2) 商家优惠金额(这边给优惠) null
discount_amount decimal(10,2) 支付宝平台给的优惠金额 null
buyer_user_name varchar(128) 买家是谁(名字)
timeout_express timestamp 最晚付款时间
buyer_logon_id varchar(100) 买家支付宝账号
subject varchar(64) 订单标题

对账记录(order_check)

字段名 字段类型 注释 是否必须 默认值
ID int 主键
create_time timestamp 对账时间
success_count int 对账成功数
err_count int 对账失败数
count int 对账总数
file_path varchar(32) 对账文件路径
start_time timestamp 对账文件起始时间
end_time timestamp 对账文件结束时间

对账详细(check_detail)

字段名 字段类型 注释 是否必须 默认值
ID int 主键
check_id int 对账记录ID
out_trade_no varchar(32) 商户订单号
trade_no varchar(32) 交易号
business_type tinyint(2) 业务类型
result_code tinyint(32) 对账结果编码
result_msg varchar(255) 对账结果信息
order_amount decimal(10,2) 订单金额

对账可能情况

  1. 支付平台和数据库的对账金额不对

  2. 支付平台有交易流水号,但是数据库没有

  3. 数据库有交易流水号,但是支付平台没有

  4. 支付平台和数据库的交易流水号和数据库不匹配

    支付宝传来的商户订单号,交易号

    数据有相同的商户订单号,但是交易号不匹配

  5. 对账成功