乐盟充值

433 阅读3分钟

###用户

  • 角色 管理员,商户,流量运营专员,话费运营专员

  • 登录类型 前台用户登录,流量商户登录,话费商户登录,所有商户登录,所有用户登录

###商户

  • 商户 使用该系统充值的用户
  • 商户产品分配 将某些产品分配给该商户
  • 产品售价配置信息 给商户的产品设置售价
  • 商户规则 给该商户分配商品时的规格,(权重,价格最低)

###供应商 向上游供应商发送请求进行充值

###商品 话费商品,流量商品

###系统

  • 接单系统: 对外暴露一个接口,接收下级的充值请求

  • 转发系统: 暴露一个接口,获取一些未处理的订单,进行订单的转发。 查询商品价格

  • 回调系统: 提供上游回调的接口

  • 定时任务系统: 定时查询一些没有收到回调的系统,然后去上游查询该订单,根据相应的结果处理订单。 定时处理一些需要向下游回调的订单,向下游回调订单充值结果 处理异步回调失败的订单,重新发起回调

  • 扩展服务系统: 提供给下游查询订单状态的接口 提供个下游查询账户余额的接口

  • 后台管理系统 订单的查询 产品管理 商户管理 供应商管理 系统管理 话费流量报表

###业务 ####接单业务

  • 判断接收到的参数是否为空 100异常
  • 判断接收到的数据格式是否为json 400异常
  • 解析字符串,获取参数
  • 黑名单检查 122异常
  • 话费充值限制(每天单个号码最多充值10次)
  • 参数非空校验 100异常
  • 安全校验 时间校验:参数中的时间不能比服务器时间提前10s,晚5min 301 302异常 重复订单校验:参数中的订单号不能重复 111异常 商户身份校验 112 113 114 115异常 商户签名校验 101异常 商户余额校验 102 103 110异常 校验系统中最大缓存收单数量 303异常
  • 匹配手机号段信息 104 107异常 如果匹配手机号段出现自定义异常,则从外部接口查询,如果出现其他异常,则从数据库读取
  • 联通号码充值限制 121异常 120异常
  • 判断商户该省份价格信息是否存在 118 119异常
  • 检查商户是否配置规则 118 异常 103异常
  • 接收订单到生成订单是否超过40s 303异常
  • 保存订单
  • 根据返回的结果,发送队列消息扣款
  • 检查是否需要发送余额提醒,需要发送。

###转发订单业务

  • 获取上一次执行查询的时间与当前时间做对比,如果小于3s则不进行查询操作。

  • 开启线程

  • 查询一定数量的待转发的订单

  • 判断拉取订单消耗的时间是否大于3s,如果大于3s则放弃此次的查询。

  • 循环多个订单,每个订单开启一个线程处理

  • 如果返回FAILED,发送队列消息,回款