chore(brand): 统一将品牌名从雄戈小酒更改为橙虎小酒

- 更新alisms插件配置中的签名值
- 修改shopro插件中所有SQL脚本的品牌名称引用
- 更新商城配置、商品分类、演示数据中的品牌名称
- 替换后台登录页面的品牌标识
- 更新汇付分账配置中的媒介名称
- 修改登录预览生成脚本中的品牌显示
```
这个提交包含在:
可乐加冰
2026-10-28 14:55:54 +08:00
父节点 8f7fae009e
当前提交 a8cdc763cb
共有 57 个文件被更改,包括 1265 次插入 和 2287 次删除

查看文件

@@ -30,7 +30,7 @@ return [
'title' => '签名',
'type' => 'string',
'content' => [],
'value' => '雄戈小酒',
'value' => '橙虎小酒',
'rule' => 'required',
'msg' => '',
'tip' => '',

查看文件

@@ -0,0 +1,304 @@
# 橙虎小酒商城 · 后台使用手册(分销 & 区域公司)
> 面向店铺运营人员,无需技术背景。按步骤操作即可。
> 后台路径:**Shopro 商城管理** → 左侧菜单 **分销中心** / **区域公司**。
---
## 一、先搞懂两件事
| 功能 | 一句话说明 | 钱给谁 |
|------|------------|--------|
| **分销中心** | 用户分享商品,发展下级,按「推荐关系」拿推广差价 | 分销商(推广人) |
| **区域公司** | 按订单**收货地址**的省 / 市 / 区县,给当地代理公司拿区域差价 | 区域公司负责人 |
两者**可以同时开启**:同一笔订单,既可能给推荐链上的分销商算差价,也可能给收货地址对应区域的区域公司算差价(商品需允许参与,见下文)。
**区域公司怎么匹配订单?**
系统看买家订单里的**收货省、市、区县**,去查您是否已为该区域配置了「正式区域公司」。没有配置的区域,不会产生区域差价。
---
## 二、分销中心 · 推荐配置顺序(首次上线)
按下面顺序做,不容易漏项:
1. **分销设置** — 打开分销、定规则(层级、怎么成为分销商、什么时候结算等)
2. **分销等级** — 每个等级填好差价比例(及可选的级差档位、管理奖)
3. **分销商品** — 哪些商品参与分销,必要时单独改差价
4. **分销商** — 审核申请、调整等级、处理待升级
5. 日常看 **分销订单**、**佣金明细**、**分销动态**
---
## 三、分销中心 · 各菜单怎么用
### 1. 分销设置
**路径:** 分销中心 → 分销设置 → 点右下角 **保存**。
#### (1)基础设置
| 设置项 | 建议怎么选 | 通俗解释 |
|--------|------------|----------|
| **分销层级** | 按业务选一级 / 二级 / 三级;不用分销选「关闭」 | 最多向上几层上级能拿推广差价 |
| **分销内购** | 需要则「开启」 | 分销商自己买也能给自己返差价 |
| **分销商锁定下线条件** | 常用「点击分享链接」或「首次支付」 | 客户什么时候算「绑在这个分销商名下」 |
| **分销商审核** | 要控质量选「需要」 | 用户申请后是否必须后台通过 |
| **越级升级** | 一般「不允许」 | 能否跳过中间等级直接升到高等级 |
| **升级审核** | 看是否需要人工把关 | 达标后是否还要您点通过才升级 |
> **默认差价比例**不在本页填,请到 **分销等级** 里按等级设置。
#### (2)默认分销商设置
| 成为分销商条件 | 适用场景 |
|----------------|----------|
| **自助申请** | 用户在小程序里填表申请(需配合「完善资料」) |
| **购买任意商品** | 买过指定商品自动成为分销商 |
| **消费累计** | 累计消费满 X 元自动成为 |
- **完善资料**:申请时要填的字段(姓名、手机号、上传图片等),可自定义。
- **申请协议**:可挂一篇富文本协议,用户勾选同意。
#### (3)级差与管理奖(高级,可按需开)
| 开关 | 含义(简版) |
|------|----------------|
| **推广分佣** | 按一级 / 二级 / 三级「百分比」在推荐链上分差价 |
| **级差奖** | 按各等级「固定档位(元)」算差额;**商品上要勾选「参与级差奖」** |
| **管理奖** | 链上各级按「管理奖比例」再拿一份;**商品上要勾选「参与管理奖」** |
| **复购推荐人分佣** | 老客户再次购买,上级是否还能拿推广差价 |
| **本人复购立减** | 老客户再买指定商品,付款时直接减价(不是事后返现);需在商品上勾选「参与复购立减」 |
#### (4)结算条件
| 设置项 | 说明 |
|--------|------|
| **商品结算方式** | 按「商品标价」还是「用户实际支付价(不含运费)」算差价 |
| **差价结算方式** | 支付后 / 确认收货 / 订单完成 / 手动打款 — 决定差价何时进入可提现状态 |
| **退款扣除差价** | 退款后是否扣回已发或待发差价 |
| **退款扣除分销业绩** | 退款后是否扣回计入升级、统计的业绩 |
---
### 2. 分销等级
**路径:** 分销中心 → 分销等级 → 添加 / 编辑。
每个等级单独保存一次,主要填:
- **等级权重**:数字越大等级越高(一级是基础等级)。
- **等级名称、徽章**:小程序里展示用。
- **一级 / 二级 / 三级差价比例**:该等级的人处在对应推荐位置时,按订单金额 × 比例拿差价。
- **级差档位金额**(若开了级差奖):填本等级的「档位」,和订单金额无关,按档位差额计算。
- **管理奖比例**(若开了管理奖):本等级拿 订单金额 × 比例。
**二级及以上**可设 **升级条件**(消费金额、团队人数、分销订单金额/单数、下级分销商人数等),选「满足任意一条」或「全部满足」。
> 改完等级后,请到 **分销商品** 检查是否要用「独立规则」覆盖某个商品的差价。
---
### 3. 分销商品
**路径:** 分销中心 → 分销商品。
| 操作 | 说明 |
|------|------|
| 列表点 **参与 / 不参与** | 快速开关某商品是否走分销 |
| 点 **编辑** | 详细设置 |
编辑页重点:
| 项 | 说明 |
|----|------|
| **是否参与** | 关 = 该商品不产生任何分销差价 |
| **差价规则** | 默认(跟等级走)/ 独立 / 批量 — 多数商品用「默认规则」即可 |
| **分销商业绩** | 「计入」才会算进升级、团队业绩统计 |
| **参与级差奖 / 管理奖 / 复购立减** | 与「分销设置」里总开关配合使用 |
| **参与区域公司** | 关 = 该商品订单**不给区域公司**分区域差价(默认开) |
---
### 4. 分销商
**路径:** 分销中心 → 分销商。
| 标签页 | 您要做什么 |
|--------|------------|
| **分销商** | 查所有人、改等级、禁用、看团队 |
| **待审核** | 通过 / 拒绝新申请 |
| **待升级** | 用户已达标,等您确认升级(若开了升级审核) |
常用:搜索手机号 / 昵称 → 点详情 → 改等级或审核。
---
### 5. 分销订单、佣金明细、分销动态
| 菜单 | 用途 |
|------|------|
| **分销订单** | 哪些订单产生了分销业绩 |
| **佣金明细** | 每一笔差价记录;可按规则 **结算 / 退回**(若设置为手动打款或需人工处理) |
| **分销动态** | 绑定关系、升级、团队变化等日志,便于核对纠纷 |
---
## 四、区域公司 · 推荐配置顺序(首次上线)
1. **公司设置** — 打开功能、选分佣模式、结算时机、申请表单
2. **公司等级** — 省 / 市 / 区县各档差价(比例或固定金额)
3. **区域公司** — 给用户绑定「负责哪块区域」;同一区域同一层级只能有一个正式公司
4. **分销商品** — 确认商品「参与区域公司」为开启(在分销商品里)
5. 日常看 **业绩看板**、**公司订单**、**差价明细**
---
## 五、区域公司 · 各菜单怎么用
### 1. 公司设置
**路径:** 区域公司 → 公司设置 → **保存设置**。
| 设置项 | 说明 |
|--------|------|
| **区域公司开关** | 关 = 整个区域差价功能停用 |
| **申请需审核** | 用户在小程序申请后,是否必须后台通过 |
| **差价结算时机** | 支付后 / 确认收货 / 订单完成(与分销结算相互独立,各管各的) |
| **分佣模式** | 见下表 |
| **申请表单字段** | 用户申请区域公司时要填的内容(如姓名、手机号、身份证图) |
**分佣模式(三选一,请和业务方定好再改):**
| 模式 | 通俗理解 |
|------|----------|
| **叠加模式** | 同一单:省、市、区县公司**各拿各的**全额(若都已配置) |
| **独占模式** | 只给**最细一级**:有区县只给区县;没有区县才给市;再没有才给省 |
| **级差模式** | 省 / 市 / 区都配置时,按档位**差额**分,避免重复发满额 |
**差价怎么算:**
- **比例**:按该订单商品**实付金额** × 百分比。
- **固定金额**:按**每个订单商品一行**计一次固定钱(**不乘购买数量**)。
**各级差价配置**表格来自 **公司等级**;本页可点「编辑」或「管理公司等级」跳转维护。
---
### 2. 公司等级
**路径:** 区域公司 → 公司等级 → 添加 / 编辑。
| 字段 | 填写提示 |
|------|----------|
| **等级权重** | 数字越大等级越高;建议与省 / 市 / 区层级对应 |
| **等级名称** | 如「省级公司」「贵阳市级公司」 |
| **区域层级** | 省级 / 市级 / 区县级 — 决定这类等级管哪一层地理范围 |
| **差价类型** | 实付比例 **或** 固定金额(元/单) |
---
### 3. 区域公司(人员与区域绑定)
**路径:** 区域公司 → 区域公司 → **添加** / 编辑 / 审核。
**后台添加时:**
1. 搜索并选择**小程序用户**(须已注册)。
2. 选 **区域层级**(省 / 市 / 区县)。
3. 选 **公司区域**(省市区 cascader)。
4. 选 **公司等级**(决定默认差价规则)。
5. **差价设置**:一般用「等级通用配置」;个别代理可「单独设置差价」。
**注意:** 同一 **区域 + 同一层级** 只能有一个**正式**区域公司;重复添加会提示「该区域已有正式公司」。
| 标签 | 操作 |
|------|------|
| **待审核** | 通过 / 拒绝小程序申请 |
| **正常 / 已禁用** | 禁用后该区域不再给该用户发区域差价 |
---
### 4. 业绩看板
**路径:** 区域公司 → 业绩看板。
按日期查看:正式公司数、待审核数、区域订单数、销售额、差价总额、待结算差价,以及区域销售 TOP 榜。用于日常汇报,无需改数据。
---
### 5. 公司订单、差价明细
| 菜单 | 用途 |
|------|------|
| **公司订单** | 哪些订单触发了区域差价 |
| **差价明细** | 每笔区域差价;支持导出、结算、退回(按权限) |
---
## 六、小程序端用户会看到什么(便于您答疑)
**分销:** 个人中心 → 分销中心(推广商品、团队、佣金、申请分销商等,以您装修为准)。
**区域公司:** 用户可在小程序申请成为区域公司;若开启审核,提交后状态为「待审核」,通过后在对应收货区域订单上产生区域差价。
---
## 七、常见问题
**Q1:开了分销,为什么没差价?**
- 分销设置里 **分销层级** 是否为「关闭」;
- **分销商品** 是否「参与」;
- 买家是否通过分销商链接绑定(看「锁定下线条件」);
- 是否还没到 **结算时机**(确认收货前可能只显示「待结算」)。
**Q2:区域公司没差价?**
- **公司设置** 开关是否打开;
- 该 **省 / 市 / 区县** 是否已添加正式区域公司;
- 订单 **收货地址** 是否填写完整;
- **分销商品** 里是否关闭了「参与区域公司」。
**Q3:同一区域能否设两个市级公司?**
- 不能。同一区域、同一层级只能一个正式公司。
**Q4:分销和区域公司会不会重复?**
- 会同时存在两套规则:一套给推荐链上的分销商,一套给收货地区域公司。是否都给、给多少,由各自开关和商品上的「参与」项决定。
**Q5:改设置后旧订单会变吗?**
- 一般 **已生成的订单** 按下单时的规则;**新订单** 按保存后的新规则。大改规则前建议先小范围试一单。
**Q6:用户分享绑不上下级?**
- 到 **分销设置** 看「分销商锁定下线条件」,常用「点击分享链接」;改完后让分销商重新分享新链接测试。
---
## 八、日常运营检查清单(可打印)
**每周建议看一眼:**
- [ ] 分销 → 待审核、待升级是否积压
- [ ] 区域公司 → 待审核是否处理
- [ ] 佣金明细 / 差价明细 → 待结算是否异常偏多
- [ ] 新上架商品 → 是否已在「分销商品」里设为参与(如需分销或区域差价)
**每月建议核对:**
- [ ] 分销等级、区域公司等级 与 当前政策是否一致
- [ ] 业绩看板 / 分销订单 与 财务对账
---
## 九、需要技术同事协助时怎么说
把下面信息发给服务商即可:
1. 问题订单号、买家手机号、下单时间
2. 当时收货省市区
3. 相关分销商手机号(如有)
4. 区域公司名称或负责人手机号(如有)
5. 截图:分销设置、该商品分销编辑页、区域公司列表
---
*文档版本:与当前 Shopro 后台「分销中心」「区域公司」菜单一致。若您后台菜单名称略有不同,以实际显示为准。*

查看文件

@@ -11,8 +11,8 @@ UPDATE `fa_shopro_decorate_content`
SET `content` = CAST(JSON_SET(
IFNULL(CAST(`content` AS JSON), JSON_OBJECT('name', '', 'style', 1, 'height', 530, 'radius', 16)),
'$.list', JSON_ARRAY(
JSON_OBJECT('image', @img_main, 'path', CONCAT('/pages/goods/detail?id=', IFNULL(@g1, 0)), 'path_type', 1, 'path_name', '雄戈小酒礼盒', 'name', '', 'bgcolor', '#FAFAF8'),
JSON_OBJECT('image', @img_bag, 'path', CONCAT('/pages/goods/detail?id=', IFNULL(@g2, 0)), 'path_type', 1, 'path_name', '雄戈小酒礼袋', 'name', '', 'bgcolor', '#FAFAF8')
JSON_OBJECT('image', @img_main, 'path', CONCAT('/pages/goods/detail?id=', IFNULL(@g1, 0)), 'path_type', 1, 'path_name', '橙虎小酒礼盒', 'name', '', 'bgcolor', '#FAFAF8'),
JSON_OBJECT('image', @img_bag, 'path', CONCAT('/pages/goods/detail?id=', IFNULL(@g2, 0)), 'path_type', 1, 'path_name', '橙虎小酒礼袋', 'name', '', 'bgcolor', '#FAFAF8')
),
'$.radius', 16,
'$.height', 530

查看文件

@@ -1,4 +1,4 @@
-- 雄戈小酒:清理图片空间中与酒类无关的目录和文件
-- 橙虎小酒:清理图片空间中与酒类无关的目录和文件
-- 涉及表:fa_attachment_nav(目录)、fa_attachment(图片,软删除进回收站)
-- 策略:厨房/厨具/富强/熊猫等旧目录 → 删除;图片 → is_del=1(回收站可恢复)
-- 保留:名称含 酒 / 雄戈 / xiongge 的目录与文件

查看文件

@@ -1,4 +1,4 @@
-- 雄戈小酒:清理旧「小众厨房设备」遗留的非酒类商品
-- 橙虎小酒:清理旧「小众厨房设备」遗留的非酒类商品
-- 策略:软删除(deletetime + 下架),保留酒类/雄戈演示商品
-- 执行前:请先备份 fa_shopro_goods 及相关表
-- 执行后:后台清除 Shopro 缓存 → 商品管理刷新列表

查看文件

@@ -1,4 +1,4 @@
-- 雄戈小酒:将线上数据库「雄哥」统一改为「雄戈」(含演示分类/商品/装修)
-- 橙虎小酒:将线上数据库「雄哥」统一改为「雄戈」(含演示分类/商品/装修)
-- 执行后:清除 Shopro 缓存 + 小程序重新编译
-- 建议先备份 fa_shopro_category、fa_shopro_goods、fa_shopro_decorate_content
@@ -7,7 +7,7 @@ SET @now = UNIX_TIMESTAMP();
-- ========== 1. Shopro 商城配置 ==========
UPDATE `fa_shopro_config`
SET `value` = REPLACE(REPLACE(REPLACE(REPLACE(`value`,
'雄哥小酒', '雄戈小酒'),
'雄哥小酒', '橙虎小酒'),
'雄哥系列', '雄戈系列'),
'贵州雄哥酒业有限公司', '贵州雄戈酒业有限公司'),
'雄哥酒业', '雄戈酒业')
@@ -15,23 +15,23 @@ WHERE `value` LIKE '%雄哥%';
-- ========== 2. FastAdmin 站点名称 ==========
UPDATE `fa_config`
SET `value` = '雄戈小酒'
WHERE `name` = 'name' AND (`value` LIKE '%雄哥%' OR `value` = '雄戈小酒');
SET `value` = '橙虎小酒'
WHERE `name` = 'name' AND (`value` LIKE '%雄哥%' OR `value` = '橙虎小酒');
-- ========== 3. 商品分类(含首页宫格「雄哥系列」等) ==========
UPDATE `fa_shopro_category`
SET `name` = REPLACE(REPLACE(`name`, '雄哥小酒', '雄戈小酒'), '雄哥系列', '雄戈系列'),
`description` = REPLACE(REPLACE(IFNULL(`description`, ''), '雄哥小酒', '雄戈小酒'), '雄哥', '雄戈'),
SET `name` = REPLACE(REPLACE(`name`, '雄哥小酒', '橙虎小酒'), '雄哥系列', '雄戈系列'),
`description` = REPLACE(REPLACE(IFNULL(`description`, ''), '雄哥小酒', '橙虎小酒'), '雄哥', '雄戈'),
`updatetime` = @now
WHERE `name` LIKE '%雄哥%' OR IFNULL(`description`, '') LIKE '%雄哥%';
-- ========== 4. 演示商品及全部含「雄哥」的商品 ==========
UPDATE `fa_shopro_goods`
SET `title` = REPLACE(REPLACE(`title`, '雄哥小酒', '雄戈小酒'), '雄哥', '雄戈'),
SET `title` = REPLACE(REPLACE(`title`, '雄哥小酒', '橙虎小酒'), '雄哥', '雄戈'),
`subtitle` = REPLACE(IFNULL(`subtitle`, ''), '雄哥', '雄戈'),
`content` = REPLACE(REPLACE(REPLACE(IFNULL(`content`, ''),
'贵州雄哥酒业有限公司', '贵州雄戈酒业有限公司'),
'雄哥小酒', '雄戈小酒'),
'雄哥小酒', '橙虎小酒'),
'雄哥', '雄戈'),
`updatetime` = @now
WHERE `title` LIKE '%雄哥%'
@@ -40,9 +40,9 @@ WHERE `title` LIKE '%雄哥%'
-- ========== 5. 富文本 ==========
UPDATE `fa_shopro_richtext`
SET `title` = REPLACE(REPLACE(`title`, '雄哥小酒', '雄戈小酒'), '雄哥', '雄戈'),
SET `title` = REPLACE(REPLACE(`title`, '雄哥小酒', '橙虎小酒'), '雄哥', '雄戈'),
`content` = REPLACE(REPLACE(REPLACE(`content`,
'雄哥小酒', '雄戈小酒'),
'雄哥小酒', '橙虎小酒'),
'贵州雄哥酒业有限公司', '贵州雄戈酒业有限公司'),
'雄哥', '雄戈'),
`updatetime` = @now
@@ -50,14 +50,14 @@ WHERE `title` LIKE '%雄哥%' OR `content` LIKE '%雄哥%';
-- ========== 6. 装修模板(轮播 path_name、首页宫格 list 等 JSON) ==========
UPDATE `fa_shopro_decorate`
SET `name` = REPLACE(REPLACE(`name`, '雄哥小酒', '雄戈小酒'), '雄哥', '雄戈'),
SET `name` = REPLACE(REPLACE(`name`, '雄哥小酒', '橙虎小酒'), '雄哥', '雄戈'),
`updatetime` = @now
WHERE `name` LIKE '%雄哥%';
UPDATE `fa_shopro_decorate_content`
SET `content` = REPLACE(REPLACE(REPLACE(REPLACE(`content`,
'雄哥小酒礼盒', '雄戈小酒礼盒'),
'雄哥小酒', '雄戈小酒'),
'雄哥小酒礼盒', '橙虎小酒礼盒'),
'雄哥小酒', '橙虎小酒'),
'雄哥系列', '雄戈系列'),
'雄哥', '雄戈')
WHERE `content` LIKE '%雄哥%';

查看文件

@@ -1,4 +1,4 @@
-- 雄戈小酒:修复分类结构 + 首页宫格 + 商城名称
-- 橙虎小酒:修复分类结构 + 首页宫格 + 商城名称
-- 【根因】顶级分类 type 必须是 1/2/3/4(展示样式),不能是 shop;shop 仅用于子分类
-- 执行后请清除商城缓存
@@ -17,14 +17,14 @@ SET @img_hot = '/uploads/demo/xiongge/icon-cat-hot.png';
-- ========== 1. 商城名称 ==========
UPDATE `fa_shopro_config`
SET `value` = JSON_SET(CAST(`value` AS JSON), '$.name', '雄戈小酒')
SET `value` = JSON_SET(CAST(`value` AS JSON), '$.name', '橙虎小酒')
WHERE `name` = 'shopro' AND `group` = 'basic' AND JSON_VALID(`value`) = 1;
UPDATE `fa_shopro_config`
SET `value` = REPLACE(REPLACE(REPLACE(`value`,
'"name":"小众厨房设备"', '"name":"雄戈小酒"'),
'"name":"小众厨房设备商城"', '"name":"雄戈小酒"'),
'"name":"贤鼎酒业"', '"name":"雄戈小酒"')
'"name":"小众厨房设备"', '"name":"橙虎小酒"'),
'"name":"小众厨房设备商城"', '"name":"橙虎小酒"'),
'"name":"贤鼎酒业"', '"name":"橙虎小酒"')
WHERE `name` = 'shopro' AND `group` = 'basic';
-- ========== 2. 重建分类树 ==========
@@ -35,7 +35,7 @@ DELETE FROM `fa_shopro_category` WHERE `pid` = 0;
-- 顶级分类:type=2 表示「一级分类」样式(分类 Tab 页使用)
INSERT INTO `fa_shopro_category` (`name`, `type`, `image`, `pid`, `weigh`, `description`, `status`, `createtime`, `updatetime`)
VALUES ('雄戈小酒', '2', @img_root, 0, 100, '酒类商城', 'normal', @now, @now);
VALUES ('橙虎小酒', '2', @img_root, 0, 100, '酒类商城', 'normal', @now, @now);
SET @root_id = LAST_INSERT_ID();

查看文件

@@ -1,4 +1,4 @@
-- 雄戈小酒演示数据 | 数据库 xgsc.gynhc.com | 表前缀 fa_
-- 橙虎小酒演示数据 | 数据库 xgsc.gynhc.com | 表前缀 fa_
-- 【请先执行】seed_liquor_categories.sql(商城名 + 酒类分类 + 首页宫格)
-- 执行前:将演示图片上传到 public/uploads/demo/xiongge/
-- 商品:xg-box-main / xg-product-bottle / xg-product-gift / xg-product-tasting / xg-product-banquet
@@ -42,10 +42,10 @@ SET @dispatch_id = (
-- ========== 清理旧演示数据 ==========
DELETE FROM `fa_shopro_goods_sku_price` WHERE `sn` LIKE 'XG-DEMO-%';
DELETE FROM `fa_shopro_goods` WHERE `title` LIKE '【演示】雄戈小酒%';
DELETE FROM `fa_shopro_goods` WHERE `title` LIKE '【演示】橙虎小酒%';
-- ========== 分类(依赖 seed_liquor_categories.sql 已创建子分类) ==========
SET @cat_root = (SELECT id FROM `fa_shopro_category` WHERE `name` = '雄戈小酒' AND `pid` = 0 LIMIT 1);
SET @cat_root = (SELECT id FROM `fa_shopro_category` WHERE `name` = '橙虎小酒' AND `pid` = 0 LIMIT 1);
SET @cat_gift = (SELECT id FROM `fa_shopro_category` WHERE `name` = '礼盒装' AND `type` = 'shop' ORDER BY id DESC LIMIT 1);
SET @cat_series = (SELECT id FROM `fa_shopro_category` WHERE `name` = '雄戈系列' AND `type` = 'shop' ORDER BY id DESC LIMIT 1);
SET @cat_single = (SELECT id FROM `fa_shopro_category` WHERE `name` = '单瓶装' AND `type` = 'shop' ORDER BY id DESC LIMIT 1);
@@ -59,7 +59,7 @@ INSERT INTO `fa_shopro_goods` (
`price`, `original_price`, `is_sku`, `likes`, `views`, `sales`, `show_sales`,
`dispatch_type`, `dispatch_ids`, `createtime`, `updatetime`
) VALUES (
'normal', '【演示】雄戈小酒 礼盒装', '一男人的朋友一', 'up', 400, CAST(@cat_gift AS CHAR),
'normal', '【演示】橙虎小酒 礼盒装', '一男人的朋友一', 'up', 400, CAST(@cat_gift AS CHAR),
@img_main, CONCAT(@img_main, ',', @img_gift, ',', @photo_box, ',', @photo_bag), '[]',
CONCAT(
'<p>贵州雄戈酒业有限公司出品</p>',
@@ -81,7 +81,7 @@ INSERT INTO `fa_shopro_goods` (
`type`, `title`, `subtitle`, `status`, `weigh`, `category_ids`, `image`, `images`, `params`, `content`,
`price`, `original_price`, `is_sku`, `show_sales`, `dispatch_type`, `dispatch_ids`, `createtime`, `updatetime`
) VALUES (
'normal', '【演示】雄戈小酒 品鉴装', '一男人的朋友一', 'up', 300, CAST(@cat_series AS CHAR),
'normal', '【演示】橙虎小酒 品鉴装', '一男人的朋友一', 'up', 300, CAST(@cat_series AS CHAR),
@img_tasting, CONCAT(@img_tasting, ',', @photo_box), '[]', CONCAT('<p>120ml×2 / 49%vol</p><p><img src=\"', @photo_box, '\"></p>'), '128.00', 158.00, 0, 188,
'express', CAST(@dispatch_id AS CHAR), @now, @now
);
@@ -96,7 +96,7 @@ INSERT INTO `fa_shopro_goods` (
`type`, `title`, `subtitle`, `status`, `weigh`, `category_ids`, `image`, `images`, `params`, `content`,
`price`, `original_price`, `is_sku`, `show_sales`, `dispatch_type`, `dispatch_ids`, `createtime`, `updatetime`
) VALUES (
'normal', '【演示】雄戈小酒 单瓶装', '一男人的朋友一', 'up', 200, CAST(@cat_single AS CHAR),
'normal', '【演示】橙虎小酒 单瓶装', '一男人的朋友一', 'up', 200, CAST(@cat_single AS CHAR),
@img_bottle, CONCAT(@img_bottle, ',', @photo_box), '[]', CONCAT('<p>120ml / 49%vol</p><p><img src=\"', @photo_box, '\"></p>'), '68.00', 88.00, 0, 99,
'express', CAST(@dispatch_id AS CHAR), @now, @now
);
@@ -111,7 +111,7 @@ INSERT INTO `fa_shopro_goods` (
`type`, `title`, `subtitle`, `status`, `weigh`, `category_ids`, `image`, `images`, `params`, `content`,
`price`, `original_price`, `is_sku`, `show_sales`, `dispatch_type`, `dispatch_ids`, `createtime`, `updatetime`
) VALUES (
'normal', '【演示】雄戈小酒 商务宴请装', '一男人的朋友一', 'up', 100, CAST(@cat_banquet AS CHAR),
'normal', '【演示】橙虎小酒 商务宴请装', '一男人的朋友一', 'up', 100, CAST(@cat_banquet AS CHAR),
@img_banquet, CONCAT(@img_banquet, ',', @img_bag, ',', @photo_bag), '[]', CONCAT('<p>120ml×10 / 49%vol</p><p><img src=\"', @photo_bag, '\"></p>'), '528.00', 628.00, 0, 66,
'express', CAST(@dispatch_id AS CHAR), @now, @now
);
@@ -126,8 +126,8 @@ UPDATE `fa_shopro_decorate_content`
SET `content` = JSON_SET(
IFNULL(`content`, '{}'),
'$.list', JSON_ARRAY(
JSON_OBJECT('image', @img_main, 'path', CONCAT('/pages/goods/detail?id=', @g1), 'path_type', 1, 'path_name', '雄戈小酒礼盒', 'name', '', 'bgcolor', '#FAFAF8'),
JSON_OBJECT('image', @img_bag, 'path', CONCAT('/pages/goods/detail?id=', @g4), 'path_type', 1, 'path_name', '雄戈小酒礼袋', 'name', '', 'bgcolor', '#FAFAF8'),
JSON_OBJECT('image', @img_main, 'path', CONCAT('/pages/goods/detail?id=', @g1), 'path_type', 1, 'path_name', '橙虎小酒礼盒', 'name', '', 'bgcolor', '#FAFAF8'),
JSON_OBJECT('image', @img_bag, 'path', CONCAT('/pages/goods/detail?id=', @g4), 'path_type', 1, 'path_name', '橙虎小酒礼袋', 'name', '', 'bgcolor', '#FAFAF8'),
JSON_OBJECT('image', @img_tasting, 'path', CONCAT('/pages/goods/detail?id=', @g2), 'path_type', 1, 'path_name', '品鉴装', 'name', '', 'bgcolor', '#FAFAF8')
),
'$.radius', 16,
@@ -161,4 +161,4 @@ WHERE `category` = 'user' AND JSON_VALID(IFNULL(`content`, '{}')) = 1;
-- ========== 回滚(需要时取消注释) ==========
-- DELETE FROM fa_shopro_goods_sku_price WHERE sn LIKE 'XG-DEMO-%';
-- DELETE FROM fa_shopro_goods WHERE title LIKE '【演示】雄戈小酒%';
-- DELETE FROM fa_shopro_goods WHERE title LIKE '【演示】橙虎小酒%';

查看文件

@@ -1,7 +1,7 @@
-- 雄戈小酒:统一替换旧品牌名(小众厨房设备 / 贤鼎酒业 等)
-- 橙虎小酒:统一替换旧品牌名(小众厨房设备 / 贤鼎酒业 等)
-- 执行后:清除 Shopro 缓存 + 后台「系统配置」刷新 + 小程序重新编译
SET @brand = '雄戈小酒';
SET @brand = '橙虎小酒';
SET @year = YEAR(CURDATE());
-- ========== 1. 商城基础配置(名称 + 版权) ==========

查看文件

@@ -1,4 +1,4 @@
-- 雄戈小酒:更新演示商品包装图(含用户实拍礼盒 + 礼袋)
-- 橙虎小酒:更新演示商品包装图(含用户实拍礼盒 + 礼袋)
-- 前提:已上传 public/uploads/demo/xiongge/ 下全部图片
-- 执行顺序:rename_brand_xiongge.sql → 本脚本 → 清除缓存 → 重编译小程序
@@ -24,7 +24,7 @@ UPDATE `fa_shopro_category` SET `image` = '/uploads/demo/xiongge/icon-cat-nong.p
UPDATE `fa_shopro_category` SET `image` = '/uploads/demo/xiongge/icon-cat-banquet.png', `updatetime` = @now WHERE `name` = '商务宴请' AND `type` = 'shop';
UPDATE `fa_shopro_category` SET `image` = '/uploads/demo/xiongge/icon-cat-new.png', `updatetime` = @now WHERE `name` = '新品上市' AND `type` = 'shop';
UPDATE `fa_shopro_category` SET `image` = '/uploads/demo/xiongge/icon-cat-hot.png', `updatetime` = @now WHERE `name` = '热销推荐' AND `type` = 'shop';
UPDATE `fa_shopro_category` SET `image` = @img_box, `updatetime` = @now WHERE `name` = '雄戈小酒' AND `pid` = 0;
UPDATE `fa_shopro_category` SET `image` = @img_box, `updatetime` = @now WHERE `name` = '橙虎小酒' AND `pid` = 0;
-- ========== 演示商品主图 + 相册(含两张实拍图) ==========
UPDATE `fa_shopro_goods`
@@ -70,8 +70,8 @@ UPDATE `fa_shopro_decorate_content`
SET `content` = CAST(JSON_SET(
IFNULL(CAST(`content` AS JSON), JSON_OBJECT('name', '', 'style', 1, 'height', 530, 'radius', 16)),
'$.list', JSON_ARRAY(
JSON_OBJECT('image', @img_box, 'path', CONCAT('/pages/goods/detail?id=', IFNULL(@g1, 0)), 'path_type', 1, 'path_name', '雄戈小酒礼盒', 'name', '', 'bgcolor', '#FAFAF8'),
JSON_OBJECT('image', @img_bag, 'path', CONCAT('/pages/goods/detail?id=', IFNULL(@g2, 0)), 'path_type', 1, 'path_name', '雄戈小酒礼袋', 'name', '', 'bgcolor', '#FAFAF8'),
JSON_OBJECT('image', @img_box, 'path', CONCAT('/pages/goods/detail?id=', IFNULL(@g1, 0)), 'path_type', 1, 'path_name', '橙虎小酒礼盒', 'name', '', 'bgcolor', '#FAFAF8'),
JSON_OBJECT('image', @img_bag, 'path', CONCAT('/pages/goods/detail?id=', IFNULL(@g2, 0)), 'path_type', 1, 'path_name', '橙虎小酒礼袋', 'name', '', 'bgcolor', '#FAFAF8'),
JSON_OBJECT('image', @img_taste, 'path', CONCAT('/pages/goods/detail?id=', IFNULL(@g3, 0)), 'path_type', 1, 'path_name', '品鉴装', 'name', '', 'bgcolor', '#FAFAF8')
),
'$.radius', 16,
@@ -81,5 +81,5 @@ WHERE `type` = 'banner' AND `category` = 'home';
-- 注:fa_shopro_decorate_content 无 updatetime 字段
-- 验证:
-- SELECT title, image, images FROM fa_shopro_goods WHERE title LIKE '【演示】雄戈小酒%';
-- SELECT title, image, images FROM fa_shopro_goods WHERE title LIKE '【演示】橙虎小酒%';
-- SELECT type, LEFT(content, 500) FROM fa_shopro_decorate_content WHERE category='home' AND type='banner';

查看文件

@@ -8,7 +8,7 @@ SET @now = UNIX_TIMESTAMP();
INSERT INTO `fa_shopro_richtext` (`title`, `content`, `createtime`, `updatetime`, `deletetime`)
SELECT
'退换货政策',
'<p><strong>适用范围</strong></p><p>本政策适用于「雄戈小酒」微信小程序商城购买的实体商品(酒类)。</p><p><strong>签收与验货</strong></p><p>请您在签收时当面验货。如外包装严重破损、漏液或数量不符,请当场拍照/录像并拒收或立即联系客服,我们将协助处理。</p><p><strong>退换货条件</strong></p><p>1. 未开封、不影响二次销售,且在签收后 7 日内可申请退货(具体以订单状态及商品属性为准);</p><p>2. 因运输造成的破损、漏液,请保留完整外包装及物流面单,联系客服办理补发或退款;</p><p>3. 定制类、已开封或已饮用的酒类商品,除质量问题外不支持无理由退换。</p><p><strong>售后申请路径(小程序)</strong></p><p>① 底部「我的」→ 订单卡片「售后」→ 售后列表;</p><p>② 「我的」→「我的订单」→ 进入订单详情 →「申请售后」;</p><p>③ 「我的」→「设置」→「退换货政策」(本页)。</p><p><strong>处理时效</strong></p><p>客服会在 1 个工作日内响应;审核通过后,退款按原支付渠道退回,到账时间以支付机构为准。</p><p><strong>客服</strong></p><p>商品页「客服」按钮或「我的」联系在线客服,服务时间 9:00–21:00。</p>',
'<p><strong>适用范围</strong></p><p>本政策适用于「橙虎小酒」微信小程序商城购买的实体商品(酒类)。</p><p><strong>签收与验货</strong></p><p>请您在签收时当面验货。如外包装严重破损、漏液或数量不符,请当场拍照/录像并拒收或立即联系客服,我们将协助处理。</p><p><strong>退换货条件</strong></p><p>1. 未开封、不影响二次销售,且在签收后 7 日内可申请退货(具体以订单状态及商品属性为准);</p><p>2. 因运输造成的破损、漏液,请保留完整外包装及物流面单,联系客服办理补发或退款;</p><p>3. 定制类、已开封或已饮用的酒类商品,除质量问题外不支持无理由退换。</p><p><strong>售后申请路径(小程序)</strong></p><p>① 底部「我的」→ 订单卡片「售后」→ 售后列表;</p><p>② 「我的」→「我的订单」→ 进入订单详情 →「申请售后」;</p><p>③ 「我的」→「设置」→「退换货政策」(本页)。</p><p><strong>处理时效</strong></p><p>客服会在 1 个工作日内响应;审核通过后,退款按原支付渠道退回,到账时间以支付机构为准。</p><p><strong>客服</strong></p><p>商品页「客服」按钮或「我的」联系在线客服,服务时间 9:00–21:00。</p>',
@now,
@now,
NULL
@@ -31,11 +31,11 @@ WHERE `name` = 'shopro' AND `group` = 'basic' AND JSON_VALID(`value`) = 1 AND @r
-- ========== 2. 详情顶部公共说明(不含重复标记) ==========
SET @intro_tail = '<p><strong>发货说明</strong></p><p>下单后 48 小时内安排发货(节假日顺延),默认快递配送。签收前请验货,如有破损请保留外包装并联系客服。</p><p><strong>退换货与售后查看路径</strong></p><p>① 小程序底部「我的」→ 订单区「售后」;② 「我的」→「我的订单」→ 订单详情 →「申请售后」;③ 「我的」→「设置」→「退换货政策」查看全文。</p><p><strong>客服咨询</strong></p><p>商品页点击「客服」,或在「我的」联系在线客服(9:00–21:00)。</p><p><strong>温馨提示</strong></p><p>饮酒有害健康,请勿酒后驾驶;未成年人请勿购买及饮酒。</p><p>——以下为商品原有图文详情——</p>';
-- ========== 3. 196 雄戈小酒 礼盒装 ==========
-- ========== 3. 196 橙虎小酒 礼盒装 ==========
UPDATE `fa_shopro_goods`
SET `content` = CONCAT(
'<!-- huifu-goods-intro -->',
'<p><strong>商品介绍</strong></p><p>「雄戈小酒」礼盒装,贵州雄戈酒业有限公司出品,适合商务馈赠、亲友聚会与节日送礼。礼盒内含多瓶小规格酱香型白酒,包装精致,便于携带与陈列。</p>',
'<p><strong>商品介绍</strong></p><p>「橙虎小酒」礼盒装,贵州雄戈酒业有限公司出品,适合商务馈赠、亲友聚会与节日送礼。礼盒内含多瓶小规格酱香型白酒,包装精致,便于携带与陈列。</p>',
'<p><strong>产品规格</strong></p><p>净含量:120ml×5;酒精度:49%vol;香型:酱香型白酒;产地:贵州省。</p>',
'<p><strong>饮用建议</strong></p><p>开瓶后请尽快饮用;常温避光保存。建议小杯慢饮,搭配合适餐食,切勿过量饮酒。</p>',
@intro_tail,
@@ -46,11 +46,11 @@ WHERE `id` = 196
AND `deletetime` IS NULL
AND (`content` IS NULL OR `content` NOT LIKE '%huifu-goods-intro%');
-- ========== 4. 199 雄戈小酒 商务宴请装 ==========
-- ========== 4. 199 橙虎小酒 商务宴请装 ==========
UPDATE `fa_shopro_goods`
SET `content` = CONCAT(
'<!-- huifu-goods-intro -->',
'<p><strong>商品介绍</strong></p><p>「雄戈小酒」商务宴请装,面向聚会、宴请、团队答谢等场景。手提礼袋包装,单份数量充足,方便席面分饮与携带。</p>',
'<p><strong>商品介绍</strong></p><p>「橙虎小酒」商务宴请装,面向聚会、宴请、团队答谢等场景。手提礼袋包装,单份数量充足,方便席面分饮与携带。</p>',
'<p><strong>产品规格</strong></p><p>净含量:120ml×10;酒精度:49%vol;香型:酱香型白酒;产地:贵州省。</p>',
'<p><strong>饮用建议</strong></p><p>开瓶后请尽快饮用;常温避光保存。理性饮酒,请勿酒后驾车。</p>',
@intro_tail,
@@ -65,7 +65,7 @@ WHERE `id` = 199
UPDATE `fa_shopro_goods`
SET `content` = CONCAT(
'<!-- huifu-goods-intro -->',
'<p><strong>商品介绍</strong></p><p>「雄戈小酒」销售礼盒装,以自然之味、养自然之身为理念,选用优质酱香型白酒小瓶组合,适合渠道团购、企业福利与高端礼赠。详情页下方轮播图可查看礼盒外观与实物展示。</p>',
'<p><strong>商品介绍</strong></p><p>「橙虎小酒」销售礼盒装,以自然之味、养自然之身为理念,选用优质酱香型白酒小瓶组合,适合渠道团购、企业福利与高端礼赠。详情页下方轮播图可查看礼盒外观与实物展示。</p>',
'<p><strong>产品说明</strong></p><p>具体净含量、酒精度及礼盒配置以页面标题、规格及客服说明为准;下单前如有疑问请联系在线客服确认。</p>',
'<p><strong>适用场景</strong></p><p>商务拜访、节日送礼、客户答谢、品鉴分享等。</p>',
@intro_tail,

查看文件

@@ -1,4 +1,4 @@
-- 雄戈小酒 - 轻简奢品主题:更新装修数据(TabBar + 个人中心)
-- 橙虎小酒 - 轻简奢品主题:更新装修数据(TabBar + 个人中心)
-- 数据库:xgsc.gynhc.com
-- 可与 seed_xiongge_demo.sql 一起执行,或单独执行

查看文件

@@ -1,4 +1,4 @@
-- 雄戈小酒包装主题:更新底部导航装修数据
-- 橙虎小酒包装主题:更新底部导航装修数据
-- 数据库:xgsc.gynhc.com
-- FastAdmin 默认表前缀为 fa_,实际表名通常为 fa_shopro_decorate_content
--

查看文件

@@ -1,4 +1,4 @@
-- 雄戈小酒:更新分类图标 + 商品主图(不重建分类树,适合已上线环境)
-- 橙虎小酒:更新分类图标 + 商品主图(不重建分类树,适合已上线环境)
-- 前提:public/uploads/demo/xiongge/ 下图片已上传
-- 完整包装图更新请执行 update_demo_packaging_images.sql
@@ -23,7 +23,7 @@ UPDATE `fa_shopro_category` SET `image` = '/uploads/demo/xiongge/icon-cat-banque
UPDATE `fa_shopro_category` SET `image` = '/uploads/demo/xiongge/icon-cat-new.png', `updatetime` = @now WHERE `name` = '新品上市' AND `type` = 'shop';
UPDATE `fa_shopro_category` SET `image` = '/uploads/demo/xiongge/icon-cat-hot.png', `updatetime` = @now WHERE `name` = '热销推荐' AND `type` = 'shop';
UPDATE `fa_shopro_category` SET `image` = @img_box, `updatetime` = @now WHERE `name` = '雄戈小酒' AND `pid` = 0;
UPDATE `fa_shopro_category` SET `image` = @img_box, `updatetime` = @now WHERE `name` = '橙虎小酒' AND `pid` = 0;
-- ========== 演示商品主图(4 款各不同) ==========
UPDATE `fa_shopro_goods` SET `image` = @img_box, `images` = CONCAT(@img_box, ',', @img_gift), `updatetime` = @now WHERE `title` LIKE '%礼盒装%';
@@ -39,8 +39,8 @@ UPDATE `fa_shopro_decorate_content`
SET `content` = CAST(JSON_SET(
IFNULL(CAST(`content` AS JSON), JSON_OBJECT('name', '', 'style', 1, 'height', 530, 'radius', 16)),
'$.list', JSON_ARRAY(
JSON_OBJECT('image', @img_box, 'path', CONCAT('/pages/goods/detail?id=', IFNULL(@g1, 0)), 'path_type', 1, 'path_name', '雄戈小酒礼盒', 'name', '', 'bgcolor', '#FAFAF8'),
JSON_OBJECT('image', @img_bag, 'path', CONCAT('/pages/goods/detail?id=', IFNULL(@g2, 0)), 'path_type', 1, 'path_name', '雄戈小酒礼袋', 'name', '', 'bgcolor', '#FAFAF8')
JSON_OBJECT('image', @img_box, 'path', CONCAT('/pages/goods/detail?id=', IFNULL(@g1, 0)), 'path_type', 1, 'path_name', '橙虎小酒礼盒', 'name', '', 'bgcolor', '#FAFAF8'),
JSON_OBJECT('image', @img_bag, 'path', CONCAT('/pages/goods/detail?id=', IFNULL(@g2, 0)), 'path_type', 1, 'path_name', '橙虎小酒礼袋', 'name', '', 'bgcolor', '#FAFAF8')
),
'$.radius', 16,
'$.height', 530
@@ -49,4 +49,4 @@ WHERE `type` = 'banner' AND `category` = 'home';
-- 验证:
-- SELECT name, image FROM fa_shopro_category WHERE type='shop' ORDER BY weigh DESC;
-- SELECT title, image FROM fa_shopro_goods WHERE title LIKE '【演示】雄戈小酒%';
-- SELECT title, image FROM fa_shopro_goods WHERE title LIKE '【演示】橙虎小酒%';

查看文件

@@ -23,7 +23,7 @@ class UploadSplitMedia extends Command
->addOption('goods-url', null, Option::VALUE_REQUIRED, '商品/服务明细页截图')
->addOption('order-url', null, Option::VALUE_REQUIRED, '下单场景页截图')
->addOption('pay-url', null, Option::VALUE_REQUIRED, '支付页截图')
->addOption('media-name', null, Option::VALUE_OPTIONAL, '小程序名称,默认 雄戈小酒')
->addOption('media-name', null, Option::VALUE_OPTIONAL, '小程序名称,默认 橙虎小酒')
->addOption('media-type', null, Option::VALUE_OPTIONAL, '运营媒介类型,小程序默认 S3')
->addOption('file-type', null, Option::VALUE_OPTIONAL, '汇付图片上传 file_type,默认 F24')
->addOption('save-config', null, Option::VALUE_NONE, '写入 shopro_huifu_config.split_config_online_media_json')
@@ -62,7 +62,7 @@ class UploadSplitMedia extends Command
}
$mediaName = trim((string) $input->getOption('media-name'));
if ($mediaName === '') {
$mediaName = '雄戈小酒';
$mediaName = '橙虎小酒';
}
$mediaType = trim((string) $input->getOption('media-type'));
if ($mediaType === '') {

查看文件

@@ -0,0 +1,362 @@
# -*- coding: utf-8 -*-
"""生成汇付分账相关 Word 文档"""
from pathlib import Path
from docx import Document
from docx.enum.text import WD_ALIGN_PARAGRAPH, WD_LINE_SPACING
from docx.oxml.ns import qn
from docx.shared import Cm, Pt
DOCS_DIR = Path(__file__).parent
# 甲方(平台)信息 — 修改此处后重新运行脚本即可
COMPANY = {
"name": "贵州宥川商贸有限公司",
"credit_code": "91520402MAKD45F14Y",
"huifu_id": "6666000237529347",
"legal_person": "周成",
"address": "贵州省织金县实兴乡上坝村周家寨组",
"phone": "13368531489",
"sign_place": "贵州省织金县",
"miniprogram": "橙虎小酒",
}
def output_paths():
suffix = COMPANY["name"]
return (
DOCS_DIR / f"多方分账业务合作协议-{suffix}.docx",
DOCS_DIR / f"汇付分账40%申请填写说明-{suffix}.docx",
)
def set_run_font(run, name="宋体", size=12, bold=False):
run.font.name = name
run._element.rPr.rFonts.set(qn("w:eastAsia"), name)
run.font.size = Pt(size)
run.font.bold = bold
def add_para(doc, text, align=WD_ALIGN_PARAGRAPH.JUSTIFY, size=12, bold=False, space_after=6, first_line_indent=None):
p = doc.add_paragraph()
p.alignment = align
p.paragraph_format.line_spacing_rule = WD_LINE_SPACING.ONE_POINT_FIVE
p.paragraph_format.space_after = Pt(space_after)
if first_line_indent is not None:
p.paragraph_format.first_line_indent = Cm(first_line_indent)
run = p.add_run(text)
set_run_font(run, size=size, bold=bold)
return p
def add_heading_text(doc, text, level=1):
sizes = {1: 16, 2: 14, 3: 12}
add_para(
doc,
text,
align=WD_ALIGN_PARAGRAPH.CENTER if level == 1 else WD_ALIGN_PARAGRAPH.LEFT,
size=sizes.get(level, 12),
bold=True,
space_after=10,
)
def add_info_table(doc, rows):
table = doc.add_table(rows=len(rows), cols=2)
table.style = "Table Grid"
for i, (k, v) in enumerate(rows):
table.rows[i].cells[0].text = k
table.rows[i].cells[1].text = v
for cell in table.rows[i].cells:
for para in cell.paragraphs:
para.paragraph_format.line_spacing_rule = WD_LINE_SPACING.SINGLE
for run in para.runs:
set_run_font(run, size=11)
doc.add_paragraph()
def build():
contract_output, _ = output_paths()
c = COMPANY
doc = Document()
section = doc.sections[0]
section.top_margin = Cm(2.54)
section.bottom_margin = Cm(2.54)
section.left_margin = Cm(3.17)
section.right_margin = Cm(3.17)
add_heading_text(doc, "多方分账业务合作协议", level=1)
add_para(doc, "合同编号:XGXJ-FS-________", align=WD_ALIGN_PARAGRAPH.LEFT, space_after=4)
add_para(doc, f"签订地点:{c['sign_place']}", align=WD_ALIGN_PARAGRAPH.LEFT, space_after=4)
add_para(doc, "签订日期:________年____月____日", align=WD_ALIGN_PARAGRAPH.LEFT, space_after=12)
add_heading_text(doc, "甲方(平台/分账发起方)", level=2)
add_info_table(doc, [
("名称", c["name"]),
("统一社会信用代码", c["credit_code"]),
("法定代表人", c["legal_person"]),
("住所", c["address"]),
("联系电话", c["phone"]),
("汇付商户号", c["huifu_id"]),
])
add_heading_text(doc, "乙方(分账接收方)", level=2)
add_para(doc, "主体类型(择一填写):□ 个体工商户 □ 个人(汇付进件用户)", space_after=8)
add_info_table(doc, [
("姓名/字号", "____________"),
("身份证号码", "____________________"),
("住所/经营场所", "____________________"),
("联系电话", "____________"),
("汇付商户号", "____________"),
("合作角色", "□ 推广员 □ 区域代理(区域:____________)"),
])
add_para(
doc,
f"鉴于甲方依法经营“{c['miniprogram']}”微信小程序商城,乙方自愿成为甲方推广员和/或区域代理;"
"双方依据《中华人民共和国民法典》及相关法规,就通过汇付天下有限公司(以下简称“汇付”)"
"支付通道进行延时分账结算事宜,达成如下协议:",
first_line_indent=0.74,
space_after=10,
)
articles = [
("第一条 合作内容与范围", [
"1.1 乙方在甲方平台注册并通过甲方审核后,以推广员和/或区域代理身份开展市场拓展、客户维护及销售促成活动。乙方非甲方员工,不建立劳动关系。",
"1.2 甲方负责商品供应、定价、订单处理、发货、开票(如需)及售后服务;乙方应遵守甲方公布的《分销管理办法》《区域代理管理办法》及平台规则。",
"1.3 乙方不得擅自以甲方名义对外签约、收款或销售非甲方授权商品;不得发布虚假广告或实施误导消费者行为。",
]),
("第二条 服务费计算与结算", [
"2.1 乙方服务费自甲方与消费者之间真实、合法、有效的商品交易产生,按甲方系统在订单生成时已生效的规则计算:",
"(1)推广员:按订单商品实付金额(不含运费,下同)及乙方等级对应比例计算推广服务费;具体比例以甲方后台“分销等级”配置及商品独立规则为准。",
"(2)区域代理:按订单收货地址所在行政区域及乙方代理层级,以实付金额为基数按约定比例或固定金额计算区域服务费;具体以甲方后台“区域公司等级”配置为准。",
"2.2 结算时点:消费者确认收货或订单达到“已完成”状态后,甲方系统触发分账。此前服务费处于待结算状态,不视为已到期应付。",
f"2.3 分账方式:甲方通过汇付延时分账功能,将乙方应得服务费划转至乙方汇付商户号(huifu_id)。乙方应配合完成汇付进件、实名认证、银行卡绑定及与甲方主商户({c['huifu_id']})的分账关系建立。",
"2.4 上限说明:单笔订单向全部分账接收方(含各级推广员、区域代理)划转总额不超过该笔订单实付金额的40%。若规则计算结果超过上限,按甲方系统裁切规则执行,乙方无异议。",
"2.5 退款扣减:订单发生退款、退货或撤销的,对应推广服务费、区域服务费予以扣减或追回;已分账的,乙方应在收到甲方通知后配合退回或同意从后续结算中抵扣。",
"2.6 甲方不向乙方承诺固定收入或最低收益。乙方因推广活动产生的通讯、交通、税费(除汇付及法定代扣代缴外)等成本由乙方自行承担。",
]),
("第三条 汇付分账授权", [
f"3.1 乙方知悉并同意:甲方作为汇付主商户(商户号:{c['huifu_id']}),在符合本协议及平台规则的前提下,通过汇付接口将属于乙方的服务费直接分账至乙方汇付账户,该行为已获乙方授权,视为甲方已向乙方履行付款义务。",
"3.2 乙方汇付账户提现、结算周期及手续费,按汇付公示及乙方进件协议执行,与甲方无关。",
"3.3 乙方应确保进件信息、结算银行卡真实有效;因乙方账户异常导致分账失败的,甲方有权暂缓支付并在乙方更正后重新发起,不构成违约。",
]),
("第四条 双方权利义务", [
"4.1 甲方权利义务",
"(1)按本协议及平台规则计算并发起分账;",
"(2)向乙方提供必要的后台查询、业绩统计;",
"(3)对乙方违规行为有权警告、暂停分账、取消资格;",
"(4)依法履行平台经营义务及消费者保护责任。",
"4.2 乙方权利义务",
"(1)合法合规开展推广,维护甲方品牌形象;",
"(2)对获知的消费者信息、价格政策、商业数据保密;",
"(3)不得恶意刷单、虚假交易、套取分账;",
"(4)配合甲方及汇付、监管部门的合规核查,提供真实资料。",
]),
("第五条 知识产权与宣传规范", [
f"5.1 “{c['miniprogram']}”商标、Logo、商品图片、文案等知识产权归甲方或权利人所有。乙方仅在推广范围内非独占使用,不得申请注册相同或近似标识。",
"5.2 乙方对外宣传内容须与甲方官方信息一致;未经书面许可,不得使用“官方独家”“保底收益”等表述。",
]),
("第六条 保密条款", [
"6.1 一方对另一方的商业信息、技术信息、客户名单、分账规则细节等负有保密义务,未经书面同意不得向第三方披露,法律法规或监管机构要求除外。",
"6.2 本条款在协议终止后仍有效,期限为三年。",
]),
("第七条 协议期限与终止", [
"7.1 本协议自双方签字/盖章之日起生效,有效期一年;期满前30日未书面提出终止的,自动续期一年,续期次数不限。",
"7.2 出现下列情形之一,守约方可单方解除协议:",
"(1)一方严重违约,经书面催告后7日内未纠正;",
"(2)乙方存在虚假交易、洗钱、传销、销售假冒伪劣商品等违法行为;",
"(3)乙方汇付账户被冻结、注销且30日内无法恢复;",
"(4)法律法规或监管要求必须终止。",
"7.3 协议终止后,对已发生且符合结算条件的交易,甲方仍应按本协议完成分账;未结算的合法收益不受影响。终止不影响违约责任及保密义务。",
]),
("第八条 违约责任", [
"8.1 乙方违反本协议给甲方造成损失的,应赔偿甲方全部直接损失及合理维权费用。",
"8.2 因乙方虚假交易、违规宣传导致甲方被投诉、处罚的,乙方承担全部责任及费用。",
"8.3 甲方无正当理由拖延符合结算条件的分账超过15个工作日的,可按中国人民银行同期贷款市场报价利率(LPR)向乙方支付迟延部分利息。",
]),
("第九条 不可抗力", [
"因地震、洪水、战争、政府行为、支付通道系统故障、网络攻击等不可抗力导致不能履行义务的,受影响方应及时通知对方并提供证明,相应顺延履行期限;持续超过60日的,任何一方可解除协议。",
]),
("第十条 争议解决", [
"因本协议引起的争议,双方应协商解决;协商不成的,提交甲方住所地有管辖权的人民法院诉讼解决。",
]),
("第十一条 其他", [
"11.1 本协议未尽事宜,按甲方平台公示规则执行;规则与本协议冲突的,以本协议为准。",
"11.2 本协议一式两份,甲乙双方各执一份,具有同等法律效力。电子签章与原件具有同等效力(如适用)。",
"11.3 附件为本协议组成部分,与正文具有同等效力:",
"附件一:乙方身份证复印件/营业执照副本",
"附件二:汇付进件及分账关系确认截图",
"附件三:甲方当期分销/区域代理等级及比例说明(后台导出)",
]),
]
for title, items in articles:
add_heading_text(doc, title, level=3)
for item in items:
add_para(doc, item, first_line_indent=0.74, space_after=4)
doc.add_page_break()
add_heading_text(doc, "签署页", level=2)
add_para(doc, f"甲方(盖章):{c['name']}", space_after=8)
add_para(doc, "法定代表人/授权代表(签字):________________", space_after=8)
add_para(doc, "日期:________年____月____日", space_after=24)
add_para(doc, "乙方(签字/捺印):________________", space_after=8)
add_para(doc, "(个体工商户须加盖字号公章)", space_after=8)
add_para(doc, "日期:________年____月____日", space_after=24)
doc.add_page_break()
add_heading_text(doc, "附件四:分账授权确认书", level=2)
add_para(
doc,
f"本人/本单位____________(汇付商户号:____________),"
f"系{c['name']}(汇付主商户号:{c['huifu_id']})之推广员/区域代理。",
first_line_indent=0.74,
space_after=8,
)
add_para(
doc,
f"现确认:授权甲方在“{c['miniprogram']}”商城真实交易项下,依据双方签署的《多方分账业务合作协议》"
"及平台有效规则,通过汇付延时分账接口将本人/本单位应得推广服务费/区域服务费直接分账至上述汇付商户号。"
"本人/本单位已开通汇付收单及结算功能,结算银行卡为本人/本单位实名账户。",
first_line_indent=0.74,
space_after=8,
)
add_para(
doc,
"本授权自签署之日起生效,至双方协议终止且待结算款项全部结清之日止。",
first_line_indent=0.74,
space_after=16,
)
add_para(doc, "授权人(签字/盖章):________________ 日期:________", space_after=8)
doc.save(str(contract_output))
print(f"已生成: {contract_output}")
def build_apply_guide():
_, apply_output = output_paths()
c = COMPANY
doc = Document()
section = doc.sections[0]
section.top_margin = Cm(2.54)
section.bottom_margin = Cm(2.54)
section.left_margin = Cm(3.17)
section.right_margin = Cm(3.17)
add_heading_text(doc, "汇付多方分账 40% 申请填写说明", level=1)
add_para(
doc,
f"商户:{c['name']} | 汇付商户号:{c['huifu_id']} | 小程序:{c['miniprogram']}",
align=WD_ALIGN_PARAGRAPH.CENTER,
space_after=12,
)
add_heading_text(doc, "一、表单字段填写", level=2)
table = doc.add_table(rows=6, cols=3)
table.style = "Table Grid"
headers = ["字段", "填写值", "说明"]
rows = [
("分账规则来源", "接口动态规则", "与商城系统一致,支付成功后由接口 delaytrans/confirm 传入 acct_split_bunch"),
("申请分账最大比例", "40%", "见下文三段说明中的比例测算"),
("分账手续费率", "0.05%", "与进件结算配置一致"),
("分账手续费固定金额", "0.5元", "按汇付控台要求填写"),
("分账模式", "线上/其他", "线上小程序零售"),
]
for j, h in enumerate(headers):
table.rows[0].cells[j].text = h
for run in table.rows[0].cells[j].paragraphs[0].runs:
set_run_font(run, size=11, bold=True)
for i, row in enumerate(rows, start=1):
for j, val in enumerate(row):
table.rows[i].cells[j].text = val
for run in table.rows[i].cells[j].paragraphs[0].runs:
set_run_font(run, size=11)
doc.add_paragraph()
sections = [
("二、业务模式说明(复制到汇付表单)", (
f"我司为{c['name']}(以下简称“平台”),统一社会信用代码{c['credit_code']},"
"依法持有有效营业执照,主营酒类商品零售。"
f"平台运营微信小程序“{c['miniprogram']}”,向终端消费者在线销售自有及授权经销的酒类商品,"
"负责商品展示、订单管理、收款、发货及售后处理。\n\n"
"平台采用“自营零售 + 推广分销 + 区域代理”模式开展经营,参与主体及权利义务如下:\n\n"
"(1)平台(收款商户):提供商品货源、定价、仓储发货、客服及退换货服务;承担商品质量、物流及消费者权益保障责任;"
f"通过汇付斗拱收单(主商户号:{c['huifu_id']}),并按订单结算规则向分账接收方支付推广服务费、区域代理服务费。\n\n"
"(2)推广员(分账接收方):经平台审核后成为分销商,通过分享商品链接、发展客户促成交易;"
"按平台《分销管理办法》及对应等级比例获得推广服务费;不得擅自变更价格、不得销售非平台授权商品。\n\n"
"(3)区域代理(分账接收方):经平台审核并绑定省/市/区县服务区域,按订单收货地址匹配;"
"负责区域内市场维护、客户咨询对接;按平台《区域代理管理办法》获得区域服务费;同一区域、同一层级仅设一家正式代理。\n\n"
"(4)消费者:在小程序下单支付,由平台统一发货,享有法定及平台承诺的售后服务。\n\n"
"分账金额依据订单实付金额及后台已生效的分销/区域规则计算,在消费者确认收货后执行延时分账,"
"单笔订单分账总额不超过订单实付金额的40%。"
)),
("三、资金流向说明(复制到汇付表单)", (
"本业务资金全程通过汇付斗拱支付通道闭环流转,不涉及平台外私人账户代收代付。\n\n"
f"(1)资金流入:消费者在“{c['miniprogram']}”微信小程序选购商品,通过微信支付完成付款,"
f"资金进入平台汇付商户号(主商户号:{c['huifu_id']})账户,交易类型为延时分账(delay_acct_flag=Y),"
"支付成功后资金暂存于汇付待确认分账余额。\n\n"
"(2)分账划出:订单达到分账条件(一般为确认收货或订单完成)后,平台系统调用汇付“交易确认/分账”接口,"
"按订单实时计算结果向各分账接收方汇付子商户号(huifu_id)划转对应金额,主要包括:"
"①推广员推广服务费;②区域代理区域服务费。分账指令由系统接口动态生成,与控台静态规则无关。\n\n"
"(3)平台留存:分账完成后,订单实付金额扣除支付手续费及已分出金额后的余额,"
f"留存在平台主商户({c['huifu_id']})汇付账户,作为货款及平台服务收入。\n\n"
"(4)资金流出:各分账接收方通过其汇付子商户账户,按汇付结算规则(T+1/D+1)"
"提现至其本人实名绑定的银行账户;平台主商户按同样规则将留存资金结算至公司对公账户。\n\n"
"(5)退款处理:发生退款时,按汇付及微信平台规则原路退回消费者;"
"已分账部分按平台制度及接口能力做回退或线下追偿处理,确保资金账实相符。\n\n"
"全部账户均为汇付体系内商户号或银行账户,可逐笔追溯、对账。"
)),
("四、功能开通用途说明(复制到汇付表单)", (
f"我司({c['name']},汇付商户号:{c['huifu_id']})申请开通汇付延时分账功能并将最大分账比例调整至40%,用途如下:\n\n"
f"(1)业务场景:{c['miniprogram']}商城存在推广分销(一至三级)及省/市/区县区域代理两类合作方,"
"单笔订单可能同时产生推广服务费与区域服务费,需在消费者确认收货后自动、准确结算至各合作方汇付子商户,"
"避免人工转账效率低、差错率高及合规风险。\n\n"
"(2)使用方式:支付环节开启延时分账;确认收货后,由商城后台系统调用汇付接口,"
"依据订单绑定的推广关系、收货地址及商品分账规则,动态计算各接收方金额并发起分账。"
"分账接收方须事先完成汇付个人/商户进件并与主商户建立分账关系。\n\n"
"(3)分账对象类型:已签约的注册推广员、已审核通过的区域代理,"
"均为与平台签署《多方分账业务合作协议》的独立民事主体。\n\n"
"(4)申请40%的原因:在三级分销叠加及区域代理“独占/级差”配置下,"
"单笔订单理论分账比例峰值可能接近35%—38%;申请40%作为系统上限,用于覆盖规则调整余量。"
"实际运行中,单笔订单平均分账比例约15%—25%,平台主商户留存比例通常不低于60%。\n\n"
"(5)合规承诺:分账基于真实交易及已签署协议,不用于洗钱、套现、资金池归集等违规用途;"
"分账材料与业务实际一致,接受汇付及监管核查。"
)),
]
for title, body in sections:
add_heading_text(doc, title, level=2)
for para in body.split("\n\n"):
add_para(doc, para, first_line_indent=0.74, space_after=6)
add_heading_text(doc, "五、附件上传建议", level=2)
for item in [
f"1. 《多方分账业务合作协议》盖章扫描件(至少 1—2 份已签约样本,甲方:{c['name']});",
"2. 平台营业执照副本;",
f"3. 小程序“{c['miniprogram']}”首页及订单流程截图;",
"4. 分销/区域代理管理制度或后台规则截图。",
]:
add_para(doc, item, space_after=4)
add_heading_text(doc, "六、提交前核对", level=2)
for item in [
"□ 控台 rule_origin=01(接口发起),与商城配置一致",
f"□ 主商户 {c['huifu_id']} 已开通延时分账",
"□ 表单比例 40% ≥ 商城 split_max_rate 配置",
f"□ 三份说明中公司名称、信用代码、商户号与营业执照及汇付控台一致",
"□ 已备至少一份与分账接收方签署的盖章协议",
]:
add_para(doc, item, space_after=4)
doc.save(str(apply_output))
print(f"已生成: {apply_output}")
if __name__ == "__main__":
build()
build_apply_guide()

二进制文件未显示。

二进制文件未显示。

查看文件

@@ -0,0 +1,272 @@
# 汇付多方分账 40% 申请填写说明
> 适用:橙虎小酒商城 · 微信小程序 · 汇付延时分账
> 请将文中【】占位符替换为贵司营业执照上的正式信息后再提交。
---
## 一、表单字段填写
| 字段 | 填写值 | 说明 |
|------|--------|------|
| 分账规则来源 | **接口动态规则** | 与商城系统一致,支付成功后由接口 `delaytrans/confirm` 传入 `acct_split_bunch` |
| 申请分账最大比例 | **40%** | 见下文比例测算 |
| 分账手续费率 | **0.05%** | 与进件结算配置一致 |
| 分账手续费固定金额 | **0.5元** | 按汇付控台要求填写 |
| 分账模式 | **线上/其他** | 线上小程序零售 |
---
## 二、业务模式说明(复制到表单,约 480 字)
```
我司为【贵州×××有限公司】(以下简称“平台”),依法持有有效营业执照,主营酒类商品零售。平台运营微信小程序“橙虎小酒”,向终端消费者在线销售自有及授权经销的酒类商品,负责商品展示、订单管理、收款、发货及售后处理。
平台采用“自营零售 + 推广分销 + 区域代理”模式开展经营,参与主体及权利义务如下:
(1)平台(收款商户):提供商品货源、定价、仓储发货、客服及退换货服务;承担商品质量、物流及消费者权益保障责任;通过汇付斗拱收单,并按订单结算规则向分账接收方支付推广服务费、区域代理服务费。
(2)推广员(分账接收方):经平台审核后成为分销商,通过分享商品链接、发展客户促成交易;按平台《分销管理办法》及对应等级比例获得推广服务费;不得擅自变更价格、不得销售非平台授权商品。
(3)区域代理(分账接收方):经平台审核并绑定省/市/区县服务区域,按订单收货地址匹配;负责区域内市场维护、客户咨询对接;按平台《区域代理管理办法》获得区域服务费;同一区域、同一层级仅设一家正式代理。
(4)消费者:在小程序下单支付,由平台统一发货,享有法定及平台承诺的售后服务。
分账金额依据订单实付金额及后台已生效的分销/区域规则计算,在消费者确认收货后执行延时分账,单笔订单分账总额不超过订单实付金额的40%。
```
---
## 三、资金流向说明(复制到表单,约 490 字)
```
本业务资金全程通过汇付斗拱支付通道闭环流转,不涉及平台外私人账户代收代付。
(1)资金流入:消费者在“橙虎小酒”微信小程序选购商品,通过微信支付完成付款,资金进入平台汇付商户号(主商户)账户,交易类型为延时分账(delay_acct_flag=Y),支付成功后资金暂存于汇付待确认分账余额。
(2)分账划出:订单达到分账条件(一般为确认收货或订单完成)后,平台系统调用汇付“交易确认/分账”接口,按订单实时计算结果向各分账接收方汇付子商户号(huifu_id)划转对应金额,主要包括:①推广员推广服务费;②区域代理区域服务费。分账指令由系统接口动态生成,与控台静态规则无关。
(3)平台留存:分账完成后,订单实付金额扣除支付手续费及已分出金额后的余额,留存在平台主商户汇付账户,作为货款及平台服务收入。
(4)资金流出:各分账接收方通过其汇付子商户账户,按汇付结算规则(T+1/D+1)提现至其本人实名绑定的银行账户;平台主商户按同样规则将留存资金结算至公司对公账户。
(5)退款处理:发生退款时,按汇付及微信平台规则原路退回消费者;已分账部分按平台制度及接口能力做回退或线下追偿处理,确保资金账实相符。
全部账户均为汇付体系内商户号或银行账户,可逐笔追溯、对账。
```
---
## 四、功能开通用途说明(复制到表单,约 470 字)
```
我司申请开通汇付延时分账功能并将最大分账比例调整至40%,用途如下:
(1)业务场景:橙虎小酒商城存在推广分销(一至三级)及省/市/区县区域代理两类合作方,单笔订单可能同时产生推广服务费与区域服务费,需在消费者确认收货后自动、准确结算至各合作方汇付子商户,避免人工转账效率低、差错率高及合规风险。
(2)使用方式:支付环节开启延时分账;确认收货后,由商城后台系统调用汇付接口,依据订单绑定的推广关系、收货地址及商品分账规则,动态计算各接收方金额并发起分账。分账接收方须事先完成汇付个人/商户进件并与主商户建立分账关系。
(3)分账对象类型:已签约的注册推广员、已审核通过的区域代理,均为与平台签署《多方分账业务合作协议》的独立民事主体。
(4)申请40%的原因:在三级分销叠加及区域代理“独占/级差”配置下,单笔订单理论分账比例峰值可能接近35%—38%;申请40%作为系统上限,用于覆盖规则调整余量。实际运行中,单笔订单平均分账比例约15%—25%,平台主商户留存比例通常不低于60%。
(5)合规承诺:分账基于真实交易及已签署协议,不用于洗钱、套现、资金池归集等违规用途;分账材料与业务实际一致,接受汇付及监管核查。
```
---
## 五、附件上传建议
“与分账方的相关材料”建议打包上传 PDF,包含:
1. 本目录《多方分账业务合作协议》盖章扫描件(至少 1—2 份已签约样本);
2. 平台营业执照副本;
3. 小程序首页及订单流程截图(证明真实交易场景);
4. 分销/区域代理管理制度或后台规则截图(证明分账依据)。
---
## 六、提交前核对
- [ ] 控台 `rule_origin=01`(接口发起),与商城配置一致
- [ ] 主商户已开通延时分账
- [ ] 表单比例 40% ≥ 商城 `split_max_rate` 配置
- [ ] 三份说明中的公司全称、小程序名称与营业执照一致
- [ ] 已备至少一份与分账接收方签署的盖章协议
---
# 附件:多方分账业务合作协议
**合同编号:** XGXJ-FS-________
**签订地点:** 【贵州省××市】
**签订日期:** ________年____月____日
---
## 甲方(平台/分账发起方)
| 项目 | 内容 |
|------|------|
| 名称 | 【贵州×××有限公司】 |
| 统一社会信用代码 | 【9152××××××××××××】 |
| 法定代表人 | 【×××】 |
| 住所 | 【××省××市××区××路××号】 |
| 联系电话 | 【×××××××××××】 |
| 汇付商户号 | 【6666000×××××××】 |
## 乙方(分账接收方)
**主体类型(择一填写):** □ 个体工商户 □ 个人(汇付进件用户)
| 项目 | 内容 |
|------|------|
| 姓名/字号 | 【×××】 |
| 身份证号码 | 【××××××××××××××××】 |
| 住所/经营场所 | 【××省××市××区××】 |
| 联系电话 | 【×××××××××××】 |
| 汇付商户号 | 【6666000×××××××】 |
| 合作角色 | □ 推广员 □ 区域代理(区域:【××省××市××区/县】) |
---
鉴于甲方依法经营“橙虎小酒”微信小程序商城,乙方自愿成为甲方推广员和/或区域代理;双方依据《中华人民共和国民法典》及相关法规,就通过汇付天下有限公司(以下简称“汇付”)支付通道进行延时分账结算事宜,达成如下协议:
### 第一条 合作内容与范围
1.1 乙方在甲方平台注册并通过甲方审核后,以推广员和/或区域代理身份开展市场拓展、客户维护及销售促成活动。乙方非甲方员工,不建立劳动关系。
1.2 甲方负责商品供应、定价、订单处理、发货、开票(如需)及售后服务;乙方应遵守甲方公布的《分销管理办法》《区域代理管理办法》及平台规则。
1.3 乙方不得擅自以甲方名义对外签约、收款或销售非甲方授权商品;不得发布虚假广告或实施误导消费者行为。
### 第二条 服务费计算与结算
2.1 乙方服务费自甲方与消费者之间真实、合法、有效的商品交易产生,按甲方系统在订单生成时已生效的规则计算:
(1)**推广员:** 按订单商品实付金额(不含运费,下同)及乙方等级对应比例计算推广服务费;具体比例以甲方后台“分销等级”配置及商品独立规则为准。
(2)**区域代理:** 按订单收货地址所在行政区域及乙方代理层级,以实付金额为基数按约定比例或固定金额计算区域服务费;具体以甲方后台“区域公司等级”配置为准。
2.2 **结算时点:** 消费者确认收货或订单达到“已完成”状态后,甲方系统触发分账。此前服务费处于待结算状态,不视为已到期应付。
2.3 **分账方式:** 甲方通过汇付延时分账功能,将乙方应得服务费划转至乙方汇付商户号(本协议载明之 huifu_id)。乙方应配合完成汇付进件、实名认证、银行卡绑定及与甲方主商户的分账关系建立。
2.4 **上限说明:** 单笔订单向全部分账接收方(含各级推广员、区域代理)划转总额不超过该笔订单实付金额的【40】%。若规则计算结果超过上限,按甲方系统裁切规则执行,乙方无异议。
2.5 **退款扣减:** 订单发生退款、退货或撤销的,对应推广服务费、区域服务费予以扣减或追回;已分账的,乙方应在收到甲方通知后配合退回或同意从后续结算中抵扣。
2.6 甲方不向乙方承诺固定收入或最低收益。乙方因推广活动产生的通讯、交通、税费(除汇付及法定代扣代缴外)等成本由乙方自行承担。
### 第三条 汇付分账授权
3.1 乙方知悉并同意:甲方作为汇付主商户,在符合本协议及平台规则的前提下,通过汇付接口将属于乙方的服务费直接分账至乙方汇付账户,该行为已获乙方授权,视为甲方已向乙方履行付款义务。
3.2 乙方汇付账户提现、结算周期及手续费,按汇付公示及乙方进件协议执行,与甲方无关。
3.3 乙方应确保进件信息、结算银行卡真实有效;因乙方账户异常导致分账失败的,甲方有权暂缓支付并在乙方更正后重新发起,不构成违约。
### 第四条 双方权利义务
**4.1 甲方权利义务**
(1)按本协议及平台规则计算并 initiate 分账;
(2)向乙方提供必要的后台查询、业绩统计;
(3)对乙方违规行为有权警告、暂停分账、取消资格;
(4)依法履行平台经营义务及消费者保护责任。
**4.2 乙方权利义务**
(1)合法合规开展推广,维护甲方品牌形象;
(2)对获知的消费者信息、价格政策、商业数据保密;
(3)不得恶意刷单、虚假交易、套取分账;
(4)配合甲方及汇付、监管部门的合规核查,提供真实资料。
### 第五条 知识产权与宣传规范
5.1 “橙虎小酒”商标、Logo、商品图片、文案等知识产权归甲方或权利人所有。乙方仅在推广范围内非独占使用,不得申请注册相同或近似标识。
5.2 乙方对外宣传内容须与甲方官方信息一致;未经书面许可,不得使用“官方独家”“ guaranteed 收益”等表述。
### 第六条 保密条款
6.1 一方对另一方的商业信息、技术信息、客户名单、分账规则细节等负有保密义务,未经书面同意不得向第三方披露,法律法规或监管机构要求除外。
6.2 本条款在协议终止后仍有效,期限为【三】年。
### 第七条 协议期限与终止
7.1 本协议自双方签字/盖章之日起生效,有效期【一】年;期满前【30】日未书面提出终止的,自动续期【一】年,续期次数不限。
7.2 出现下列情形之一,守约方可单方解除协议:
(1)一方严重违约,经书面催告后【7】日内未纠正;
(2)乙方存在虚假交易、洗钱、传销、销售假冒伪劣商品等违法行为;
(3)乙方汇付账户被冻结、注销且【30】日内无法恢复;
(4)法律法规或监管要求必须终止。
7.3 协议终止后,对已发生且符合结算条件的交易,甲方仍应按本协议完成分账;未结算的合法收益不受影响。终止不影响违约责任及保密义务。
### 第八条 违约责任
8.1 乙方违反本协议给甲方造成损失的,应赔偿甲方全部直接损失及合理维权费用。
8.2 因乙方虚假交易、违规宣传导致甲方被投诉、处罚的,乙方承担全部责任及费用。
8.3 甲方无正当理由拖延符合结算条件的分账超过【15】个工作日的,可按中国人民银行同期贷款市场报价利率(LPR)向乙方支付迟延部分利息。
### 第九条 不可抗力
因地震、洪水、战争、政府行为、支付通道系统故障、网络攻击等不可抗力导致不能履行义务的,受影响方应及时通知对方并提供证明,相应顺延履行期限;持续超过【60】日的,任何一方可解除协议。
### 第十条 争议解决
因本协议引起的争议,双方应协商解决;协商不成的,提交**甲方住所地有管辖权的人民法院**诉讼解决。
### 第十一条 其他
11.1 本协议未尽事宜,按甲方平台公示规则执行;规则与本协议冲突的,以本协议为准。
11.2 本协议一式【两】份,甲乙双方各执【一】份,具有同等法律效力。电子签章与原件具有同等效力(如适用)。
11.3 附件为本协议组成部分,与正文具有同等效力:
- 附件一:乙方身份证复印件/营业执照副本
- 附件二:汇付进件及分账关系确认截图
- 附件三:甲方当期分销/区域代理等级及比例说明(后台导出)
---
## 签署页
**甲方(盖章):** 【贵州×××有限公司】
法定代表人/授权代表(签字):________________
日期:________年____月____日
---
**乙方(签字/捺印):** ________________
(个体工商户须加盖字号公章)
日期:________年____月____日
---
## 附件四:分账授权确认书(可单独一页,汇付审核常用)
本人/本单位 **【乙方全称】**(汇付商户号:**【6666000×××××××】**),系 **【贵州×××有限公司】**(汇付主商户号:**【6666000×××××××】**)之推广员/区域代理。
现确认:授权甲方在“橙虎小酒”商城真实交易项下,依据双方签署的《多方分账业务合作协议》及平台有效规则,通过汇付延时分账接口将本人/本单位应得推广服务费/区域服务费直接分账至上述汇付商户号。本人/本单位已开通汇付收单及结算功能,结算银行卡为本人/本单位实名账户。
本授权自签署之日起生效,至双方协议终止且待结算款项全部结清之日止。
授权人(签字/盖章):________________ 日期:________
---
*文档版本:2026-10-08*

查看文件

@@ -548,7 +548,7 @@ class HuifuMerchantSplitService
}
$mediaName = trim((string) $this->config->get('split_config_media_name', ''));
if ($mediaName === '') {
$mediaName = '雄戈小酒';
$mediaName = '橙虎小酒';
}
$common = trim((string) $this->config->get('split_config_media_mer_common_flag', 'Y'));
if ($common === '') {

查看文件

@@ -15,7 +15,7 @@ INSERT IGNORE INTO `__PREFIX__shopro_huifu_config` (`name`, `value`, `group`, `d
('split_config_function_instruction', '', 'split', '功能开通用途 function_instruction'),
('split_config_online_media_json', '', 'split', 'online_media_info_list 整段 JSON 数组(40%分账必填)'),
('split_config_media_type', 'S3', 'split', '运营媒介类型 S3=小程序'),
('split_config_media_name', '雄戈小酒', 'split', '媒介名称(小程序名)'),
('split_config_media_name', '橙虎小酒', 'split', '媒介名称(小程序名)'),
('split_config_media_mer_common_flag', 'Y', 'split', '媒介主体与商户主体是否一致 Y/N'),
('split_config_media_app_id', '', 'split', '小程序 app_id,留空则读商城配置'),
('split_config_media_front_page', '', 'split', '首页截图汇付 file_id'),