系统业务目标

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

常见场景

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

主要流程

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

技术目标

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

技术实现

01 表设计

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

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

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

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

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

02 服务设计

依赖服务:

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

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

注册

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

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

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

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

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

03 数据库设计

数据库设计原则

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

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

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

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

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

主要数据表

1) 账户基本信息表

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

2) 交易记录表

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

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

3) 账户变更记录表

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

4) 操作日志明细表

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

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

  1. 智伴机器人三级分销模式_三级分销系统的模式有哪些

    分配系统有多种模式,在现在微商火爆的阶段,三级分销系统很多人都会有一定的了解.三级分销是分销系统中的一个分支,这种模式虽然说比较少见,比较新鲜,但只要是做过微商的人,相信对三级分销系统的模式和作用都是 ...

  2. 智伴机器人三级分销模式_三级分销系统是什么模式

    展开全部 三级分销模式顾名思义:分销商只能获取三层佣金,超过三级就e68a843231313335323631343130323136353331333431353330与你无关.三级分销,也即品牌商 ...

  3. 三级分销系统系统设计

    系统业务目标 系统角色:货主,各级分销商(定三级),微信用户,购买者 货主可以将自己的商品上架 货主可以设置通用分销比例 货主可以发展一级分销商并设置分销比例(通用分销比例) 货主可以设置商品的分销比 ...

  4. 订单表的字段类型 mysql_Mysql数据库下订单表如何设计?

    Mysql数据库下订单表如何设计 商品表和订单表 . 通过一个表来关联. 那删除了商品,相关联的订单表如何显示出这个已经删除的商品 订单表需要冗余商品名.商品编号.价格等基本信息. 不能只保存一个商品 ...

  5. 用mysql建销售订单主表_mysql订单表如何设计?

    mysql订单表如何设计? 商品表和订单表 . 通过一个表来关联. 那删除了商品,相关联的订单表如何显示出这个已经删除的商品? 订单表需要冗余商品名.商品编号.价格等基本信息. 不能只保存一个商品主键 ...

  6. Mysql订单表如何设计?

    mysql订单表如何设计? 商品表和订单表 . 通过一个表来关联. 那删除了商品,相关联的订单表如何显示出这个已经删除的商品? 订单表需要冗余商品名.商品编号.价格等基本信息. 不能只保存一个商品主键 ...

  7. thinkphp三级分销小程序源码_山东谷道微信小程序商城源码带后台 公众号平台三级分销系统...

    山东谷道微信小程序商城源码带后台 公众号平台三级分销系统 那么微信二级分销系统与微信三级分销系统到底有什么区别和联系呢?为什么改了个数字地位就天差地别? 1.微信分销模式等级的区别 用简洁的话来说,微 ...

  8. 【数据库】商品信息表的设计

    假设你是一家百货公司电脑部的开发人员,某天老板要求你为公司开发一套网上电子商务平台,该百货公司有数千种商品出售,不过目前仅打算先在网上销售数十种方便运输的商品,当然,以后可能会陆续在该电子商务平台上增 ...

  9. 智伴机器人三级分销模式_三级分销模式是如何实现裂变的?

    三级分销模式是如何实现裂变的? 发布时间:2019-07-16 点击量:5399 分销模式是很多人认可的营销模式,很多企业也在用这种模式并且出现了很多成功案例.但有些新手不太了解三级分销系统具体是什么 ...

最新文章

  1. php限制字符输入,.NET_asp.net(c#)限制用户输入规定的字符和数字的代码,一下是这个代码: 只允许 用 - phpStudy...
  2. cmd装b专用代码_Python 用5行代码学机器学习—线性回归
  3. 自学python还是报班-学习Python到底是培训还是自学合适呢?
  4. C++和操作系统面试问题分类
  5. windows下用QTwebkit解析html
  6. 前端每日实战:142# 视频演示如何用 CSS 的 Grid 布局创作一枚小鸡邮票
  7. 建立ssh无密码登录环境
  8. .Net Core跨平台应用研究-HelloArm(串口篇)
  9. java 复杂表达式计算_我的计算器. 用java实现的. 可以支持复杂表达式
  10. 威纶触摸屏与电脑连接_威纶通触摸屏和西门子PLC通讯不上解决方法
  11. solidword入门使用
  12. 计算机用通讯电压多少,通信局(站)用交流电源的质量指标要求
  13. 练气六层 —— 重要知识点总结
  14. excel表格内容拆分_excel工作表如何按照内容进行拆分呢
  15. 获奖团队访谈录|“AI+无线通信”赛道三等奖团队
  16. [渝粤题库]西北工业大学材料力学(更新)
  17. strsep 是将字符串截断
  18. UA OPTI570 量子力学23 角动量基础
  19. webpack配置entry详解
  20. 最主流的5个视频分发平台推荐

热门文章

  1. 第十一节:动态绑定class和style
  2. 台式计算机内存是什么意思,电脑提示计算机内存不足是什么意思
  3. 视频:PNAS报道纤维化扩展中“旁张力信号”介导的细胞间机械通讯
  4. 更新macOS Monterey后遇到的各种Bug问题及解决方法
  5. 22021年江苏高考成绩查询,江苏高考成绩查询系统入口
  6. 格雷码、二进制码、BCD编码
  7. 中小学python、人工智能书籍(2022.02.02)
  8. 【PMP学习笔记】:三、项目经理角色
  9. 如何实现轮播图的内容的多少随div的大小动态变化_小程序学习日志8:swiper滑动轮播组件(轮播图)(上)...
  10. resnet模型的图像分类结构图_ResNet - 2015年 ILSVRC 的赢家(图像分类,定位及检测)...