我们已经准备好了,你呢?

2025我们与您携手共赢,为您的企业形象保驾护航!

分销系统功能说明文档

一、系统架构概述

核心模块:分销商管理、分销等级、分销订单、分销商品、配置管理。

2.3 升级类型 (upgrade_type)

类型1:或条件 满足任一数值阈值即可升级,例如订单数、订单额、一级分销订单数等任一项达到要求。

类型2:且条件 需同时满足全部阈值,如订单数、订单额、一级订单数、一级订单额、下线人数、下线分销商人数等共同达到。

3.2 佣金计算流程 (FenxiaoOrder::calculate)

校验订单状态与可结算性 → 根据分销层级与当前等级获取比例/定额 → 计算各层佣金 → 汇总并写入分销订单记录 → 更新分销商账户与统计字段 → 异常订单(退款/关闭)不参与结算。

七、关键配置项

7.1 基础展示配置 (BASIC_CONFIG) 影响佣金明细与金额显示。

7.2 结算时机配置 (SETTLEMENT_CONFIG) (1=付款后,2=订单完成)。

7.3 用户关系配置 (FENXIAO_RELATION_CONFIG) (1=首次点击,2=首次下单,3=首次付款)。

八、数据统计字段

字段说明统一以平台标准口径为准;订单数、订单金额、一级订单数/金额、账户余额与已提现金额等按分销商维度汇总。

附:术语说明

订单完成 指平台订单进入完成态(已收货或自动完成);分销层级 指一二三级分销关系;结算 指计算并入账分销佣金。

  • fenxiao_idmember_idlevel_idparentgrand_parent

  • one_fenxiao_order_numone_fenxiao_order_moneyone_fenxiao_total_order

  • one_child_numone_child_fenxiao_numtwo_child_fenxiao_num

  • accountaccount_withdrawtotal_commissionstatus

  1. fenxiao_level - 分销等级表

  • level_idlevel_numlevel_name

  • one_ratetwo_ratethree_rate (佣金比例)

  • upgrade_type (升级类型: 1=或条件, 2=且条件)

  • 升级条件字段:order_numorder_moneyone_fenxiao_order_numone_fenxiao_order_moneyone_fenxiao_total_orderone_child_numone_child_fenxiao_num

  • is_default (是否默认等级)

  1. fenxiao_order - 分销订单表

  • order_idorder_goods_idgoods_idsku_id

  • one_fenxiao_idone_rateone_commission

  • two_fenxiao_idtwo_ratetwo_commission

  • three_fenxiao_idthree_ratethree_commission

  • is_settlementis_refund

  1. fenxiao_goods_sku - 商品SKU分销规则表

  • goods_idsku_idlevel_id

  • one_rateone_moneytwo_ratetwo_moneythree_ratethree_money


二、分销等级系统

2.1 等级结构

  • 等级由 level_num 排序,数值越大等级越高

  • 每个等级包含:

  • 等级名称 (level_name)

  • 佣金比例 (one_ratetwo_ratethree_rate)

  • 升级条件 (见2.2)

  • 升级类型 (upgrade_type)

2.2 升级条件字段说明

字段说明数据来源
order_num自购订单总数会员表 order_num
order_money自购订单总额会员表 order_money
one_fenxiao_order_num一级分销订单总数分销商表 one_fenxiao_order_num
one_fenxiao_order_money一级分销订单佣金总额分销商表 one_fenxiao_order_money
one_fenxiao_total_order一级分销订单总额分销商表 one_fenxiao_total_order
one_child_num下线人数分销商表 one_child_num
one_child_fenxiao_num下线分销商人数分销商表 one_child_fenxiao_num

2.3 升级类型 (upgrade_type)

类型1:或条件(满足任一条件即可)
类型2:且条件(所有条件必须同时满足)

2.4 升级触发时机

  • 订单完成时:event('FenxiaoUpgrade', $fenxiao_id)

  • 添加下级分销商时

  • 绑定上下级关系时


三、佣金计算规则

3.1 分销层级配置

  • 系统支持 1-3级分销,由配置 level 控制

  • 默认配置:level = 2(二级分销)

3.2 佣金计算流程 (FenxiaoOrder::calculate)

步骤1:获取分销关系链

步骤2:判断商品分销类型

类型1:默认规则 (fenxiao_type = 1)
  • 使用分销商当前等级 (level_id) 的佣金比例

  • 从 fenxiao_level 表读取 one_ratetwo_ratethree_rate

类型2:自定义规则 (fenxiao_type = 2)
  • 使用商品SKU级别的自定义佣金规则

  • 从 fenxiao_goods_sku 表读取,按 goods_id + sku_id + level_id 匹配

步骤3:计算佣金金额

按比例计算(rate > 0):
按固定金额计算(rate = 0,使用 money):

步骤4:佣金分配

一级佣金:
  • 分配给 $fenxiao_info(直接推荐人)

  • 条件:$fenxiao_info['status'] == 1(正常状态)

二级佣金:
  • 分配给 $parent_fenxiao_info(一级的上级)

  • 条件:$level_config >= 2 且 $parent_fenxiao_info['status'] == 1

三级佣金:
  • 分配给 $grand_parent_fenxiao_info(二级的上级)

  • 条件:$level_config >= 3 且 $grand_parent_fenxiao_info['status'] == 1

3.3 特殊规则

