什么是分销功能?
分销是一种裂变方式,可以通过分销发展下级代理,下级代理出单你也可以获得抽成的一种方式。
例如:
100
元,可获得50%
提成,消费者B
成为他的二级代理。B
卖出100
元,则B
获得50%,A
获得30%
提成。可设置为二级、三级代理模式。
首先需要维护用户之间的层级关系,底层使用了关系型数据库。
有两种方式,一种是无限递归方式
优点:
id__in
的方式查询下二级,再查询出三级。缺点:
用户和下级用户是一对多的关系,无论有多少层都是一对多的关系。
但是每个用户只可能有一个上级。所以只需要为用户维护一个父id
即可,专业术语pid
用户id | 父用户id |
---|---|
2 | 1 |
3 | 2 |
4 | 2 |
这样计算的时候就可以
用户1的二级代理就是
select 用户id where pid=1
三级代理是在上面的基础上
select 用户id where pid in (上面的结果)。
省略了from user
哈。
当消费者D成交时。按佣金比例,向上查三层即可。
消费链路如 A->B->C->D
,则
C
获得 50%
B
获得 30%
A
获得 10%
获得了三条佣金记录,一条成交记录。
我这里没有说判断pid
为空的情况,自己体会。