商品订单表怎么设计_三级分销系统系统设计

4356d368be5ee11b0f3519d9fce855b2.png

系统业务目标

  • 系统角色:货主,各级分销商(定三级),微信用户,购买者
  • 货主可以将自己的商品上架
  • 货主可以设置通用分销比例
  • 货主可以发展一级分销商并设置分销比例(通用分销比例)
  • 货主可以设置商品的分销比例(商品分销比例)
  • 分销优先级 商品>通用
  • 一级分销商可以发展二级,二级分销商可以发展三级,三级不可以发展分销商
  • 微信用户转发商品链接被其他用户进入购买则发彩蛋给分享用户

常见场景

  • 货主上架商品,设置商品性质为可分销,设置该商品分销比例
  • 货主发展一级分销商,一级分销商以商品维度绑定货主
  • 二级分销商发展三级分销商
  • 货主管理一级分销商,一级分销商管理二级分销商,二级分销商管理三级分销商

主要流程

  • 用户购买商品并支付成功
  • 发通知订单支付成功
  • 查询订单内的商品和数量
  • 查询各个商品的分销规则,没有商品分销规则的则查询通用分销规则
  • 查询订单的分销者信息,确定分销者的分销级别
  • 计算各级分销者应得,生成分销订单

技术目标

  • 分销关系的存储
  • 水平可扩展
  • 服务的单一性保证
  • 非阻塞服务异步化

技术实现

01 表设计

分销(邀请)关系表:存储分销者的关系(树形关系)

分销订单表:记录各个角色的分红信息

通用分销规则表:记录分销商设置的分销规则

商品分销规则表:记录分销商设置的商品分销规则

以上表依赖:
用户表,商品表

02 服务设计

依赖服务:

1.用户服务 2.订单服务 3.商品服务 4.钱包服务

这里详细介绍用户邀请逻辑关系的建立

注册

db3c7d63b93b64d701ab94e49f7423e1.png

奖励的触发:注册和拿手完成活动

奖励触发涉及对账户和金额的操作,需要做到必达性,即奖励活动的完成确认。

邀请关系的建立有一个麻烦的业务处理,需要在注册的时就建立关系。

主要的注册方法是异步处理,保证注册成功并迅速完成。注册时从页面上带有的邀请人id找到邀请人的用户信息,然后建立关系。

但三级分销是多层关系的,返款时不但需要找到邀请人,还要找到一级分销。如果查找多个表单对产品性能影响很大。所以在每个人注册时不但存储邀请人和自己的邀请关系,同时要确定邀请人是否满足一级分销的条件,如果满足,对这个一级分销的所有子集都打一级分销标签。

03 数据库设计

数据库设计原则

db3c7d63b93b64d701ab94e49f7423e1.png


1) 准确记录账户基本信息,特别是状态。


2) 交易时要正确记录下交易信息和账户状态。


3) 交易记录是历史性的,不可篡改。


4) 交易是连续的,对时间要求准确。


5) 交易记录要完整,对安全性有要求。

主要数据表

db3c7d63b93b64d701ab94e49f7423e1.png

1) 账户基本信息表


记录账户的持有人姓名、联络方式、余额、有效期、密码、流通范围等。为了安全,该表还应该由账户、姓名、有效期和余额组成的检验串,防止有人恶意修改余额或账号。

2) 交易记录表


记录每一笔交易信息,除了记录交易账户、交易时间、交易金额、交易后余额和交易内容(充值或消费购物)外,还应该记录下账户的其它基本信息,如账户持有人姓名、交易地点等。

交易记录不建立使用太多的代码表示特定意思,所有交易必须有数据完整性校验,即一行记录一旦生成后其校验串也就固定了,防止有人恶意修改记录。

3) 账户变更记录表


由于账户基本信息是可变更的,基于交易系统的交易记录的历史性和档案性,所以对账户基本信息的任何变更都必须有记录,由什么变更为什么,一定要有记录。

4) 操作日志明细表


所有的操作必须有详细的日志记录。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
打开dns.37it.cn免费申请二级域名解析方可使用 否则会出现00002993错误 用替换工具ultrareplace,文本编辑工具:Notepad++ 下面是需要替换的地方 ceshi.vvei.cn 超级人脉管家 http://mp.weixin.qq.com/s?__biz=MzA4MTI1OTI1OA==&mid=212268202&idx=1&sn=581c81665c013e1ee5c01db440df2593#rd 这个到时候自己撰写一份新手指南替换 掉 http://123.com/index.php?g=Admin&m=Login&a=index 后台地址 admin admin888 微信管理>>自定义回复 修改 http://ceshi.vvei.cn/ 替换为 你的网站 1、数据库连接地址:Public\Conf\config.php 2、微信菜单修改:Public\Conf\button_config.php,然后“微信管理”-“菜单管理”-“重新生成菜单”。 另下面三行代码请修改: $link_config (还没有关注的,引导关注,点击“立即关注”进入微信文章) $config_good_pic (购买时,页面上面的产品图) $headimgurl (没有购买前的头部左上角LOGO) 3、公众号里面的支付授权目录:直接域名就可以 支付回调URL:直接域名就可以 告警通知URL:先空着 4、更“换推广二维码”图片,图片在根目录保持格式、名字不变。记得在服务器根目录/imgpublic里删除其它多余的图片,只留benbendou.jpg即可。 5、页面的CSS在这里改:Application\Tpl\App\default\Public\Static\css 6、如果头像出不来,可以把根目录的imgpublic文件夹权限设为777 7、微信支付前显示的图片: Application\Tpl\App\default\Public\Static\images\productsinfo.jpg 对应更改的文件:Application\Tpl\App\default\Index\pay.html 8、更改下单时的“备注”内容:Application\Tpl\App\default\Index\index.html 9、关于修改微信关注后回复的内容目录地址: Application\Lib\Action\Admin\WechatAction.class.php 可修改第249,263,267行,可修改中文汉字,不要修改参数代码。 =============================================================== 后台登录:http://您的域名/index.php?g=Admin 初始帐号:admin 密 码:admin888
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值