分销商自购处理

  • 配置项:self_purchase_rebate(是否开启分销商自购返佣)

  • 如果 self_purchase_rebate = 0 且购买人是分销商:

  • 跳过直接推荐人,佣金给上级分销商

商品价格计算

  • 优先使用 goods_sku.fenxiao_price(分销价)

  • 如果分销价为0,使用订单实际金额 real_goods_money


四、分销关系绑定

4.1 绑定时机配置 (child_condition)

  • 1:首次点击分享链接 (alter_share_relation)

  • 2:首次下单 (order_create)

  • 3:首次付款 (order_pay)

4.2 绑定逻辑 (Fenxiao::bindRelation)

  1. 检查触发场景是否匹配配置

  1. 检查用户是否已有分销关系(已有则不再绑定)

  1. 检查推荐人是否为分销商

  1. 绑定关系:member.fenxiao_id = 推荐人的fenxiao_id

  1. 更新统计:fenxiao.one_child_num++

  1. 触发升级检测

4.3 成为分销商条件 (fenxiao_condition)

  • 0:无条件 - 自动成为

  • 1:申请 - 需要审核

  • 2:消费次数 - 达到指定订单数

  • 3:消费金额 - 达到指定金额

  • 4:购买指定商品 - 购买指定商品ID列表中的商品


五、商品分销配置

5.1 商品分销类型 (goods.fenxiao_type)

  • 1:默认规则 - 使用分销商等级的默认佣金比例

  • 2:自定义规则 - 使用商品SKU级别的自定义佣金

5.2 自定义规则配置 (fenxiao_goods_sku)

  • 每个商品SKU可为不同等级设置不同佣金

  • 字段:one_rateone_moneytwo_ratetwo_moneythree_ratethree_money

  • 优先级:rate > 0 时按比例,否则按 money 固定金额


六、佣金结算机制

6.1 结算时机 (FenxiaoOrder::settlement)

  • 订单完成时触发结算

  • 只结算:is_settlement = 0 且 is_refund = 0 的订单

6.2 结算流程

  1. 更新订单状态:is_settlement = 1

  1. 增加分销商账户余额:fenxiao.account += commission

  1. 增加累计佣金:fenxiao.total_commission += commission

  1. 记录账户流水:FenxiaoAccount::addAccount()

  1. 发送佣金发放通知

6.3 提现配置

  • 最低提现额度 (withdraw)

  • 提现手续费 (withdraw_rate)

  • 提现审核 (withdraw_status)

  • 结算天数 (settlement_day)


七、关键配置项

7.1 分销基本配置 (FENXIAO_BASICS_CONFIG)

7.2 分销商配置 (FENXIAO_CONFIG)

7.3 上下级关系配置 (FENXIAO_RELATION_CONFIG)


八、数据统计字段

8.1 分销商统计 (fenxiao 表)

  • one_fenxiao_order_num: 一级分销订单总数

  • one_fenxiao_order_money: 一级分销订单佣金总额

  • one_fenxiao_total_order: 一级分销订单总额(商品金额)

  • one_child_num: 一级下线人数(非分销商)

  • one_child_fenxiao_num: 一级下线分销商人数

  • two_child_fenxiao_num: 二级下线分销商人数

  • total_commission: 累计佣金总额

8.2 统计更新时机

  • 订单完成时:更新 one_fenxiao_order_numone_fenxiao_order_moneyone_fenxiao_total_order

  • 绑定关系时:更新 one_child_num

  • 添加分销商时:更新 one_child_fenxiao_numtwo_child_fenxiao_num


九、扩展开发建议

9.1 添加新等级

  1. 在 fenxiao_level 表添加新等级记录

  1. 设置 level_num(确保大于现有等级)

  1. 配置佣金比例和升级条件

  1. 升级逻辑会自动检测新等级

9.2 修改返点规则

  1. 修改等级佣金比例:直接更新 fenxiao_level 表的 one_ratetwo_ratethree_rate

  1. 修改商品级佣金:更新 fenxiao_goods_sku 表

  1. 如需新增返点层级:修改 FenxiaoOrder::calculate 方法,增加四级分销逻辑

9.3 自定义升级条件

  • 在 fenxiao_level 表添加新字段

  • 修改 Fenxiao::fenxiaoUpgrade 方法,增加新条件的判断逻辑


十、关键代码文件位置

功能文件路径
分销商管理addon/fenxiao/model/Fenxiao.php
分销等级addon/fenxiao/model/FenxiaoLevel.php
订单佣金计算addon/fenxiao/model/FenxiaoOrder.php
分销配置addon/fenxiao/model/Config.php
商品分销addon/fenxiao/model/FenxiaoGoods.php
后台管理addon/fenxiao/shop/controller/Fenxiao.php


十一、注意事项

  1. 分销商状态:只有 status = 1 的分销商才能获得佣金

  1. 订单状态:只有已结算且未退款的订单才计入统计

  1. 等级升级:按 level_num 升序检查,满足条件即升级到第一个匹配的等级

  1. 默认等级:is_default = 1 的等级为新分销商的初始等级

  1. 分销层级限制:系统最多支持3级分销,配置超过3级会被限制为2级


我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求...
请立即点击咨询我们或拨打咨询热线: 138-519-41123,我们会详细为你一一解答你心中的疑难。项目经理在线

我们已经准备好了,你呢?

2025我们与您携手共赢,为您的企业形象保驾护航!

在线客服
联系方式

热线电话

138-519-41123

上班时间

周一到周五

公司电话

138-519-41123

二维码
微信
线