From a8cdc763cb7b5baae62ce502e3791a8cc03bbe25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8F=AF=E4=B9=90=E5=8A=A0=E5=86=B0?= <11869599+addie66@user.noreply.gitee.com> Date: Wed, 28 Oct 2026 14:55:54 +0800 Subject: [PATCH] =?UTF-8?q?```=20chore(brand):=20=E7=BB=9F=E4=B8=80?= =?UTF-8?q?=E5=B0=86=E5=93=81=E7=89=8C=E5=90=8D=E4=BB=8E=E9=9B=84=E6=88=88?= =?UTF-8?q?=E5=B0=8F=E9=85=92=E6=9B=B4=E6=94=B9=E4=B8=BA=E6=A9=99=E8=99=8E?= =?UTF-8?q?=E5=B0=8F=E9=85=92?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 更新alisms插件配置中的签名值 - 修改shopro插件中所有SQL脚本的品牌名称引用 - 更新商城配置、商品分类、演示数据中的品牌名称 - 替换后台登录页面的品牌标识 - 更新汇付分账配置中的媒介名称 - 修改登录预览生成脚本中的品牌显示 ``` --- addons/alisms/config.php | 2 +- .../docs/后台使用手册-分销与区域公司.md | 304 ++++++++++++ addons/shopro/fix_decorate_list.sql | 4 +- .../remove_non_liquor_attachment_space.sql | 2 +- addons/shopro/remove_non_liquor_goods.sql | 2 +- addons/shopro/rename_brand_xiongge.sql | 26 +- addons/shopro/seed_liquor_categories.sql | 12 +- addons/shopro/seed_xiongge_demo.sql | 20 +- addons/shopro/update_brand_name.sql | 4 +- .../shopro/update_demo_packaging_images.sql | 10 +- .../update_goods_content_huifu_audit.sql | 12 +- addons/shopro/update_theme_light.sql | 2 +- addons/shopro/update_theme_navy.sql | 2 +- addons/shopro/update_xiongge_images.sql | 10 +- .../shopro_huifu/command/UploadSplitMedia.php | 4 +- .../docs/generate_contract_docx.py | 362 ++++++++++++++ ...–¹分账业务合作协议-贵州宥川商贸有限公司.docx | Bin 0 -> 41592 bytes .../docs/多方分账业务合作协议.docx | Bin 0 -> 48366 bytes ...ˆ†账40%申请填写说明-贵州宥川商贸有限公司.docx | Bin 0 -> 40184 bytes .../docs/汇付分账40%申请填写说明.docx | Bin 0 -> 40174 bytes .../docs/汇付分账40%申请说明与合作协议模板.md | 272 +++++++++++ .../split/HuifuMerchantSplitService.php | 2 +- .../shopro_huifu/upgrade_huifu_split_bind.sql | 2 +- application/admin/view/index/login.html | 12 +- .../admin/view/shopro/store/store/add.html | 2 +- application/extra/site.php | 2 +- .../assets/login/generate_login_previews.py | 8 +- .../login/generate_login_previews_v2.py | 10 +- public/assets/login/previews/index.html | 4 +- public/usr.html | 4 +- public/yisi.html | 6 +- .../privacy-auth-modal/privacy-auth-modal.vue | 164 +++++++ .../shopro-live-card/shopro-live-card.vue | 361 -------------- .../components/yk-authpup/yk-authpup.vue | 10 +- .../design-system/default/MASTER.md | 2 +- xgsc.gynhc.com_wx/env.js | 1 - xgsc.gynhc.com_wx/manifest.json | 5 +- xgsc.gynhc.com_wx/pages.json | 95 +--- xgsc.gynhc.com_wx/pages/app/video/detail.vue | 163 ------- xgsc.gynhc.com_wx/pages/app/video/index.vue | 169 ------- .../pages/index/components/sh-grid.vue | 8 +- .../pages/index/components/sh-live.vue | 108 ----- xgsc.gynhc.com_wx/pages/index/index.vue | 18 +- .../pages/index/index/home-head.vue | 4 +- xgsc.gynhc.com_wx/pages/index/user-copy.vue | 2 +- xgsc.gynhc.com_wx/pages/index/view.vue | 19 +- xgsc.gynhc.com_wx/pages/live/list.vue | 216 --------- xgsc.gynhc.com_wx/pages/live/list2.nvue | 99 ---- xgsc.gynhc.com_wx/pages/public/search.vue | 2 +- xgsc.gynhc.com_wx/pages/user/live-copy.nvue | 449 ------------------ xgsc.gynhc.com_wx/pages/user/live.nvue | 441 ----------------- xgsc.gynhc.com_wx/shopro/config/theme.js | 2 +- xgsc.gynhc.com_wx/shopro/request/apis.js | 45 -- xgsc.gynhc.com_wx/shopro/utils/theme.js | 4 +- xgsc.gynhc.com_wx/shopro/wechat/privacy.js | 59 +++ .../images/tabbar/generate_tabbar_icons.py | 2 +- xgsc.gynhc.com_wx/static/style/theme.scss | 2 +- 57 files changed, 1265 insertions(+), 2287 deletions(-) create mode 100644 addons/shopro/docs/后台使用手册-分销与区域公司.md create mode 100644 addons/shopro_huifu/docs/generate_contract_docx.py create mode 100644 addons/shopro_huifu/docs/多方分账业务合作协议-贵州宥川商贸有限公司.docx create mode 100644 addons/shopro_huifu/docs/多方分账业务合作协议.docx create mode 100644 addons/shopro_huifu/docs/汇付分账40%申请填写说明-贵州宥川商贸有限公司.docx create mode 100644 addons/shopro_huifu/docs/汇付分账40%申请填写说明.docx create mode 100644 addons/shopro_huifu/docs/汇付分账40%申请说明与合作协议模板.md create mode 100644 xgsc.gynhc.com_wx/components/privacy-auth-modal/privacy-auth-modal.vue delete mode 100644 xgsc.gynhc.com_wx/components/shopro-live-card/shopro-live-card.vue delete mode 100644 xgsc.gynhc.com_wx/pages/app/video/detail.vue delete mode 100644 xgsc.gynhc.com_wx/pages/app/video/index.vue delete mode 100644 xgsc.gynhc.com_wx/pages/index/components/sh-live.vue delete mode 100644 xgsc.gynhc.com_wx/pages/live/list.vue delete mode 100644 xgsc.gynhc.com_wx/pages/live/list2.nvue delete mode 100644 xgsc.gynhc.com_wx/pages/user/live-copy.nvue delete mode 100644 xgsc.gynhc.com_wx/pages/user/live.nvue create mode 100644 xgsc.gynhc.com_wx/shopro/wechat/privacy.js diff --git a/addons/alisms/config.php b/addons/alisms/config.php index 9d24d02..b9fea93 100644 --- a/addons/alisms/config.php +++ b/addons/alisms/config.php @@ -30,7 +30,7 @@ return [ 'title' => '签名', 'type' => 'string', 'content' => [], - 'value' => '雄戈小酒', + 'value' => '橙虎小酒', 'rule' => 'required', 'msg' => '', 'tip' => '', diff --git a/addons/shopro/docs/后台使用手册-分销与区域公司.md b/addons/shopro/docs/后台使用手册-分销与区域公司.md new file mode 100644 index 0000000..e317cce --- /dev/null +++ b/addons/shopro/docs/后台使用手册-分销与区域公司.md @@ -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 后台「分销中心」「区域公司」菜单一致。若您后台菜单名称略有不同,以实际显示为准。* diff --git a/addons/shopro/fix_decorate_list.sql b/addons/shopro/fix_decorate_list.sql index b44f1e4..3258c03 100644 --- a/addons/shopro/fix_decorate_list.sql +++ b/addons/shopro/fix_decorate_list.sql @@ -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 diff --git a/addons/shopro/remove_non_liquor_attachment_space.sql b/addons/shopro/remove_non_liquor_attachment_space.sql index fc56584..925b41a 100644 --- a/addons/shopro/remove_non_liquor_attachment_space.sql +++ b/addons/shopro/remove_non_liquor_attachment_space.sql @@ -1,4 +1,4 @@ --- 雄戈小酒:清理图片空间中与酒类无关的目录和文件 +-- 橙虎小酒:清理图片空间中与酒类无关的目录和文件 -- 涉及表:fa_attachment_nav(目录)、fa_attachment(图片,软删除进回收站) -- 策略:厨房/厨具/富强/熊猫等旧目录 → 删除;图片 → is_del=1(回收站可恢复) -- 保留:名称含 酒 / 雄戈 / xiongge 的目录与文件 diff --git a/addons/shopro/remove_non_liquor_goods.sql b/addons/shopro/remove_non_liquor_goods.sql index 12b400d..133b6d8 100644 --- a/addons/shopro/remove_non_liquor_goods.sql +++ b/addons/shopro/remove_non_liquor_goods.sql @@ -1,4 +1,4 @@ --- 雄戈小酒:清理旧「小众厨房设备」遗留的非酒类商品 +-- 橙虎小酒:清理旧「小众厨房设备」遗留的非酒类商品 -- 策略:软删除(deletetime + 下架),保留酒类/雄戈演示商品 -- 执行前:请先备份 fa_shopro_goods 及相关表 -- 执行后:后台清除 Shopro 缓存 → 商品管理刷新列表 diff --git a/addons/shopro/rename_brand_xiongge.sql b/addons/shopro/rename_brand_xiongge.sql index c757adb..86f8fa3 100644 --- a/addons/shopro/rename_brand_xiongge.sql +++ b/addons/shopro/rename_brand_xiongge.sql @@ -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 '%雄哥%'; diff --git a/addons/shopro/seed_liquor_categories.sql b/addons/shopro/seed_liquor_categories.sql index d29eec3..3cf2251 100644 --- a/addons/shopro/seed_liquor_categories.sql +++ b/addons/shopro/seed_liquor_categories.sql @@ -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(); diff --git a/addons/shopro/seed_xiongge_demo.sql b/addons/shopro/seed_xiongge_demo.sql index 0eefba4..7566840 100644 --- a/addons/shopro/seed_xiongge_demo.sql +++ b/addons/shopro/seed_xiongge_demo.sql @@ -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( '

贵州雄戈酒业有限公司出品

', @@ -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('

120ml×2 / 49%vol

'), '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('

120ml / 49%vol

'), '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('

120ml×10 / 49%vol

'), '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 '【演示】橙虎小酒%'; diff --git a/addons/shopro/update_brand_name.sql b/addons/shopro/update_brand_name.sql index cdab0b7..cd16c97 100644 --- a/addons/shopro/update_brand_name.sql +++ b/addons/shopro/update_brand_name.sql @@ -1,7 +1,7 @@ --- 雄戈小酒:统一替换旧品牌名(小众厨房设备 / 贤鼎酒业 等) +-- 橙虎小酒:统一替换旧品牌名(小众厨房设备 / 贤鼎酒业 等) -- 执行后:清除 Shopro 缓存 + 后台「系统配置」刷新 + 小程序重新编译 -SET @brand = '雄戈小酒'; +SET @brand = '橙虎小酒'; SET @year = YEAR(CURDATE()); -- ========== 1. 商城基础配置(名称 + 版权) ========== diff --git a/addons/shopro/update_demo_packaging_images.sql b/addons/shopro/update_demo_packaging_images.sql index 469264a..175a89b 100644 --- a/addons/shopro/update_demo_packaging_images.sql +++ b/addons/shopro/update_demo_packaging_images.sql @@ -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'; diff --git a/addons/shopro/update_goods_content_huifu_audit.sql b/addons/shopro/update_goods_content_huifu_audit.sql index 29ed207..14dd31f 100644 --- a/addons/shopro/update_goods_content_huifu_audit.sql +++ b/addons/shopro/update_goods_content_huifu_audit.sql @@ -8,7 +8,7 @@ SET @now = UNIX_TIMESTAMP(); INSERT INTO `fa_shopro_richtext` (`title`, `content`, `createtime`, `updatetime`, `deletetime`) SELECT '退换货政策', - '

适用范围

本政策适用于「雄戈小酒」微信小程序商城购买的实体商品(酒类)。

签收与验货

请您在签收时当面验货。如外包装严重破损、漏液或数量不符,请当场拍照/录像并拒收或立即联系客服,我们将协助处理。

退换货条件

1. 未开封、不影响二次销售,且在签收后 7 日内可申请退货(具体以订单状态及商品属性为准);

2. 因运输造成的破损、漏液,请保留完整外包装及物流面单,联系客服办理补发或退款;

3. 定制类、已开封或已饮用的酒类商品,除质量问题外不支持无理由退换。

售后申请路径(小程序)

① 底部「我的」→ 订单卡片「售后」→ 售后列表;

② 「我的」→「我的订单」→ 进入订单详情 →「申请售后」;

③ 「我的」→「设置」→「退换货政策」(本页)。

处理时效

客服会在 1 个工作日内响应;审核通过后,退款按原支付渠道退回,到账时间以支付机构为准。

客服

商品页「客服」按钮或「我的」联系在线客服,服务时间 9:00–21:00。

', + '

适用范围

本政策适用于「橙虎小酒」微信小程序商城购买的实体商品(酒类)。

签收与验货

请您在签收时当面验货。如外包装严重破损、漏液或数量不符,请当场拍照/录像并拒收或立即联系客服,我们将协助处理。

退换货条件

1. 未开封、不影响二次销售,且在签收后 7 日内可申请退货(具体以订单状态及商品属性为准);

2. 因运输造成的破损、漏液,请保留完整外包装及物流面单,联系客服办理补发或退款;

3. 定制类、已开封或已饮用的酒类商品,除质量问题外不支持无理由退换。

售后申请路径(小程序)

① 底部「我的」→ 订单卡片「售后」→ 售后列表;

② 「我的」→「我的订单」→ 进入订单详情 →「申请售后」;

③ 「我的」→「设置」→「退换货政策」(本页)。

处理时效

客服会在 1 个工作日内响应;审核通过后,退款按原支付渠道退回,到账时间以支付机构为准。

客服

商品页「客服」按钮或「我的」联系在线客服,服务时间 9:00–21:00。

', @now, @now, NULL @@ -31,11 +31,11 @@ WHERE `name` = 'shopro' AND `group` = 'basic' AND JSON_VALID(`value`) = 1 AND @r -- ========== 2. 详情顶部公共说明(不含重复标记) ========== SET @intro_tail = '

发货说明

下单后 48 小时内安排发货(节假日顺延),默认快递配送。签收前请验货,如有破损请保留外包装并联系客服。

退换货与售后查看路径

① 小程序底部「我的」→ 订单区「售后」;② 「我的」→「我的订单」→ 订单详情 →「申请售后」;③ 「我的」→「设置」→「退换货政策」查看全文。

客服咨询

商品页点击「客服」,或在「我的」联系在线客服(9:00–21:00)。

温馨提示

饮酒有害健康,请勿酒后驾驶;未成年人请勿购买及饮酒。

——以下为商品原有图文详情——

'; --- ========== 3. 196 雄戈小酒 礼盒装 ========== +-- ========== 3. 196 橙虎小酒 礼盒装 ========== UPDATE `fa_shopro_goods` SET `content` = CONCAT( '', - '

商品介绍

「雄戈小酒」礼盒装,贵州雄戈酒业有限公司出品,适合商务馈赠、亲友聚会与节日送礼。礼盒内含多瓶小规格酱香型白酒,包装精致,便于携带与陈列。

', + '

商品介绍

「橙虎小酒」礼盒装,贵州雄戈酒业有限公司出品,适合商务馈赠、亲友聚会与节日送礼。礼盒内含多瓶小规格酱香型白酒,包装精致,便于携带与陈列。

', '

产品规格

净含量:120ml×5;酒精度:49%vol;香型:酱香型白酒;产地:贵州省。

', '

饮用建议

开瓶后请尽快饮用;常温避光保存。建议小杯慢饮,搭配合适餐食,切勿过量饮酒。

', @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( '', - '

商品介绍

「雄戈小酒」商务宴请装,面向聚会、宴请、团队答谢等场景。手提礼袋包装,单份数量充足,方便席面分饮与携带。

', + '

商品介绍

「橙虎小酒」商务宴请装,面向聚会、宴请、团队答谢等场景。手提礼袋包装,单份数量充足,方便席面分饮与携带。

', '

产品规格

净含量:120ml×10;酒精度:49%vol;香型:酱香型白酒;产地:贵州省。

', '

饮用建议

开瓶后请尽快饮用;常温避光保存。理性饮酒,请勿酒后驾车。

', @intro_tail, @@ -65,7 +65,7 @@ WHERE `id` = 199 UPDATE `fa_shopro_goods` SET `content` = CONCAT( '', - '

商品介绍

「雄戈小酒」销售礼盒装,以自然之味、养自然之身为理念,选用优质酱香型白酒小瓶组合,适合渠道团购、企业福利与高端礼赠。详情页下方轮播图可查看礼盒外观与实物展示。

', + '

商品介绍

「橙虎小酒」销售礼盒装,以自然之味、养自然之身为理念,选用优质酱香型白酒小瓶组合,适合渠道团购、企业福利与高端礼赠。详情页下方轮播图可查看礼盒外观与实物展示。

', '

产品说明

具体净含量、酒精度及礼盒配置以页面标题、规格及客服说明为准;下单前如有疑问请联系在线客服确认。

', '

适用场景

商务拜访、节日送礼、客户答谢、品鉴分享等。

', @intro_tail, diff --git a/addons/shopro/update_theme_light.sql b/addons/shopro/update_theme_light.sql index 4df07c7..4e7993b 100644 --- a/addons/shopro/update_theme_light.sql +++ b/addons/shopro/update_theme_light.sql @@ -1,4 +1,4 @@ --- 雄戈小酒 - 轻简奢品主题:更新装修数据(TabBar + 个人中心) +-- 橙虎小酒 - 轻简奢品主题:更新装修数据(TabBar + 个人中心) -- 数据库:xgsc.gynhc.com -- 可与 seed_xiongge_demo.sql 一起执行,或单独执行 diff --git a/addons/shopro/update_theme_navy.sql b/addons/shopro/update_theme_navy.sql index 1163a04..8ac9724 100644 --- a/addons/shopro/update_theme_navy.sql +++ b/addons/shopro/update_theme_navy.sql @@ -1,4 +1,4 @@ --- 雄戈小酒包装主题:更新底部导航装修数据 +-- 橙虎小酒包装主题:更新底部导航装修数据 -- 数据库:xgsc.gynhc.com -- FastAdmin 默认表前缀为 fa_,实际表名通常为 fa_shopro_decorate_content -- diff --git a/addons/shopro/update_xiongge_images.sql b/addons/shopro/update_xiongge_images.sql index aec4244..e5820d8 100644 --- a/addons/shopro/update_xiongge_images.sql +++ b/addons/shopro/update_xiongge_images.sql @@ -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 '【演示】橙虎小酒%'; diff --git a/addons/shopro_huifu/command/UploadSplitMedia.php b/addons/shopro_huifu/command/UploadSplitMedia.php index e021dc6..9de66b1 100644 --- a/addons/shopro_huifu/command/UploadSplitMedia.php +++ b/addons/shopro_huifu/command/UploadSplitMedia.php @@ -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 === '') { diff --git a/addons/shopro_huifu/docs/generate_contract_docx.py b/addons/shopro_huifu/docs/generate_contract_docx.py new file mode 100644 index 0000000..5343a00 --- /dev/null +++ b/addons/shopro_huifu/docs/generate_contract_docx.py @@ -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() diff --git a/addons/shopro_huifu/docs/多方分账业务合作协议-贵州宥川商贸有限公司.docx b/addons/shopro_huifu/docs/多方分账业务合作协议-贵州宥川商贸有限公司.docx new file mode 100644 index 0000000000000000000000000000000000000000..7934b673b86dc91d52c33f4ecb3259f6649d77ba GIT binary patch literal 41592 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 T_n^Oe6&}DC-aQ^<|8@0$MsU|* literal 0 HcmV?d00001 diff --git a/addons/shopro_huifu/docs/多方分账业务合作协议.docx b/addons/shopro_huifu/docs/多方分账业务合作协议.docx new file mode 100644 index 0000000000000000000000000000000000000000..7f8aff9966cc8cd91780b6e97d4204cde76cbb45 GIT binary patch literal 48366 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 F{{hzNPBQ=i literal 0 HcmV?d00001 diff --git a/addons/shopro_huifu/docs/汇付分账40%申请填写说明-贵州宥川商贸有限公司.docx b/addons/shopro_huifu/docs/汇付分账40%申请填写说明-贵州宥川商贸有限公司.docx new file mode 100644 index 0000000000000000000000000000000000000000..d23b3a8e6ecb7d7e76c0a68ff2d82c3647967034 GIT binary patch literal 40184 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 Cwjp}} literal 0 HcmV?d00001 diff --git a/addons/shopro_huifu/docs/汇付分账40%申请说明与合作协议模板.md b/addons/shopro_huifu/docs/汇付分账40%申请说明与合作协议模板.md new file mode 100644 index 0000000..0315a1b --- /dev/null +++ b/addons/shopro_huifu/docs/汇付分账40%申请说明与合作协议模板.md @@ -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* diff --git a/addons/shopro_huifu/library/split/HuifuMerchantSplitService.php b/addons/shopro_huifu/library/split/HuifuMerchantSplitService.php index 5d6dc3f..b88f617 100644 --- a/addons/shopro_huifu/library/split/HuifuMerchantSplitService.php +++ b/addons/shopro_huifu/library/split/HuifuMerchantSplitService.php @@ -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 === '') { diff --git a/addons/shopro_huifu/upgrade_huifu_split_bind.sql b/addons/shopro_huifu/upgrade_huifu_split_bind.sql index 8f97e60..afe9954 100644 --- a/addons/shopro_huifu/upgrade_huifu_split_bind.sql +++ b/addons/shopro_huifu/upgrade_huifu_split_bind.sql @@ -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'), diff --git a/application/admin/view/index/login.html b/application/admin/view/index/login.html index abf102d..148f59a 100644 --- a/application/admin/view/index/login.html +++ b/application/admin/view/index/login.html @@ -3,7 +3,7 @@ - 雄戈小酒商城后台登录 + 橙虎小酒商城后台登录 @@ -19,10 +19,10 @@ -

雄戈小酒

+

橙虎小酒

@@ -52,10 +52,10 @@ - + {:token()} @@ -121,7 +121,7 @@ - + diff --git a/application/admin/view/shopro/store/store/add.html b/application/admin/view/shopro/store/store/add.html index d965885..3ae0015 100644 --- a/application/admin/view/shopro/store/store/add.html +++ b/application/admin/view/shopro/store/store/add.html @@ -336,7 +336,7 @@ -
在关联用户时请务必成为雄戈小酒商城用户
+
在关联用户时请务必成为橙虎小酒商城用户
diff --git a/application/extra/site.php b/application/extra/site.php index b56fbd8..802c766 100644 --- a/application/extra/site.php +++ b/application/extra/site.php @@ -1,7 +1,7 @@ '雄戈小酒', + 'name' => '橙虎小酒', 'beian' => '', 'cdnurl' => '', 'version' => '1.0.1', diff --git a/public/assets/login/generate_login_previews.py b/public/assets/login/generate_login_previews.py index 4b9d85b..78bcf14 100644 --- a/public/assets/login/generate_login_previews.py +++ b/public/assets/login/generate_login_previews.py @@ -1,4 +1,4 @@ -"""Generate admin login page preview mockups for 雄戈小酒.""" +"""Generate admin login page preview mockups for 橙虎小酒.""" from pathlib import Path from PIL import Image, ImageDraw, ImageFont @@ -84,7 +84,7 @@ def scheme_a_split(img): draw = ImageDraw.Draw(img) draw_badge(draw, 120, 120, 48, "雄戈") - draw.text((120, 190), "雄戈小酒", fill=(255, 255, 255), font=load_font(42, bold=True)) + draw.text((120, 190), "橙虎小酒", fill=(255, 255, 255), font=load_font(42, bold=True)) draw.text((120, 250), "商城运营管理中心", fill=(180, 200, 230), font=load_font(18)) draw.text((120, 282), "商品 · 订单 · 分销 · 区域服务", fill=(140, 170, 210), font=load_font(15)) draw_bottle_icon(draw, 360, 480, 2.2) @@ -118,7 +118,7 @@ def scheme_b_centered(img): draw = ImageDraw.Draw(img) draw_badge(draw, W // 2, 130, 56, "雄戈") - draw.text((W // 2, 220), "雄戈小酒 · 后台管理", fill=(255, 255, 255), font=load_font(36, bold=True), anchor="mm") + draw.text((W // 2, 220), "橙虎小酒 · 后台管理", fill=(255, 255, 255), font=load_font(36, bold=True), anchor="mm") draw.text((W // 2, 268), "一男人的朋友一", fill=(200, 220, 255), font=load_font(16), anchor="mm") cw, ch = 420, 480 @@ -139,7 +139,7 @@ def scheme_c_premium(img): draw.line([(split, 0), (split, H)], fill=(201, 162, 39, 80), width=1) draw_badge(draw, 100, 100, 52, "雄戈") - draw.text((100, 175), "雄戈小酒", fill=(245, 215, 142), font=load_font(40, bold=True)) + draw.text((100, 175), "橙虎小酒", fill=(245, 215, 142), font=load_font(40, bold=True)) draw.text((100, 232), "XIONGGE LIQUOR ADMIN", fill=(201, 162, 39), font=load_font(14)) draw.text((100, 270), "高端白酒 · 数字化运营平台", fill=(160, 180, 210), font=load_font(16)) diff --git a/public/assets/login/generate_login_previews_v2.py b/public/assets/login/generate_login_previews_v2.py index a96bc9a..65dd165 100644 --- a/public/assets/login/generate_login_previews_v2.py +++ b/public/assets/login/generate_login_previews_v2.py @@ -80,7 +80,7 @@ def draw_form_content(draw, x, y, w, dark=False): btn_txt = (20, 35, 70) if dark else (255, 255, 255) draw.text((x, y), "欢迎登录", fill=title_c, font=load_font(30, bold=True)) - draw.text((x, y + 44), "雄戈小酒商城后台管理系统", fill=sub_c, font=load_font(14)) + draw.text((x, y + 44), "橙虎小酒商城后台管理系统", fill=sub_c, font=load_font(14)) fy = y + 96 for label in ("用户名", "密码"): draw.text((x, fy), label, fill=label_c, font=load_font(13, bold=True)) @@ -137,7 +137,7 @@ def scheme_d_minimal_white(): draw.rounded_rectangle((60, 60, 130, 130), radius=35, fill=(10, 36, 99)) draw.text((95, 95), "雄戈", fill=(245, 215, 142), font=load_font(22, bold=True), anchor="mm") - draw.text((60, 160), "雄戈小酒", fill=(10, 36, 99), font=load_font(48, bold=True)) + draw.text((60, 160), "橙虎小酒", fill=(10, 36, 99), font=load_font(48, bold=True)) draw.text((60, 230), "一男人的朋友一", fill=(107, 114, 128), font=load_font(18)) draw.text((60, 270), "数字化商城运营平台", fill=(156, 163, 175), font=load_font(15)) @@ -173,7 +173,7 @@ def scheme_e_glass_mesh(): draw.ellipse((cx - r, cy - r, cx + r, cy + r), outline=(22, 119, 255, 60), width=2) # left brand text - draw.text((80, 120), "雄戈小酒", fill=(10, 36, 99), font=load_font(52, bold=True)) + draw.text((80, 120), "橙虎小酒", fill=(10, 36, 99), font=load_font(52, bold=True)) draw.text((80, 195), "商城后台", fill=(22, 119, 255), font=load_font(36, bold=True)) draw.text((80, 260), "安全 · 高效 · 一站式管理", fill=(107, 114, 128), font=load_font(16)) @@ -210,7 +210,7 @@ def scheme_f_dashboard(): draw_network_lines(draw, split, H) draw.text((56, 56), "XIONGGE ADMIN", fill=(64, 150, 255), font=load_font(13)) - draw.text((56, 88), "雄戈小酒", fill=(255, 255, 255), font=load_font(44, bold=True)) + draw.text((56, 88), "橙虎小酒", fill=(255, 255, 255), font=load_font(44, bold=True)) draw.text((56, 150), "运营数据一目了然", fill=(180, 200, 230), font=load_font(16)) # mini dashboard cards @@ -262,7 +262,7 @@ def scheme_g_luxury_split(): # gold line draw.rectangle((48, 80, 120, 84), fill=(201, 162, 39)) - draw.text((48, 100), "雄戈小酒", fill=(245, 215, 142), font=load_font(56, bold=True)) + draw.text((48, 100), "橙虎小酒", fill=(245, 215, 142), font=load_font(56, bold=True)) draw.text((48, 180), "XIONGGE · PREMIUM LIQUOR", fill=(201, 162, 39), font=load_font(14)) draw.text((48, 220), "后台管理系统", fill=(200, 210, 230), font=load_font(22)) diff --git a/public/assets/login/previews/index.html b/public/assets/login/previews/index.html index 5c72c61..4a95a88 100644 --- a/public/assets/login/previews/index.html +++ b/public/assets/login/previews/index.html @@ -3,7 +3,7 @@ - 雄戈小酒 · 后台登录页方案预览 + 橙虎小酒 · 后台登录页方案预览 -

雄戈小酒 · 后台登录页设计方案

+

橙虎小酒 · 后台登录页设计方案

共 7 套方案,点击查看大图。选定后回复「选 D」或「选 F」等,我立即按方案实现正式页面。

★ 推荐优先看下方 4 套新方案(D / E / F / G)

diff --git a/public/usr.html b/public/usr.html index f9a5c2c..792b559 100644 --- a/public/usr.html +++ b/public/usr.html @@ -78,13 +78,13 @@ 用户协议

- 用户协议
一、前言
本协议是用户(以下简称“您”或“用户”)与[雄戈小酒小程序](以下简称“本应用”或“我们”)之间关于[雄戈小酒小程序]移动应用程序(以下简称“本应用”或“应用”)使用的法律协议。请您在下载、安装、使用本应用前,务必认真阅读并充分理解本协议的全部内容。一旦您开始下载、安装、使用本应用,即表示您已充分理解本协议的内容,并接受本协议的约束。
二、服务内容
1我们通过本应用向您提供包括但不限于[列举服务内容]等服务。您可以通过本应用获取相关信息、使用相关功能。
2我们有权随时对服务内容进行调整,并在本应用中公布。调整后的服务内容自公布时生效,您应自行关注并及时了解。
三、用户账号
1您需要按照本应用的要求注册账号,并妥善保管您的账号及密码。您应对您账号下的所有行为负责。
2您不得将账号转让、出借或赠予他人使用,否则我们有权随时冻结或注销该账号。
四、使用规则
1您在使用本应用时,应遵守国家法律法规、社会公序良俗及本应用的相关规定。
2您不得利用本应用从事任何违法、违规或侵犯他人合法权益的行为。
3您不得在本应用中发布、传播任何违法、违规、虚假、色情、暴力、诽谤、辱骂、恶意攻击或侵犯他人合法权益的内容。
4您应尊重他人的知识产权,不得在本应用中发布、传播任何侵犯他人知识产权的内容。
五、隐私保护
1我们将按照《隐私政策》的规定,保护您的个人隐私信息。
2您同意我们为向您提供服务而收集、使用、存储和传输您的相关信息。
六、免责声明
1我们不保证本应用提供的服务能够满足您的所有需求,也不保证服务的及时性、安全性、准确性或完整性。
2对于因不可抗力、系统维护、网络故障等原因导致的服务中断或延迟,我们不承担任何责任。
3对于您在使用本应用过程中因违反国家法律法规、社会公序良俗或本应用相关规定而造成的任何损失,我们不承担任何责任。
七、协议变更
我们有权随时修改本协议的内容,并在本应用中公布。修改后的协议自公布时生效,您应自行关注并及时了解。如您不同意修改后的协议内容,您应立即停止使用本应用。
八、法律适用与争议解决
1本协议的订立、执行和解释及争议的解决均适用中华人民共和国法律。
2若您与我们就本协议发生争议,应首先通过友好协商解决;协商不成的,任何一方均有权向[指定法院]提起诉讼。
九、其他
1本协议自您开始使用本应用时生效,至您停止使用本应用并注销账号时终止。
2本协议的最终解释权归我们所有。如有任何疑问或建议,请通过[客服联系方式]与我们联系。

+ 用户协议
一、前言
本协议是用户(以下简称“您”或“用户”)与[橙虎小酒小程序](以下简称“本应用”或“我们”)之间关于[橙虎小酒小程序]移动应用程序(以下简称“本应用”或“应用”)使用的法律协议。请您在下载、安装、使用本应用前,务必认真阅读并充分理解本协议的全部内容。一旦您开始下载、安装、使用本应用,即表示您已充分理解本协议的内容,并接受本协议的约束。
二、服务内容
1我们通过本应用向您提供包括但不限于[列举服务内容]等服务。您可以通过本应用获取相关信息、使用相关功能。
2我们有权随时对服务内容进行调整,并在本应用中公布。调整后的服务内容自公布时生效,您应自行关注并及时了解。
三、用户账号
1您需要按照本应用的要求注册账号,并妥善保管您的账号及密码。您应对您账号下的所有行为负责。
2您不得将账号转让、出借或赠予他人使用,否则我们有权随时冻结或注销该账号。
四、使用规则
1您在使用本应用时,应遵守国家法律法规、社会公序良俗及本应用的相关规定。
2您不得利用本应用从事任何违法、违规或侵犯他人合法权益的行为。
3您不得在本应用中发布、传播任何违法、违规、虚假、色情、暴力、诽谤、辱骂、恶意攻击或侵犯他人合法权益的内容。
4您应尊重他人的知识产权,不得在本应用中发布、传播任何侵犯他人知识产权的内容。
五、隐私保护
1我们将按照《隐私政策》的规定,保护您的个人隐私信息。
2您同意我们为向您提供服务而收集、使用、存储和传输您的相关信息。
六、免责声明
1我们不保证本应用提供的服务能够满足您的所有需求,也不保证服务的及时性、安全性、准确性或完整性。
2对于因不可抗力、系统维护、网络故障等原因导致的服务中断或延迟,我们不承担任何责任。
3对于您在使用本应用过程中因违反国家法律法规、社会公序良俗或本应用相关规定而造成的任何损失,我们不承担任何责任。
七、协议变更
我们有权随时修改本协议的内容,并在本应用中公布。修改后的协议自公布时生效,您应自行关注并及时了解。如您不同意修改后的协议内容,您应立即停止使用本应用。
八、法律适用与争议解决
1本协议的订立、执行和解释及争议的解决均适用中华人民共和国法律。
2若您与我们就本协议发生争议,应首先通过友好协商解决;协商不成的,任何一方均有权向[指定法院]提起诉讼。
九、其他
1本协议自您开始使用本应用时生效,至您停止使用本应用并注销账号时终止。
2本协议的最终解释权归我们所有。如有任何疑问或建议,请通过[客服联系方式]与我们联系。


- 雄戈小酒 + 橙虎小酒

手机号码:18786600784 diff --git a/public/yisi.html b/public/yisi.html index 1479f4c..d5af991 100644 --- a/public/yisi.html +++ b/public/yisi.html @@ -35,11 +35,11 @@ html {

-

雄戈小酒隐私政策

+

橙虎小酒隐私政策

本版发布日期:2024.06.01
生效日期:2024.06.01

- 雄戈小酒(以下简称“我们”)深知个人信息对您而言的重要性,也感谢您对我们的信任,我们将按法律法规要求,采取相应安全保护措施,尽力保护您的个人信息安全可控。 + 橙虎小酒(以下简称“我们”)深知个人信息对您而言的重要性,也感谢您对我们的信任,我们将按法律法规要求,采取相应安全保护措施,尽力保护您的个人信息安全可控。 本政策主要向您阐述我们收集哪些信息、所收集信息的用途、您所享有的权利等,并申明了我们对保护个人隐私的承诺。我们未来可能根据信息处理情境的变化更新或修改本政策。请您在使用我们产品提供的任何服务前知晓本政策和任何补充政策。

我们将恪守以下原则,保护您的个人信息:权责一致原则、目的明确原则、选择同意原则、最少够用原则、公开透明原则、确保安全原则、主体参与原则等。同时,我们承诺,我们将按业界成熟的安全标准,采取相应的安全保护措施来保护您的个人信息。 @@ -556,7 +556,7 @@ html {

-

雄戈小酒

+

橙虎小酒

APP备案号:黔ICP备2023018092号-3A

diff --git a/xgsc.gynhc.com_wx/components/privacy-auth-modal/privacy-auth-modal.vue b/xgsc.gynhc.com_wx/components/privacy-auth-modal/privacy-auth-modal.vue new file mode 100644 index 0000000..44c0ca8 --- /dev/null +++ b/xgsc.gynhc.com_wx/components/privacy-auth-modal/privacy-auth-modal.vue @@ -0,0 +1,164 @@ + + + + + + diff --git a/xgsc.gynhc.com_wx/components/shopro-live-card/shopro-live-card.vue b/xgsc.gynhc.com_wx/components/shopro-live-card/shopro-live-card.vue deleted file mode 100644 index 3ea10b3..0000000 --- a/xgsc.gynhc.com_wx/components/shopro-live-card/shopro-live-card.vue +++ /dev/null @@ -1,361 +0,0 @@ - - - - - diff --git a/xgsc.gynhc.com_wx/components/yk-authpup/yk-authpup.vue b/xgsc.gynhc.com_wx/components/yk-authpup/yk-authpup.vue index 8bf4eca..69babd1 100644 --- a/xgsc.gynhc.com_wx/components/yk-authpup/yk-authpup.vue +++ b/xgsc.gynhc.com_wx/components/yk-authpup/yk-authpup.vue @@ -44,23 +44,23 @@ refuseNum: '', //拒绝次数, authList: { 'WRITE_EXTERNAL_STORAGE': { - title: "《雄戈小酒》对存储空间/照片权限申请说明", + title: "《橙虎小酒》对存储空间/照片权限申请说明", content: "便于您使用该功能上传您的照片/图片/视频及用于更换头像、意见反馈、保存相册、发布商品/分享、下载与客服沟通等场景中读取和写入相册和文件内容。" }, 'ACCESS_FINE_LOCATION': { - title: "《雄戈小酒》对地理位置权限申请说明", + title: "《橙虎小酒》对地理位置权限申请说明", content: "便于应用程序可以提供基于位置的服务、定位导航、附近搜索等功能。" }, 'CAMERA': { - title: "《雄戈小酒》对相机/摄像头权限申请说明", + title: "《橙虎小酒》对相机/摄像头权限申请说明", content: "便于您使用该功能拍照上传您的照片/视频及用于更换头像、意见反馈、保存相册、发布商品/动态、下载与客服沟通等场景中使用" }, 'RECORD_AUDIO': { - title: "《雄戈小酒》对麦克风权限申请说明", + title: "《橙虎小酒》对麦克风权限申请说明", content: "便于您使用该功能进行录音、语音通话、发布语音、与客服语音沟通等场景中使用" }, 'CALL_PHONE': { - title: "《雄戈小酒》对拨打/管理电话权限申请说明", + title: "《橙虎小酒》对拨打/管理电话权限申请说明", content: "便于您使用该功能联系买家、骑手或者客服、业务经理与联系等场景下使用" } } diff --git a/xgsc.gynhc.com_wx/design-system/default/MASTER.md b/xgsc.gynhc.com_wx/design-system/default/MASTER.md index c60c87f..97accce 100644 --- a/xgsc.gynhc.com_wx/design-system/default/MASTER.md +++ b/xgsc.gynhc.com_wx/design-system/default/MASTER.md @@ -6,7 +6,7 @@ --- -**Project:** 雄戈小酒 +**Project:** 橙虎小酒 **Generated:** 2026-08-27 21:00:42 **Category:** Luxury/Premium Brand **Design Dials:** Variance 2/10 (Centered / Minimal) | Motion 2/10 (Subtle) | Density 3/10 (Spacious) diff --git a/xgsc.gynhc.com_wx/env.js b/xgsc.gynhc.com_wx/env.js index 3eaa1a7..3a7e65b 100644 --- a/xgsc.gynhc.com_wx/env.js +++ b/xgsc.gynhc.com_wx/env.js @@ -6,4 +6,3 @@ export const BASE_URL = 'https://xgsc.gynhc.com' //后台根域名 https://demo. export const API_URL = `${BASE_URL}/addons/shopro/` //后台接口域名 export const IMG_URL = 'https://xgsc.gynhc.com' //全局网络图片地址变量,css背景图片地址变量在uni.scss export const MAP_KEY = '24eb092b2163da8fa5087bf92844a5bd'; //高德地图开发者Web服务key,逆坐标解析 -export const HAS_LIVE = false //后台是否开通直播权限,根据情况在manifest.json中,开启注释相应组件的引入,pages.json中打开直播 diff --git a/xgsc.gynhc.com_wx/manifest.json b/xgsc.gynhc.com_wx/manifest.json index fa46c6f..a4df0e0 100644 --- a/xgsc.gynhc.com_wx/manifest.json +++ b/xgsc.gynhc.com_wx/manifest.json @@ -1,7 +1,7 @@ { - "name" : "雄戈小酒", + "name" : "橙虎小酒", "appid" : "__UNI__F195040", - "description" : "雄戈小酒", + "description" : "橙虎小酒", "versionName" : "1.3.9", "versionCode" : 137, "transformPx" : false, @@ -31,7 +31,6 @@ "Maps" : {}, "OAuth" : {}, "VideoPlayer" : {}, - "LivePusher" : {}, "Record" : {}, "Share" : {}, "Payment" : {}, diff --git a/xgsc.gynhc.com_wx/pages.json b/xgsc.gynhc.com_wx/pages.json index 54ab12e..538d21b 100644 --- a/xgsc.gynhc.com_wx/pages.json +++ b/xgsc.gynhc.com_wx/pages.json @@ -79,36 +79,6 @@ "group": "商城" } }, - { - "path": "pages/live/list", - "name": "video", - "style": { - "navigationBarTitleText": "", - "enablePullDownRefresh": true - }, - "meta": { - "auth": false, - "async": true, - "title": "直播", - "group": "直播" - } - }, - { - "path": "pages/live/list2", - "name": "video", - - "style": { - "navigationBarTitleText": "", - "navigationStyle": "custom", - "enablePullDownRefresh": false - }, - "meta": { - "auth": false, - "async": true, - "title": "直播", - "group": "直播" - } - }, { "path": "pages/index/protocol", "style": { @@ -268,18 +238,6 @@ { "root": "pages/app", "pages": [ - // { - // "path": "live/list", - // "style": { - // "navigationBarTitleText": "直播列表" - // }, - // "meta": { - // "auth": false, - // "async": false, - // "title": "直播列表", - // "group": "直播" - // } - // }, { "path": "store/index", "style": { @@ -305,33 +263,6 @@ "group": "门店" } }, - { - "path": "video/index", - "style": { - "navigationBarTitleText": "视频列表", - "enablePullDownRefresh": true - }, - "meta": { - "auth": false, - "async": true, - "title": "视频列表", - "group": "视频" - } - }, - { - "path": "video/detail", - "style": { - "navigationBarTitleText": "视频详情", - "navigationStyle": "custom", - "enablePullDownRefresh": false - }, - "meta": { - "auth": false, - "async": true, - "title": "视频详情", - "group": "视频" - } - }, { "path": "score/list", "style": { @@ -975,23 +906,6 @@ "group": "用户" } }, - { - "path": "live", - "style": { - "navigationStyle": "custom", - "navigationBarTextStyle": "white", - "app-plus": { - "titleNView": false, - "scrollIndicator": "none" - } - }, - "meta": { - "auth": true, - "async": true, - "title": "开启直播", - "group": "直播" - } - }, { "path": "set", "style": { @@ -1200,7 +1114,7 @@ }, "globalStyle": { "navigationBarTextStyle": "black", - "navigationBarTitleText": "雄戈小酒", + "navigationBarTitleText": "橙虎小酒", "navigationBarBackgroundColor": "#FFFFFF", "backgroundColor": "#F5F7FA" }, @@ -1221,13 +1135,6 @@ "iconPath": "static/images/tabbar/tabbar_category.png", "selectedIconPath": "/static/images/tabbar/tabbar_category1.png" }, - // { - // // "pagePath": "pages/live/list", - // "pagePath": "pages/live/list2", - // "text": "直播", - // "iconPath": "static/images/tabbar/tabbar_video.png", - // "selectedIconPath": "/static/images/tabbar/tabbar_video1.png" - // }, { "pagePath": "pages/index/cart", "text": "购物车", diff --git a/xgsc.gynhc.com_wx/pages/app/video/detail.vue b/xgsc.gynhc.com_wx/pages/app/video/detail.vue deleted file mode 100644 index 7266e7b..0000000 --- a/xgsc.gynhc.com_wx/pages/app/video/detail.vue +++ /dev/null @@ -1,163 +0,0 @@ - - - - - \ No newline at end of file diff --git a/xgsc.gynhc.com_wx/pages/app/video/index.vue b/xgsc.gynhc.com_wx/pages/app/video/index.vue deleted file mode 100644 index 1f73980..0000000 --- a/xgsc.gynhc.com_wx/pages/app/video/index.vue +++ /dev/null @@ -1,169 +0,0 @@ - - - - - \ No newline at end of file diff --git a/xgsc.gynhc.com_wx/pages/index/components/sh-grid.vue b/xgsc.gynhc.com_wx/pages/index/components/sh-grid.vue index 629e3a5..cace30f 100644 --- a/xgsc.gynhc.com_wx/pages/index/components/sh-grid.vue +++ b/xgsc.gynhc.com_wx/pages/index/components/sh-grid.vue @@ -85,7 +85,6 @@ const TOOL_NAME_ALIAS = { const EXTRA_ICON_MAP = { '在线客服': 'uicon-server-man', - '开启直播': 'uicon-play-circle', '我的预约': 'uicon-calendar' }; @@ -122,7 +121,7 @@ export default { Object.keys(apiMap).forEach(name => { if (catalogNames.includes(name)) return; - if (name === '开启直播' && this.userInfo?.is_live != 1) return; + if (name === '开启直播') return; const remote = apiMap[name]; merged.push({ name, @@ -135,7 +134,7 @@ export default { return merged.filter(item => { if (isHiddenTool(item)) return false; - return item.name !== '开启直播' || this.userInfo?.is_live == 1; + return item.name !== '开启直播'; }); } }, @@ -155,9 +154,6 @@ export default { if (data.name === '我的预约' && !data.path) { data.path = '/pages/user/rob-order'; } - if (data.name === '开启直播' && !data.path) { - data.path = '/pages/user/live'; - } if (!data.path) { uni.showToast({ title: '功能暂未开放', icon: 'none' }); return; diff --git a/xgsc.gynhc.com_wx/pages/index/components/sh-live.vue b/xgsc.gynhc.com_wx/pages/index/components/sh-live.vue deleted file mode 100644 index b3871d2..0000000 --- a/xgsc.gynhc.com_wx/pages/index/components/sh-live.vue +++ /dev/null @@ -1,108 +0,0 @@ - - - - - diff --git a/xgsc.gynhc.com_wx/pages/index/index.vue b/xgsc.gynhc.com_wx/pages/index/index.vue index b758386..0dccf10 100644 --- a/xgsc.gynhc.com_wx/pages/index/index.vue +++ b/xgsc.gynhc.com_wx/pages/index/index.vue @@ -31,9 +31,6 @@ - - - @@ -89,13 +86,6 @@ import ShoproProtocol from '@/components/shopro-protocol/shopro-protocol.vue' import checkVersion from '@/pages/lq-upgrade/checkVersion.js' - // #ifdef MP-WEIXIN - import { - HAS_LIVE - } from '@/env'; - import shLive from './components/sh-live.vue'; - // #endif - import { mapMutations, mapActions, @@ -119,16 +109,10 @@ privacyModal, homeHead, homeZoneGrid, - ShoproProtocol, - // #ifdef MP-WEIXIN - shLive - // #endif + ShoproProtocol }, data() { return { - // #ifdef MP-WEIXIN - HAS_LIVE: HAS_LIVE, - // #endif isRefresh: true, enable: false, //是否开启吸顶。 diff --git a/xgsc.gynhc.com_wx/pages/index/index/home-head.vue b/xgsc.gynhc.com_wx/pages/index/index/home-head.vue index 999cbb9..d97505b 100644 --- a/xgsc.gynhc.com_wx/pages/index/index/home-head.vue +++ b/xgsc.gynhc.com_wx/pages/index/index/home-head.vue @@ -8,7 +8,7 @@ - {{ navTitle || '雄戈小酒' }} + {{ navTitle || '橙虎小酒' }} 臻选酱香 · 品质生活 @@ -172,7 +172,7 @@ export default { type: String, - default: '雄戈小酒' + default: '橙虎小酒' } diff --git a/xgsc.gynhc.com_wx/pages/index/user-copy.vue b/xgsc.gynhc.com_wx/pages/index/user-copy.vue index 24c185f..f88ae5d 100644 --- a/xgsc.gynhc.com_wx/pages/index/user-copy.vue +++ b/xgsc.gynhc.com_wx/pages/index/user-copy.vue @@ -23,7 +23,7 @@ - + diff --git a/xgsc.gynhc.com_wx/pages/index/view.vue b/xgsc.gynhc.com_wx/pages/index/view.vue index dced6df..2006b21 100644 --- a/xgsc.gynhc.com_wx/pages/index/view.vue +++ b/xgsc.gynhc.com_wx/pages/index/view.vue @@ -49,10 +49,6 @@ - - - - @@ -102,13 +98,6 @@ } from 'vuex'; import { filterHiddenTools } from '@/shopro/utils/hidden-tools'; - // #ifdef MP-WEIXIN - import { - HAS_LIVE - } from '@/env'; - import shLive from './components/sh-live.vue'; - // #endif - // #ifdef H5 let listenMove = document.body; //禁止手机h5下拉刷新带动整个页面。 let handle = function(e) { @@ -134,17 +123,11 @@ shSearch, shCategoryTabs, shoproLoading, - shPicAds, - // #ifdef MP-WEIXIN - shLive - // #endif + shPicAds }, data() { return { pageData: false, - // #ifdef MP-WEIXIN - HAS_LIVE: HAS_LIVE, - // #endif enable: false, //是否开启吸顶。 isScorll: false, viewTemplate: [], //自定义模板数据 diff --git a/xgsc.gynhc.com_wx/pages/live/list.vue b/xgsc.gynhc.com_wx/pages/live/list.vue deleted file mode 100644 index cfab797..0000000 --- a/xgsc.gynhc.com_wx/pages/live/list.vue +++ /dev/null @@ -1,216 +0,0 @@ - - - - - - diff --git a/xgsc.gynhc.com_wx/pages/live/list2.nvue b/xgsc.gynhc.com_wx/pages/live/list2.nvue deleted file mode 100644 index a9c23a2..0000000 --- a/xgsc.gynhc.com_wx/pages/live/list2.nvue +++ /dev/null @@ -1,99 +0,0 @@ - - - - - \ No newline at end of file diff --git a/xgsc.gynhc.com_wx/pages/public/search.vue b/xgsc.gynhc.com_wx/pages/public/search.vue index 46a5e78..a7ea641 100644 --- a/xgsc.gynhc.com_wx/pages/public/search.vue +++ b/xgsc.gynhc.com_wx/pages/public/search.vue @@ -119,7 +119,7 @@ - - \ No newline at end of file diff --git a/xgsc.gynhc.com_wx/pages/user/live.nvue b/xgsc.gynhc.com_wx/pages/user/live.nvue deleted file mode 100644 index 06c5653..0000000 --- a/xgsc.gynhc.com_wx/pages/user/live.nvue +++ /dev/null @@ -1,441 +0,0 @@ - - - - - \ No newline at end of file diff --git a/xgsc.gynhc.com_wx/shopro/config/theme.js b/xgsc.gynhc.com_wx/shopro/config/theme.js index 8490a95..473c3f6 100644 --- a/xgsc.gynhc.com_wx/shopro/config/theme.js +++ b/xgsc.gynhc.com_wx/shopro/config/theme.js @@ -1,4 +1,4 @@ -// 雄戈小酒 - 商务蓝白主题(供 JS/template 内联使用) +// 橙虎小酒 - 商务蓝白主题(供 JS/template 内联使用) export default { navy: '#0A2463', navyLight: '#1E3A8A', diff --git a/xgsc.gynhc.com_wx/shopro/request/apis.js b/xgsc.gynhc.com_wx/shopro/request/apis.js index 99c005d..60a6bc6 100644 --- a/xgsc.gynhc.com_wx/shopro/request/apis.js +++ b/xgsc.gynhc.com_wx/shopro/request/apis.js @@ -40,12 +40,6 @@ export default { method: "GET", // desc: '自定义模板页面', }, - live: { - url: "live", - auth: false, - method: "GET", - // desc: '直播列表', - }, wxJssdk: { url: "wechat/jssdk", auth: false, @@ -82,45 +76,6 @@ export default { method: "POST", // desc: '发送短信', }, - getLiveAddr: { - url: "live/getLiveAddr", - auth: true, - method: "GET", - // desc: '获取直播推流地址', - }, - endLive: { - url: "live/endLive", - auth: true, - method: "GET", - // desc: '结束直播', - }, - getVideoUrl: { - url: "live/getVideoUrl", - auth: false, - method: "GET", - // desc: '获取拉流地址', - } - }, - /** 视频 ↓ **/ - video: { - index: { - url: "video/index", - auth: false, - method: "GET", - // desc: '视频列表', - }, - detail: { - url: "video/detail", - auth: false, - method: "GET", - // desc: '视频详情', - }, - playNum: { - url: "video/playNum", - auth: false, - method: "GET", - // desc: '视频播放量统计', - } }, /** 分类 ↓ **/ category: { diff --git a/xgsc.gynhc.com_wx/shopro/utils/theme.js b/xgsc.gynhc.com_wx/shopro/utils/theme.js index 0bb1d3a..404beb5 100644 --- a/xgsc.gynhc.com_wx/shopro/utils/theme.js +++ b/xgsc.gynhc.com_wx/shopro/utils/theme.js @@ -282,10 +282,10 @@ export function applyThemeToTabbar(tabbarData) { const LEGACY_HEADER_COLORS = ['#FFA33E', '#ff1926', '#FF0e25', '#ff0e25', '#EFC480', '#001F54', '#003399', '#002366', '#0066CC', '#0055AA']; -const BRAND_NAME = '雄戈小酒'; +const BRAND_NAME = '橙虎小酒'; const LEGACY_BRAND_REPLACEMENTS = [ - [/雄哥小酒/g, '雄戈小酒'], + [/雄哥小酒/g, '橙虎小酒'], [/雄哥系列/g, '雄戈系列'], [/贵州雄哥酒业有限公司/g, '贵州雄戈酒业有限公司'], [/雄哥酒业/g, '雄戈酒业'], diff --git a/xgsc.gynhc.com_wx/shopro/wechat/privacy.js b/xgsc.gynhc.com_wx/shopro/wechat/privacy.js new file mode 100644 index 0000000..5b04ad5 --- /dev/null +++ b/xgsc.gynhc.com_wx/shopro/wechat/privacy.js @@ -0,0 +1,59 @@ +/** + * 微信小程序隐私协议:仅在调用相册/相机前按需触发 + */ + +let handlerRegistered = false; +let showPrivacyCallback = null; + +export function setPrivacyModalHandler(callback) { + showPrivacyCallback = callback || null; +} + +export function initPrivacyAuthorization() { + // #ifdef MP-WEIXIN + if (handlerRegistered || typeof wx === 'undefined' || !wx.onNeedPrivacyAuthorization) { + return; + } + handlerRegistered = true; + wx.onNeedPrivacyAuthorization((resolve) => { + if (typeof showPrivacyCallback === 'function') { + showPrivacyCallback(resolve); + return; + } + // 未注册自定义弹窗时,交给微信官方弹窗处理 + }); + // #endif +} + +export function getPrivacySettingInfo() { + return new Promise((resolve) => { + // #ifdef MP-WEIXIN + if (typeof wx === 'undefined' || !wx.getPrivacySetting) { + resolve({ needAuthorization: false, privacyContractName: '' }); + return; + } + wx.getPrivacySetting({ + success(res) { + resolve({ + needAuthorization: !!res.needAuthorization, + privacyContractName: res.privacyContractName || '' + }); + }, + fail() { + resolve({ needAuthorization: false, privacyContractName: '' }); + } + }); + // #endif + // #ifndef MP-WEIXIN + resolve({ needAuthorization: false, privacyContractName: '' }); + // #endif + }); +} + +export function openPrivacyContract() { + // #ifdef MP-WEIXIN + if (typeof wx !== 'undefined' && wx.openPrivacyContract) { + wx.openPrivacyContract(); + } + // #endif +} diff --git a/xgsc.gynhc.com_wx/static/images/tabbar/generate_tabbar_icons.py b/xgsc.gynhc.com_wx/static/images/tabbar/generate_tabbar_icons.py index aca061e..b2c3412 100644 --- a/xgsc.gynhc.com_wx/static/images/tabbar/generate_tabbar_icons.py +++ b/xgsc.gynhc.com_wx/static/images/tabbar/generate_tabbar_icons.py @@ -1,4 +1,4 @@ -"""Generate tab bar icons for 雄戈小酒 mini-program.""" +"""Generate tab bar icons for 橙虎小酒 mini-program.""" from PIL import Image, ImageDraw SIZE = 162 # 2x for retina (display as 81px) diff --git a/xgsc.gynhc.com_wx/static/style/theme.scss b/xgsc.gynhc.com_wx/static/style/theme.scss index e88d800..30a2ba1 100644 --- a/xgsc.gynhc.com_wx/static/style/theme.scss +++ b/xgsc.gynhc.com_wx/static/style/theme.scss @@ -1,4 +1,4 @@ -// 雄戈小酒 - 商务蓝白主题(深蓝 Logo + 商务蓝交互) +// 橙虎小酒 - 商务蓝白主题(深蓝 Logo + 商务蓝交互) $brand-navy: #0A2463; $brand-navy-light: #1E3A8A; $brand-primary: #1677FF;