# 更新日志

## v1.0.2.34 - 连续签到任务与卡密搜索弹窗修复
发布日期：2026-05-31

### 重要说明

- 本版本面向岁岁云商城独立运营版本，修复站点任务中连续签到达到上限后进度停留、奖励无法自动发放的问题。
- 同步修复后台卡密列表搜索弹窗可能只显示黑色遮罩的问题，提升后台日常运营操作稳定性。
- 本次更新不包含数据库结构变更，不改变签到奖励配置含义。

### 修复问题

- 修复用户连续签到天数被签到奖励上限截断，导致站点任务中超过该上限的连续签到任务无法达标的问题。
- 修复历史签到记录已停留在上限天数时，站点任务进度读取 `continue` 最大值导致奖励无法补发的问题。
- 修复后台卡密列表搜索弹窗和搜索按钮复用同一 DOM ID，可能造成 Bootstrap 弹窗只出现遮罩、内容不可见的问题。

### 新增功能

- 本版本不新增独立功能模块。

### 优化改进

- 站点任务的连续签到进度改为按签到日期重新计算当前连续天数，兼容历史记录中 `continue` 已被截断的账号。
- 签到奖励倍数仍按后台签到奖励天数上限计算，避免连续天数继续增长后放大奖励倍数。
- 后台卡密搜索弹窗改用独立 ID 和明确弹窗类名，减少与页面按钮、公共搜索弹窗的冲突。

### 界面样式

- 优化后台卡密列表搜索弹窗层级、宽度和按钮居中表现，避免遮罩盖住弹窗内容。

### 部署说明

- 程序缓存版本更新到 `2026053101`。
- 本版本不包含数据库结构变更。
- 升级后建议测试用户中心站点任务中的连续签到任务、签到奖励金额，以及后台卡密列表搜索弹窗在 PC 和手机端的打开、关闭、提交表现。

### 后续计划

- 持续梳理站点任务、签到奖励和运营活动之间的进度计算口径，让奖励规则更清晰可核对。

## v1.0.2.33 - 重复购买拦截回归修复
发布日期：2026-05-26

### 重要说明

- 本版本面向岁岁云商城独立运营版本，修复上一版本在下单入口新增重复购买拦截后，部分允许复购商品被误判为重复提交的问题。
- 运营站点通过同系统 API 对接上游时，不再由 API 层按“同商品 + 同账号”强制拦截正常复购。
- 本次更新不改变数据库结构，不调整页面视觉样式。

### 修复问题

- 修复 API 对接下单时，允许重复购买的商品可能返回“今天已添加过，请勿重复提交”的问题。
- 修复前台普通下单中，历史商品 `repeat` 字段为 0 时可能误拦截正常复购的问题。
- 修复批量下单和卡密兑换入口复用同类拦截逻辑，导致同账号再次购买失败的问题。
- 清理已不再使用的 API 重复购买拦截函数，避免后续入口误调用。

### 新增功能

- 本版本不新增数据库表或独立功能模块。

### 优化改进

- 恢复运营站点复购链路的兼容性，重复购买规则不再由本次新增的 API/前台入口硬拦截扩大影响。
- 保留库存、余额、黑名单、必填项、数量上下限等原有下单校验，不改变商品库存与扣款流程。

### 界面样式

- 本版本不调整页面视觉样式。

### 部署说明

- 程序缓存版本更新到 `2026052507`。
- 本版本不包含数据库结构变更。
- 升级后建议测试同账号重复购买、API 对接补单、普通前台下单、批量下单和卡密兑换入口。

### 后续计划

- 继续梳理商品重复购买规则，把真正需要防重复提交的场景与允许复购的运营商品分开设计，避免影响正常销售。
## v1.0.2.32 - 价格层级与订单分润链路修复
发布日期：2026-05-25

### 重要说明

- 本版本面向岁岁云商城独立运营版本，重点修复多级分站价格继承、密价生效和订单分润链路不一致的问题。
- 专业版分站、普及版分站、下级分站和下级的下级现在会按同一套成本、销售价和分润口径计算，减少实际成交后利润漏记或错记。
- 本次更新不改变数据库结构，不调整前台页面样式。

### 修复问题

- 修复分站用户下单后，分润校验误用站长自购成本，导致订单成交价与校验价不一致时不写入提成流水的问题。
- 修复专业版分站下面再开下级时，下级的下级价格没有完整继承上级专业站加价模板的问题。
- 修复普通分站设置密价后，后台可见密价但实际拿货价仍可能被上级价格覆盖的问题。
- 修复多级专业分站利润拆分时，直属专业站可能拿走全部上游差价，导致更上级专业站漏记差价利润的问题。

### 新增功能

- 本版本不新增数据库表或独立功能模块。

### 优化改进

- 统一分站价格口径：对外销售价、站长自购成本、下级普通价、下级专业价和密价分别按对应语义计算。
- 多级分站分润改为逐级拆分差价，订单流水中的提成金额与每层实际拿货价保持一致。
- 分站加价模板读取上级原始商品价格后再计算，避免同一模板被重复叠加。

### 界面样式

- 本版本不调整页面视觉样式。

### 部署说明

- 程序缓存版本更新到 `2026052505`。
- 本版本不包含数据库结构变更。
- 升级后建议测试专业版分站、普及版分站、下级分站、下级的下级、密价、分站加价模板和余额下单后的提成流水。

### 后续计划

- 继续完善分站价格诊断视图，把成交价、站长成本、下级拿货价和上级利润拆开展示，方便运营核对。

## v1.0.2.31 - 分站自购成本与用户搜索修复
发布日期：2026-05-25

### 重要说明

- 本版本面向岁岁云商城独立运营版本，修复分站站长自己登录前台购买商品时，被自己站点加价模板抬高拿货价的问题。
- 分站自己的加价模板继续用于计算下级专业价、下级普通价和前台销售价，不再影响站长本人自购成本。
- 本次更新同时修复后台用户列表搜索弹窗只显示黑色遮罩的问题。

### 修复问题

- 修复专业版分站站长自购商品时，`getToolPrice()` 返回自己模板计算后的下级专业价，而不是当前站长真实拿货成本的问题。
- 修复普及版/专业版分站站长自购价格口径与后台“当前成本”展示口径不一致的问题。
- 修复后台用户列表搜索弹窗与搜索按钮使用重复 DOM ID，导致 Bootstrap 弹窗可能只出现遮罩的问题。
- 修复用户列表搜索关键词未编码、请求失败时 loading 遮罩未关闭的问题。

### 新增功能

- 本版本不新增数据库表或核心业务功能。

### 优化改进

- 统一分站站长自购价格口径：站长本人购买使用当前站长真实拿货成本；模板继续只影响对外销售价和下级价格。
- 用户列表搜索弹窗改用独立 ID，并在 Ajax 异常时主动关闭加载层。

### 界面样式

- 本版本不调整页面视觉样式，仅修复用户列表搜索弹窗交互。

### 部署说明

- 程序缓存版本更新到 `2026052504`。
- 本版本不包含数据库结构变更。
- 升级后建议测试专业版分站站长自购、下级专业价、前台游客销售价，以及后台用户列表搜索弹窗。

### 后续计划

- 继续补充分站价格诊断视图，把本人自购成本、下级专业价、下级普通价和销售价拆开展示，减少运营误判。

## v1.0.2.30 - 手动同步任务触发修复
发布日期：2026-05-25

### 重要说明

- 本版本面向岁岁云商城独立运营版本，修复 HTTPS 站点手动同步任务创建后长期停留在“排队中 / 0%”的问题。
- 当服务器 Web PHP 禁用 `exec` 时，后台会退回本机 HTTP/HTTPS 请求触发同步接口；本版本修正该退回链路在 HTTPS 站点上的触发方式。
- 本次更新不改变自动同步的价格计算、商品落库规则、上游接口协议和数据库结构。

### 修复问题

- 修复手动同步退回 HTTP 触发时，先访问 `127.0.0.1:80` 遇到 HTTPS 跳转 `301` 却误判为已成功送达的问题。
- 修复 HTTPS 站点后台任务记录可能一直显示“任务已创建，等待后台接口接手执行”的问题。
- 修复同步任务已经创建但 `started_at` 为空、进度一直为 0%，导致运营人员误以为同步仍在排队的问题。

### 新增功能

- 本版本不新增数据库表或核心业务功能。

### 优化改进

- 手动同步触发优先使用 curl 按当前站点协议访问同步接口，并将当前域名解析到 `127.0.0.1`，减少外网回环、HTTPS 跳转和 Cloudflare 代理造成的误判。
- 在无 curl 环境下，Socket 兜底会按当前协议选择 80 或 443，不再盲目优先访问 80 端口。

### 界面样式

- 本版本不调整页面样式。

### 部署说明

- 程序缓存版本更新到 `2026052503`。
- 本版本不包含数据库结构变更。
- 升级后建议在“自动同步”页面点击手动同步，确认任务能从“排队中”进入“运行中”，并最终显示完成或明确失败原因。

### 后续计划

- 继续优化同步任务记录，把旧的排队任务、超时任务和分批同步进度展示得更清楚，方便运营人员判断是否需要继续执行下一批。

## v1.0.2.29 - 同系统对接密价输出修复
发布日期：2026-05-25

### 重要说明

- 本版本面向岁岁云商城独立运营版本，修复同系统对接接口在认证分站账号拉取商品时的价格输出口径。
- 上游站给下游站设置密价后，对接接口现在会把密价作为下游站自己的拿货成本输出，不再输出下游站继续给其下级的专业价。
- 本次更新同步修正 API 商品列表、分类商品列表、商品详情和 API 下单扣款口径，避免展示价与实际扣款价不一致。

### 修复问题

- 修复 `api.php?act=goodslist` 在专业版分站账号认证后，返回模板计算后的下级专业价，而不是当前对接账号真实拿货成本的问题。
- 修复 `api.php?act=goodslistbycid` 和 `api.php?act=goodsdetails` 同样可能输出下级专业价的问题。
- 修复 API 下单扣款仍可能按下级专业价扣款，导致上游已设置密价但下游实际对接成本偏高的问题。

### 新增功能

- 本版本不新增数据库表或核心业务功能。

### 优化改进

- 新增同系统对接价格 helper，统一认证对接账号的商品展示价和下单扣款价。
- 保持前台游客价、普通前台下单、分站前台销售价和分润链路不变，仅调整同系统对接 API 的认证账号价格口径。

### 界面样式

- 本版本不调整页面样式。

### 部署说明

- 程序缓存版本更新到 `2026052502`。
- 本版本不包含数据库结构变更。
- 升级后建议测试上游给下游设置密价后，下游重新同步商品、商品详情接口和 API 下单扣款是否都按密价成本执行。

### 后续计划

- 继续补充同系统对接价格诊断，帮助运营人员区分上游密价、下游本地售价、下游模板价和最终销售价。

## v1.0.2.28 - 推荐入口与密价成本口径修复
发布日期：2026-05-25

### 重要说明

- 本版本面向岁岁云商城独立运营版本，重点补齐推荐商品后台入口，并修正密价商品在后台和分站价格设置中的成本展示口径。
- 密价仍作为当前站长自己的拿货成本基准；站点加价模板会继续在该基准上计算下级专业价、下级普通价和最终销售价。
- 本次更新不改变商品下单扣款、订单成本写入、控价金额约束和既有分润计算链路。

### 修复问题

- 修复后台左侧菜单未显示“推荐商品”入口，导致推荐商品配置页不易进入的问题。
- 修复专业版分站设置密价后，后台密价列表把模板计算后的下级专业价误显示为“当前分站成本价”的问题。
- 修复后台批量调整密价时，专业版分站可能以模板后的下级专业价作为调价基准的问题。
- 修复分站商品价格保存时，下级专业价最低校验误参考模板后的下级专业价，导致密价基准被误认为失效的问题。

### 新增功能

- 本版本不新增数据库表或核心业务功能。

### 优化改进

- 统一后台密价管理和分站商品保存中的成本口径：当前站长成本使用真实拿货成本，下级专业价继续使用模板计算结果。
- 保持 `getToolCost2()` 作为下级专业价计算链路，不在底层函数中强行改变语义，降低对多级价格模板和分润链路的影响。

### 界面样式

- 后台商品与发卡菜单补充“推荐商品”入口，延续现有后台菜单结构。

### 部署说明

- 程序缓存版本更新到 `2026052501`。
- 本版本不包含数据库结构变更。
- 升级后建议测试后台推荐商品入口、密价商品列表、分站商品价格保存、一级/二级分站模板价格展示和前台下单售价。

### 后续计划

- 继续梳理分站价格设置页，把当前成本、下级专业价、下级普通价、最终售价和控价金额做成更直观的运营核对视图。

## v1.0.2.27 - 商品控价与首页推荐商品
发布日期：2026-05-24

### 重要说明

- 本版本面向岁岁云商城独立运营版本，新增商品控价金额，用于约束下级分站及更下级站点的最终前端售价最低限价。
- 控价金额只限制最终销售价，不改变对接成本、主站成本、密价成本、订单扣款和既有分润成本口径。
- 密价作为当前站长的拿货成本基准，站点启用加价模板时会继续在密价基础上计算下级专业价、下级普通价和销售价。

### 修复问题

- 修复分站存在密价时，部分路径可能把密价直接当作最终下级售价，导致站点默认加价模板未继续参与计算的问题。
- 修复后台管理侧销售价读取可能受登录态提前返回影响，误把专业价或成本价当作销售价的问题。
- 修复推荐商品接口在推荐表尚未创建时返回 500 的问题；现在会自动兼容空表并返回空推荐列表。

### 新增功能

- 后台商品编辑页新增“控价金额（最低限价）”输入项，主站可为商品设置下级最终售价底线。
- 首页新增折叠式推荐商品入口，展开后按自定义分类标签展示推荐商品。
- 推荐商品后台新增分类标签字段，支持为推荐商品配置不同展示分组。

### 优化改进

- 分站价格计算统一为：先确认当前站点成本基准，再按站点模板继续生成下级专业价、普通价和销售价，最后对最终销售价应用控价兜底。
- 批量调价保存时补充控价金额校验，避免分站把销售价批量调到主站限价以下。
- 推荐商品前台接口会自动确保推荐表结构存在，便于新站或重铺测试环境直接启用。

### 界面样式

- 首页推荐商品弹窗改为折叠入口，展开后显示分类标签和商品卡片，PC 与手机端均保持可扫描的卡片布局。
- 推荐商品按钮和弹窗图标统一使用 FontAwesome，不引入 glyphicon。
- 商品编辑页控价输入框补充运营提示，说明限价只约束最终售价，不影响成本和分润计算。

### 部署说明

- 程序缓存版本更新到 `2026052417`。
- 本版本新增 `pre_tools.min_price` 字段，并新增/补齐 `pre_recommend.group_name` 字段；运行时会自动检查并补齐字段。
- 升级后建议测试主站商品控价保存、直属分站价格、下级分站价格、批量调价和前台下单显示价。
- 推荐商品功能建议在后台新增至少一个推荐商品后，测试首页折叠入口、分类标签切换和商品直达购买页。

### 后续计划

- 继续梳理分站价格设置页，把控价提示、密价、模板价和实际销售价做成更直观的运营核对视图。

## v1.0.2.26 - 商品搜索与从属关系查询优化
发布日期：2026-05-24

### 重要说明

- 本版本面向岁岁云商城独立运营版本，重点优化前台和用户中心商品搜索体验，并补充分站、用户列表中的上下级从属关系查看能力。
- 商品搜索仅调整页面展示状态，不改变商品、分类、价格和下单业务逻辑。
- 从属关系查询基于现有 `pre_site.upzid` 层级关系生成，不新增数据库表，也不改变分站或用户归属数据。

### 修复问题

- 修复前台首页搜索商品后分类目录仍然显示，页面信息混杂的问题。
- 修复用户中心在线下单和批量下单搜索商品后仍显示无关分类的问题。
- 修复用户中心在线下单清空搜索框后，分类区域恢复但商品下拉未按默认状态重新加载的问题。

### 新增功能

- 后台分站列表新增从属关系列，可直接查看当前分站的直属上级、层级和下级数量。
- 后台用户列表新增从属关系列，可直接查看当前用户所属上级、层级和下级数量。
- 分站列表和用户列表新增“查看从属”按钮，支持弹窗查看上级链条、直接下级和间接下级。

### 优化改进

- 前台和用户中心搜索态统一为隐藏分类、保留搜索结果；清空关键词后恢复默认分类和商品选择状态。
- 从属关系查询抽离为后台公共 helper，避免分站列表和用户列表重复实现层级计算。
- 后台从属关系弹窗按主站、分站、用户层级分组展示，便于运营快速核对分销链路。

### 界面样式

- 后台分站列表、用户列表补充从属标签和 FontAwesome 图标按钮，并适配新后台 shell 表格风格。
- 从属关系弹窗增加链路、统计卡片和移动端表格样式，减少小屏幕查看时的横向拥挤。
- 前台 `suisui` 模板分类网格增加明确类名，搜索态不再依赖强制覆盖旧样式。

### 部署说明

- 程序缓存版本更新到 `2026052416`，后台资源版本更新到 `20260521suisuiops19`。
- 本版本不包含数据库结构变更。
- 升级后建议分别测试前台首页、用户中心在线下单、用户中心批量下单的搜索与清空恢复行为。
- 后台建议测试分站列表和用户列表的从属关系弹窗，确认上级链条和下级列表展示符合当前运营数据。

### 后续计划

- 继续把后台列表页逐步迁移到统一 shell 风格，并补充分销链路在订单、收支明细中的可核对展示。

## v1.0.2.25 - 多级专业版分站价格与分润链路修复
发布日期：2026-05-24

### 重要说明

- 本版本面向岁岁云商城独立运营版本，重点修复主站、直属专业版分站、下级专业版分站和普通用户之间的商品售价、下单成本、分站收益和上级分润链路。
- 专业版分站的下级不再继续开通子级分站，避免无限层级导致价格模板、利润统计和运营责任边界混乱。
- 新订单会按当前站点实际拿货价写入订单成本，并按多级专业版链路拆分直属站点收益和上级专业站收益。
- 历史订单的成本、收益和提成流水不会自动重算；如需处理历史订单，应先生成对账清单后单独补差。

### 修复问题

- 修复下级专业版分站客户购买时，只给当前专业站记收益、未给上级专业站记录差价分润的问题。
- 修复分站订单 `pre_orders.cost` 仍使用商品原始成本，导致用户中心今日收益、收益图和订单毛利统计与实际拿货价不一致的问题。
- 修复购物车订单未按分站实际拿货价写入成本、且未触发分站提成流水的问题。
- 修复远程对接商品成功后把分站订单成本覆盖为上游接口成本，导致分站利润统计和提成流水口径不一致的问题。
- 修复卡密订单详情中单张卡密复制按钮冗余的问题，保留底部统一“复制卡密信息”按钮。

### 新增功能

- 订单详情和订单查询的卡密信息区域支持统一复制发货内容，方便客户一次性复制卡密。
- 多级专业版链路新增上级专业站差价分润：下级专业站售价减自身拿货价归当前站点，自身拿货价减上级实际成本归上级专业站。

### 优化改进

- 统一商品展示价、下单成本、收支流水、用户中心收益统计和分站提成的计算口径。
- 分站创建权限收口为主站和直属专业版分站可开通下级，专业版分站的下级不能继续开通子级分站。
- 分站加价模板只影响自己的下级售价，不再把当前站点自己的拿货价二次抬高。
- 订单成本计算兼容主站原有商品成本逻辑，避免影响主站供货成本记录。

### 界面样式

- 优化卡密信息展示结构，去除卡密框内的重复复制按钮，保留底部统一复制入口。
- 本版本不调整后台整体 shell 风格和前台模板视觉结构。

### 部署说明

- 程序缓存版本更新到 `2026052413`。
- 本版本不包含数据库结构变更。
- 升级后只影响新产生订单的成本写入、提成流水和收益统计；历史订单不会自动补差。
- 建议升级后用一笔多级分站测试订单核对：客户成交价、当前分站收益、上级专业站收益、用户中心今日收益和收支明细是否一致。

### 后续计划

- 继续优化后台收支明细的多级分润展示，让订单金额、当前站点成本、上级成本和各级收益可以在同一处直接核对。

## v1.0.2.24 - 上下级分站真实成本分润修复
发布日期：2026-05-23

### 重要说明

- 本版本面向岁岁云商城独立运营版本，重点修复多级分站订单按模板底价计算上级收益、未按订单实际提卡价计算的问题。
- 修复后，新订单会优先使用订单实际成本作为上级专业站的分润成本口径，避免上级专业站少记收益。
- 本版本不自动改写历史订单提成流水；历史订单如需补差，需要先按订单生成对账清单后再单独处理。

### 修复问题

- 修复普通分站下单时，上级专业站收益使用模板 `cost2` 而不是订单实际成本，导致上级专业站收益偏低的问题。
- 修复专业版分站直接销售时，收益计算未优先参考订单实际成本的问题。
- 修复多级分站场景下，主站统计可能因上级收益少记而看起来多留利润的问题。

### 新增功能

- 新订单提成流水备注会补充成交价、拿货价或实际成本，方便运营人员核对分润链路。

### 优化改进

- 分润函数新增订单实际成本参数，旧调用保持兼容；未传入实际成本时继续沿用原有模板成本逻辑。
- 分润计算仍保留原有价格校验，避免异常金额订单触发错误提成。

### 界面样式

- 本版本不调整前台或后台页面样式。

### 部署说明

- 程序缓存版本更新到 `2026052313`。
- 本版本不包含数据库结构变更。
- 升级后只影响新产生订单的提成流水；历史流水不会自动补差或扣回。

### 后续计划

- 继续优化后台收支明细展示，按订单金额、下级成本、实际成本和各级收益拆分展示，让多级分润更容易核对。

## v1.0.2.23 - 同系统对接真实成本写入修复
发布日期：2026-05-23

### 重要说明

- 本版本面向岁岁云商城独立运营版本，重点修复同系统对接订单只记录本地预估成本、未记录上游实际扣款的问题。
- 同系统 API 下单成功后会返回本次订单的实际金额，便于下游站点把真实上游扣款写入订单成本。
- 本版本不自动回填历史订单；已经落库的历史成本异常订单，可在对账确认后单独执行安全回填。

### 修复问题

- 修复下游站点对接上游同系统商品时，`pre_orders.cost` 可能保持为 0 或本地预估价，导致后台主站收入和利润统计虚高的问题。
- 修复后台收入统计依赖订单成本时，Q9 这类全量对接 Q8 的运营站无法反映真实上游扣款的问题。
- 修复手动补单/重试对接成功后，订单成本仍无法跟随上游实际扣款更新的问题。

### 新增功能

- 同系统 `api.php?act=pay` 成功响应新增 `money` 和 `cost` 字段，旧字段保持兼容。
- 同系统对接插件新增上游真实扣款读取能力，识别上游返回的 `money` 并作为下游订单真实成本。

### 优化改进

- 对接订单成功后会优先把上游真实扣款写回本地 `pre_orders.cost`，没有返回真实金额的旧上游接口继续沿用原有成本逻辑。
- 成本写回只在上游返回有效正数金额时执行，避免异常响应覆盖本地已有成本。
- 新增公共成本写回函数，自动下单和后台手动补单链路共用同一套成本修正逻辑。

### 界面样式

- 本版本不调整前台或后台界面样式。

### 部署说明

- 程序缓存版本更新到 `2026052312`。
- 本版本不包含数据库结构变更。
- 推荐先升级上游站点，使同系统 API 返回真实金额；再升级下游站点，使新订单能写入真实上游成本。
- 历史订单成本需要先按对接订单号生成对账清单，确认无误后再单独回填，不建议随程序升级自动批量改写。

### 后续计划

- 增加只读对账工具，辅助运营站按下游订单、上游订单、销售额、实扣成本和利润差额生成回填清单。

## v1.0.2.22 - 价格同步模板与成本口径修复
发布日期：2026-05-23

### 重要说明

- 本版本面向岁岁云商城独立运营版本，重点修复自动同步商品价格时未按主站加价模板落库的问题。
- 自动同步现在会保留上游基础成本并绑定有效加价模板，由统一价格计算入口生成零售、普及和专业版价格。
- 本版本补充价格诊断工具，方便管理员排查模板绑定、专业版成本、分站默认模板和密价低于成本等风险。

### 修复问题

- 修复自动同步使用加价模板时，商品仍以手动价格口径写入，导致零售价、普及价等于上游成本价的问题。
- 修复专业版价格在同步商品中可能显示或计算为 0 的问题；无模板商品现在会写入完整的零售、普及和专业版成本兜底。
- 修复同系统/代刷同步路径中加价模板 ID 未正确应用，导致已配置模板的任务仍写入 `prid=0` 的问题。
- 修复 `Price` 类按站点 ID 初始化时未读取 `site_prid`，导致分站默认加价模板在部分调用路径不生效的问题。

### 新增功能

- 后台新增只读价格诊断页，可检查同步模板不一致、无效模板 ID、分站默认模板异常、密价低于主站专业版成本和分站售价低于成本等问题。

### 优化改进

- 自动同步价格落库口径统一为：有加价模板时保存上游基础成本并绑定模板；无加价模板时保存完整手动价格兜底。
- 后台商品列表展示手动价格时改用统一生效价格，减少历史 `cost2=0` 数据造成的专业版价格误判。
- 极小价格自动放大下单数量时增加大于 0 判断，避免上游价格为 0 时触发异常计算。

### 界面样式

- 本版本不调整前台视觉样式；后台新增诊断页沿用现有后台 shell 与表格风格。

### 部署说明

- 程序缓存版本更新到 `2026052311`。
- 本版本不包含数据库结构变更，不会自动批量改写正式站历史商品价格。
- 覆盖更新后建议在后台重新执行相关自动同步任务，或通过价格诊断页核对历史商品的模板绑定和专业版成本。

### 后续计划

- 继续把价格监控、自动同步、密价和分站模板整理为可追踪的批量任务，减少价格来源排查成本。

## v1.0.2.21 - 分站密价优先级与余额操作优化
发布日期：2026-05-23

### 重要说明

- 本版本面向岁岁云商城独立运营版本，重点修复主站给直属分站设置单独密价后，分站默认加价模板仍会二次计算成本的问题。
- 单独密价现在会优先作为分站最终进货成本；没有单独密价的商品，仍按分站自己的价格记录和默认加价模板继续计算。
- 后台用户余额操作补充备注和赠送比例设置，方便运营人员在余额流水中保留加款、扣款和赠送来源。

### 修复问题

- 修复专业版分站存在单独密价时，`site_prid` 默认模板把密价再次乘以加价比例，导致同步后成本被抬高的问题。
- 修复普及版和专业版分站旧密价在 `setToolInfo()` 中没有显式阻断默认模板继续计算的优先级缺口。
- 修复后台用户余额弹窗已有备注提交逻辑但页面缺少备注输入框的问题。

### 新增功能

- 密价用户界面新增“查看当前密价商品”入口，可直接筛选当前账号已经设置单独密价的商品。
- 后台用户余额加款/扣款弹窗新增备注输入，提交后写入余额流水说明。
- 后台手动加款新增赠送比例输入，留空跟随充值返利设置，填 0 表示不赠送，填数字按指定百分比赠送。

### 优化改进

- 单独密价优先级调整为：单独密价 > 分站自己的价格记录 > 分站默认加价模板 > 上级/主站默认成本。
- 密价商品筛选只在“查看当前密价商品”时按站点密价过滤，普通密价列表仍保持分页查询，避免商品量大时拖慢列表。
- 后台余额弹窗每次打开会清空上一次输入的金额、备注和赠送比例，减少连续操作时误带旧值。

### 界面样式

- 密价商品页新增 FontAwesome 查看图标按钮，保持后台按钮风格统一。
- 余额操作弹窗补充备注与赠送比例表单项，继续沿用现有 Bootstrap 表单布局。

### 部署说明

- 程序缓存版本更新到 `2026052310`。
- 本版本不包含数据库结构变更，不迁移或批量改写历史 `pre_site_price` 和 `iprice` 数据。
- 覆盖更新后建议在后台为分站设置单独密价，并确认同步后的下游成本等于该密价，不再叠加默认模板比例。

### 后续计划

- 继续梳理分站价格、批发价、密价和同步成本之间的展示口径，减少运营人员排查价格来源的成本。

## v1.0.2.20 - 收支明细成本口径修复
发布日期：2026-05-23

### 重要说明

- 本版本面向岁岁云商城独立运营版本，重点修复后台收支明细和新订单成本写入的财务口径。
- 在线商品支付明细现在会读取关联订单的成本，便于站长在支付流水视角核对成本和毛利。
- 已经落库为 0 成本的历史订单不会自动改写，如需修正历史数据可后续单独执行回填。

### 修复问题

- 修复收支明细中“在线商品支付”明细成本固定显示为 0 的问题。
- 修复无加价模板商品在专业版成本为空时，新订单可能把成本写入为 0 的问题。

### 新增功能

- 暂无新增功能，本版本聚焦财务成本口径修复。

### 优化改进

- 新订单成本写入增加 `cost2 -> cost -> price` 兜底，避免成本字段缺失导致毛利虚高。
- 在线商品支付明细会按支付单号汇总关联订单成本，购物车等多订单支付场景也能展示对应成本。

### 界面样式

- 本版本不调整界面布局和视觉样式。

### 部署说明

- 程序缓存版本更新到 `2026052309`。
- 本版本不包含数据库结构变更。
- 覆盖更新后建议在后台“收支明细”中检查“订单流水 / 订单成本 / 在线商品支付”三类明细。

### 后续计划

- 后续可按站点实际数据情况，提供历史订单 0 成本的安全回填工具。

## v1.0.2.19 - 系统数据清理反馈优化
发布日期：2026-05-23

### 重要说明

- 本版本面向岁岁云商城独立运营版本，优化后台系统数据清理的执行反馈和自定义清理文案。
- 数据清理仍按原有范围执行，不改变订单、支付、余额流水等业务生成逻辑。
- 自定义清理中的金额条件明确为“金额不超过”，避免误解为大于等于该金额。

### 修复问题

- 修复系统数据清理执行后只提示成功、不显示实际删除数量，导致 0 条匹配记录容易被误认为清理无效的问题。
- 修复分站记录自定义清理完成后优化错表的问题，现在会正确优化分站表。
- 修复自定义支付记录清理缺少来源校验的问题。

### 新增功能

- 数据清理结果新增本次删除条数提示，便于管理员判断是否有记录符合清理条件。

### 优化改进

- 自定义清理金额输入增加数字校验，金额为 0 时可正常作为上限条件使用。
- 支付记录、订单记录和分站记录的自定义清理条件文案改为“金额不超过 / 上限金额 / 元（含）”。
- 多表清理时如果数据库执行失败，会返回失败提示，不再把异常情况误报为成功。

### 界面样式

- 自定义清理表单补充金额上限说明，保持原有后台表单布局。

### 部署说明

- 程序缓存版本更新到 `2026052308`。
- 本版本不包含数据库结构变更。
- 覆盖更新后建议在后台“系统数据清理”中测试支付记录、订单记录和分站记录的自定义清理提示。

### 后续计划

- 继续优化后台危险操作的确认文案和结果反馈，让管理员能更清楚区分“执行成功但匹配 0 条”和“执行失败”。

## v1.0.2.18 - 加价模板分类应用修复
发布日期：2026-05-23

### 重要说明

- 本版本面向岁岁云商城独立运营版本，重点修复后台加价模板批量应用到分类和全站商品时的提交与结果反馈。
- 本次仅调整加价模板绑定接口和后台页面提交参数，不改变商品价格计算规则。
- 所选分类下没有商品时，系统会正常返回 0 个商品变更，表示没有可更新商品。

### 修复问题

- 修复后台加价模板选择分类后仍提示“请选择至少一个分类”的问题。
- 修复“应用到全站商品”仍走分类必选校验，导致无法直接应用全站商品的问题。
- 修复分类下商品已绑定相同模板时，数据库实际变更 0 行被误判为失败的问题。

### 新增功能

- 本版本不新增独立功能。

### 优化改进

- 分类应用接口兼容单个分类和多个分类提交，避免前端多选参数格式差异导致误判。
- 全站应用接口增加独立作用域识别，整站套用模板时不再依赖分类选择。
- 加价模板 ID 增加有效性校验，减少无效请求写入风险。

### 界面样式

- 本版本不调整页面视觉样式。

### 部署说明

- 程序缓存版本更新到 `2026052306`。
- 本版本不包含数据库结构变更。
- 覆盖更新后建议在后台加价模板页分别测试“应用到分类”和“应用到全站商品”。

### 后续计划

- 继续优化空分类、无可变更商品等批量操作结果提示，让后台反馈更容易理解。

## v1.0.2.17 - 收支明细经营卡片与联动明细优化
发布日期：2026-05-23

### 重要说明

- 本版本面向岁岁云商城独立运营版本，重点优化后台收支明细页的经营统计展示与对账体验。
- 后台首页统计暂不调整，本次只聚焦收支明细页面，方便站长在同一页查看统计卡片和所属明细。
- 经营卡片不再只是展示数字，点击卡片会在下方直接切换对应订单、支付、余额流水或提现明细。

### 修复问题

- 修复收支明细顶部统计卡片只展示数字、无法直接追踪来源明细的问题。
- 修复原分类汇总和下方流水割裂，站长需要手动切换筛选条件才能核对明细的问题。
- 修复收支明细统计区占用空间较大、移动端查看不够紧凑的问题。

### 新增功能

- 收支明细新增可点击经营卡片，支持按订单流水、在线商品支付、充值入账、分站提成、站点福利、退款、余额消费、后台扣款、提现等维度查看所属明细。
- 下方新增“所属明细”面板，点击卡片后会按当前日期、ZID、关键词范围展示对应来源数据。
- 订单类卡片可查看订单来源，支付类卡片可查看支付来源，余额类卡片可查看余额流水，待提现卡片可查看待处理提现。

### 优化改进

- 收支明细统计卡片改为紧凑网格布局，增加选中态和悬停反馈，减少无效空白。
- 筛选栏保留日期、ZID 和关键词，切换卡片时会保留当前筛选范围。
- 分页链接会保留当前明细类型，翻页不会丢失卡片筛选状态。

### 界面样式

- 收支明细新增紧凑型经营卡片样式，并迁移到后台公共 shell 样式文件中维护。
- 移动端卡片改为双列展示，明细面板按钮和筛选栏在小屏幕下自动占满宽度。

### 部署说明

- 程序缓存版本更新到 `2026052305`。
- 本版本不包含数据库结构变更。
- 覆盖更新后建议在后台收支明细中点击“充值入账 / 分站提成 / 站点福利 / 退款退回余额 / 在线商品支付”等卡片，确认下方所属明细切换正常。

### 后续计划

- 继续优化财务明细导出和按月对账能力。
- 继续补充退款、提成和福利来源追踪，让每一笔财务变动更容易回溯到订单或活动。

## v1.0.2.16 - 后台财务统计口径细化
发布日期：2026-05-23

### 重要说明

- 本版本面向岁岁云商城独立运营版本，重点调整后台首页、利润统计和收支明细的财务统计口径。
- 后台首页的“今日收益”改为“今日主站收入”，按订单流水、成本、分站提成和站点福利统一计算。
- 充值、余额、福利、退款和分站提成不再混在同一个收益数字里，方便站长核对真实经营情况。

### 修复问题

- 修复后台首页部分统计项容易把订单流水、支付流水和余额充值混合展示的问题。
- 修复收支明细中 `退款` 负数记录仍按收入方向显示的问题。
- 修复利润统计中“实际利润”口径不清晰，无法完整拆出分站提成、福利赠送、充值和退款明细的问题。

### 新增功能

- 新增后台财务统计 helper，统一计算订单流水、成本、毛利润、主站收入、充值入账、福利赠送、退款和余额数据。
- 利润统计新增充值入账、福利赠送、退款明细、站点余额、分站提成等汇总卡片。
- 收支明细新增按流水类型拆分的统计表，可查看充值、加款、提成、赠送、返利、退款、消费、扣除、提现等分类金额。

### 优化改进

- 后台首页统计文案调整为“订单流水 / 主站收入 / 充值入账”，减少运营误读。
- 支付通道统计只展示商品支付流水，不再把在线充值和供货商充值混入商品交易额。
- 退款统计拆分为退回用户余额、退款订单金额和提成扣回，便于对账。
- 主站收入口径统一为：订单流水 - 成本 - 分站提成 - 站点福利。

### 界面样式

- 利润统计页增加更详细的财务拆分表和说明文字。
- 收支明细页增加分类汇总表，保持后台原有表格风格并兼容移动端横向滚动。

### 部署说明

- 程序缓存版本更新到 `2026052303`。
- 本版本不包含数据库结构变更。
- 覆盖更新后建议核对后台首页、利润统计、收支明细中的今日主站收入、充值入账、福利赠送、退款明细和站点余额。

### 后续计划

- 继续补充退款、福利和提成的订单关联追踪，让每一笔财务变化更容易追到来源。
- 继续优化财务统计的日期筛选和导出能力，方便站长做月度对账。

## v1.0.2.15 - 同步商品来源保护与价格展示修复
发布日期：2026-05-23

### 重要说明

- 本版本面向岁岁云商城独立运营版本，重点修复自动同步在删除规则开启时可能误清理手动商品的问题。
- 同步删除现在只处理由自动同步流程登记过来源的商品，手动新增商品不会因为填写了供货站 ID 或商品 ID 而被上游缺失规则误删。
- 本版本会自动创建 `pre_sync_goods_map` 同步来源映射表，用于区分自动同步商品和后台手动商品。

### 修复问题

- 修复同系统自动同步在 `delete_rule=2` 时，仅按 `shequ + goods_id NOT IN 上游列表` 判断，可能删除手动新增商品的问题。
- 修复后台商品列表和价格弹窗在使用加价模板时，展示价格与实际生效价格不一致的问题。
- 修复专业版分站利润计算在存在站长自设成本价时，仍可能回退到默认成本字段的问题。

### 新增功能

- 新增同步商品来源映射表 `pre_sync_goods_map`，自动记录供货站商品 ID 与本地商品 ID 的对应关系。
- 自动同步新增或更新商品时会维护来源映射，后续缺失处理只对已确认来源的同步商品生效。

### 优化改进

- 同步商品缺失处理从直接扫描商品表改为通过来源映射表筛选，降低误删运营自建商品的风险。
- 删除同步商品时同步清理来源映射，保持后续同步判断干净。
- 商品价格展示统一按加价模板计算后输出，便于后台核对销售价、普及版价格和专业版价格。

### 界面样式

- 本版本不调整前台或后台页面样式，仅修正后台商品价格展示数据。

### 部署说明

- 程序缓存版本更新到 `2026052302`。
- 覆盖更新后首次运行自动同步会自动创建 `pre_sync_goods_map` 表，无需手动执行 SQL。
- 建议更新后在后台自动同步中执行一次同步，确认手动商品不会因上游缺失规则被删除，同时检查正常上游商品仍可新增、更新和按规则下架。

### 后续计划

- 继续完善同步任务日志，让删除、下架和跳过保护的商品有更清晰的运营可追踪记录。
- 继续整理商品同步配置页的风险提示，帮助站长理解“下架/删除上游缺失商品”的影响范围。

## v1.0.2.14 - 同系统商品限购字段同步修复
发布日期：2026-05-22

### 重要说明

- 本版本面向岁岁云商城独立运营版本，重点修复同系统对接商品在下游同步后被错误变成“限购 1 份”的问题。
- 本次调整仅补齐商品接口字段透传和同步落库逻辑，不改变订单、支付、发卡或上游请求流程。
- 本版本不包含数据库结构变更。

### 修复问题

- 修复同系统 `goodslist` 接口未输出 `multi`、`min`、`max`、`goods_type` 等购买限制字段，导致下游同步时默认写入 `multi=0` 的问题。
- 修复同系统对接插件读取上游商品列表时丢弃 `goods_type`、`multi`、`repeat`、`validate`、`prices` 等字段的问题。
- 修复自动同步已有商品时未对比和更新 `goods_type`，导致历史错误商品无法通过后续同步自动纠正的问题。

### 新增功能

- 商品 API 增加统一发卡属性识别：`is_curl=4` 或 `goods_type=1` 均会按发卡商品向下游输出。
- 同系统插件统一格式化商品字段，兼容 `goods_type` 与 `isfaka` 的互相映射。

### 优化改进

- 下游同步商品时会保留上游返回的购买限制、输入框、批发价和验证相关字段，减少同系统链路中的字段损耗。
- 已存在的对接商品在再次同步时可按上游字段修正 `multi` 与 `goods_type`，不需要手动逐个编辑商品。

### 界面样式

- 本版本不调整前台或后台页面样式。

### 部署说明

- 程序缓存版本更新到 `2026052215`。
- 本版本不包含数据库结构变更。
- 覆盖更新后建议在后台自动同步中对同系统上游执行一次“仅修复已有商品”或完整同步，检查发卡商品、支持多份购买商品的 `multi/goods_type/min/max` 是否与上游一致。

### 后续计划

- 继续补充同步任务详情中对上游字段缺失、缓存命中和商品修正数量的可读提示。
- 继续排查不同上游账号返回商品范围不一致时的运营提示与诊断入口。

## v1.0.2.13 - 对接订单卡密同步与手动发卡修复
发布日期：2026-05-22

### 重要说明

- 本版本面向岁岁云商城独立运营版本，重点修复对接上游订单在延迟发货、未返回卡密和异常状态下的本地发卡状态一致性。
- 后台订单列表新增手动发卡能力，用于上游请求失败且本地无卡密时由管理员人工录入卡密完成发货。
- 本版本不包含数据库结构变更。

### 修复问题

- 修复分站密价设置后，部分商品仍未按密价优先生效的问题。
- 修复对接上游已返回完成但未返回卡密时，本地订单被错误标记为成功的问题。
- 修复上游后续补发卡密后，本地下游订单查询和接口查询无法同步卡密的问题。
- 修复价格监控中点击“立即同步一次价格”后页面只显示黑色遮罩、无法继续操作的问题。

### 新增功能

- 后台订单列表和订单详情新增“手动发卡”入口，支持管理员输入多行卡密并完成订单发货。
- 对已存在上游订单号的订单，手动发卡前会提示确认，避免上游后续重复发货造成卡密重复。

### 优化改进

- 统一上游订单完成、失败和卡密解析判断逻辑，减少前台查询、接口查询和定时任务之间的状态差异。
- 对接订单只有成功同步到卡密后才更新为已完成；上游完成但无卡密时保留待同步状态并刷新检查时间。
- 手动发卡会阻止重复写入已有卡密的订单，降低重复发卡风险。

### 界面样式

- 价格监控立即同步结果改为 Layer 弹窗展示，适配 PC 和手机端宽度。
- 订单列表失败、未发卡状态补充手动发卡操作按钮，沿用后台现有 FontAwesome 图标和按钮风格。

### 部署说明

- 程序缓存版本更新到 `2026052214`。
- 本版本不包含数据库结构变更。
- 覆盖更新后建议检查价格监控立即同步、后台订单手动发卡、前台订单查询和 API 订单查询链路。

### 后续计划

- 继续完善对接订单异常状态的后台追踪说明。
- 继续整理价格监控和订单状态监控的运营提示。

## v1.0.2.12 - 自动同步任务与分站价格模板修复

发布日期：2026-05-22

### 重要说明

- 本版本面向岁岁云商城独立运营版本，稳定自动同步立即执行链路，并修复分站用户中心价格模板与批量调价的实际运营问题。
- 分站商品价格规则调整为：默认所有商品跟随当前站点价格模板；存在商品自定义价格时优先使用自定义价格；点击恢复价格会删除自定义价格并回到当前模板价格。
- 本版本不包含数据库结构变更，不会在客户站更新时自动删除旧价格数据。

### 修复问题

- 修复用户中心站点管理中加价模板设置后，商品列表部分价格仍不按模板计算的问题。
- 修复用户中心商品列表批量修改“下级专业版价格”等字段时，保存参数未完整写入导致修改不生效的问题。
- 修复部分历史自定义价格低于当前站长成本时，分站商品列表可能显示异常低价的问题。
- 修复后台“立即执行同步”在大量商品场景下可能因浏览器或网关等待超时，被误判为同步失败的问题。
- 修复自动同步在远端商品字段名不一致时，可能写入空商品名或重复触发任务的问题。

### 新增功能

- 自动同步立即执行改为后台任务模式，页面发起后可通过任务状态查看执行进度、完成数量、失败数量和错误摘要。
- 自动同步任务新增更完整的商品 ID、商品名称字段兼容识别，增强不同供货站接口的适配能力。
- 分站价格计算新增站点加价模板兜底逻辑，没有自定义价格的商品会实时跟随当前模板。

### 优化改进

- 分站价格计算保留站长自身成本口径，模板加价只影响下级和销售展示价格，避免成本列被模板误抬高。
- 商品自定义价格写入时增加层级保护，避免下级专业版、下级普通版和销售价低于应有成本。
- 已存在商品本地名称为空时，会在远端返回有效名称后自动修正；远端名称仍为空的新商品会跳过写入。
- 同步锁释放改为异常保护，减少同步中断后任务锁残留的概率。

### 界面样式

- 自动同步设置页补充后台任务面板、进度状态和结果摘要，保持新后台 shell 风格。
- 用户中心商品列表继续沿用现有表格与批量操作交互，本次只修复价格计算和保存链路。

### 部署说明

- 程序缓存版本更新到 `2026052212`。
- 本版本不包含数据库结构变更。
- 覆盖更新后建议刷新后台自动同步设置页，并在用户中心检查站点价格模板、商品批量改价和恢复价格功能。
- 如旧站存在大量历史自定义价格，更新代码不会自动删除；需要回到模板价格的商品可在用户中心使用“恢复价格”处理。

### 后续计划

- 继续完善自动同步任务详情，补充更清晰的上游接口异常说明。
- 继续整理用户中心分站商品管理页面，减少历史脚本残留并优化手机端批量操作体验。

## v1.0.2.12-beta - 自动同步立即执行测试版修复

发布日期：2026-05-22

### 重要说明

- 本版本是自动同步模块的 beta 测试版，聚焦“立即执行同步”在大量商品场景下的稳定性。
- 适用于先在测试站或低峰时段验证，不建议直接覆盖正式运营站后立即开启高频自动同步。

### 修复问题

- 修复后台“立即执行同步”可能先通过本地 PHP 执行、再通过 HTTP 兜底执行，导致同一轮同步被重复触发并提示“已有同步任务正在运行”的问题。
- 修复浏览器或网关等待完整同步结果超过限制后提示“同步请求失败”，但后台实际只完成部分商品同步的问题。
- 修复部分对接站商品列表字段名不一致时，新商品可能以空商品名写入本地商品表的问题。

### 新增功能

- 自动同步接口增加对更多远端商品 ID 和商品名称字段的统一识别，兼容 `tid`、`goods_id`、`goodsName`、`goods_title` 等常见字段。
- 手动立即执行改为快速发起后台同步任务，页面不再长时间等待完整同步输出。

### 优化改进

- 同系统对接同步补取商品详情时优先使用程序内置请求方法，减少对服务器 `shell_exec` 的依赖。
- 已存在商品如果本地商品名为空，会在远端返回有效名称时自动修正，即使未开启普通商品名同步也会补齐空名称。
- 新增商品在远端商品名仍为空时会跳过写入，避免继续产生无名称商品。
- 同步锁释放改为 `try/finally` 保护，异常情况下也会主动释放当前供货站点的同步锁。

### 界面样式

- 保持自动同步设置页现有后台 shell 风格不变。
- 调整“立即执行同步”的返回文案，改为提示后台任务已启动，避免把长任务等待超时误判为同步失败。

### 部署说明

- 程序缓存版本更新到 `2026052206`。
- 本版本不包含数据库结构变更。
- 覆盖更新后建议先在后台自动同步设置中手动执行一次，并观察商品数量、空商品名数量和站点日志。
- beta 版本建议先在测试站验证完整一轮同步，再推送到正式运营站。

### 后续计划

- 继续把自动同步任务拆成可查询进度的后台任务记录，减少对浏览器弹窗输出的依赖。
- 继续补充同步日志中的异常原因和上游接口响应摘要，方便定位具体供货站点问题。

## v1.0.2.11 - 后台工单与分类批量操作修复

发布日期：2026-05-22

### 重要说明

- 本版本聚焦后台运营页面的稳定性，修复分类列表批量删除、工单详情和网盘失效详情弹窗的实际使用问题。
- 不包含同步模块、批量对接商品逻辑或数据库结构变更。

### 修复问题

- 修复分类列表全选后执行批量删除时，前端提交了整页排序与名称字段导致服务端拿不到选中分类，提示“请选择批量操作”的问题。
- 修复删除一级分类时未同步清理下级分类和对应商品，造成提示已删除但二级分类仍残留的问题。
- 修复后台工单详情、网盘失效详情在弹窗 iframe 内打开时可能跳入登录页，并弹出“您已登陆！”浏览器提示的问题。

### 新增功能

- 暂无新增功能。

### 优化改进

- 分类批量删除改为按选中的分类 ID 提交，减少无关表单字段对批量操作的干扰。
- 服务端删除分类时会展开下级分类并按子级优先删除，同时清理对应商品，返回真实删除结果。
- 工单和网盘失效详情页登录校验提前到页面输出前，未登录时跳转顶层登录页，避免 iframe 内嵌登录页。

### 界面样式

- 保持现有后台工单与网盘失效详情弹窗样式不变，仅修复弹窗加载链路。
- 保持分类列表现有新后台 shell 风格和移动端布局不变。

### 部署说明

- 程序缓存版本更新到 `2026052205`。
- 本版本不包含数据库结构变更。
- 覆盖更新后建议刷新后台分类列表、工单列表和网盘失效列表页面。

### 后续计划

- 继续整理后台工单与投诉相关页面的旧模板输出和编码显示问题。
- 后续再单独处理商品同步与 daishua 对接逻辑，不混入本次分类和弹窗修复版本。

## v1.0.2.10 - XHY-01 首页公告字段修复

发布日期：2026-05-22

### 重要说明

- 本版本修复 XHY-01 首页公告与首页弹出公告读取同一内容的问题，让两个后台字段重新各司其职。
- 首页顶部快捷入口继续保持第一排 3 个、第二排 2 个的布局，适配 PC 与手机端访问。

### 修复问题

- 修复后台修改“首页公告（非弹窗）”后，XHY-01 前台点击“平台公告”仍显示“首页弹出公告”内容的问题。
- 修复 XHY-01 首页顶部 5 个快捷入口在手机端被旧响应式规则挤成 2-1-2 的问题。
- 修复 XHY-01 前台计时脚本存在未声明变量，可能在控制台产生 `ss_str is not defined` 错误的问题。

### 新增功能

- XHY-01 首页新增独立的首页公告弹窗入口，用于承载后台“首页公告（非弹窗）”字段内容。

### 优化改进

- 自动首页弹窗继续读取后台“首页弹出公告”字段，不影响原有自动弹窗开关与弹出频率设置。
- 首页公告弹窗与首页弹出公告共用同一套明确的弹窗样式类，减少重复样式维护。

### 界面样式

- 恢复 XHY-01 首页快捷入口第一排 3 个、第二排 2 个的稳定布局。
- 首页公告弹窗在 PC 与手机端保持一致的标题、内容滚动和关闭按钮表现。

### 部署说明

- 程序缓存版本更新到 `2026052204`。
- 本版本不包含数据库结构变更。
- 覆盖更新后建议强制刷新首页，确保浏览器加载新的 XHY-01 CSS/JS。

### 后续计划

- 继续梳理 XHY-01 首页公告、客服、推荐和同步相关入口，减少旧模板字段混用。
- 下一步继续推进商品同步问题修复，保持同步逻辑与前台展示字段一致。

## v1.0.2.9 - 首页下单验证与客服文案优化

发布日期：2026-05-21

### 重要说明

- 本版本优化用户在首页停留较久后的下单体验，减少因下单验证令牌过期导致的失败提示。
- XHY-01 首页客服弹窗中的平台客服名称调整为更通用的“客服中心”。

### 修复问题

- 修复用户长时间停留首页后点击下单，可能提示“验证失败，请刷新页面重试”的问题。
- 修复多标签页打开首页时，旧页面下单令牌被新页面覆盖后无法继续下单的问题。
- 修复 XHY-01 客服弹窗底部固定显示“岁岁云商城人工客服”，不适合分站展示的问题。

### 新增功能

- 新增前台下单令牌刷新接口，用于在验证失效时生成新的短时下单令牌。
- 公共前台脚本支持在下单验证失效时自动刷新令牌，并对原下单请求重试一次。

### 优化改进

- 下单令牌仍保持校验机制，不关闭验证、不放宽商品、价格、库存或支付校验。
- 自动重试只作用于 `ajax.php?act=pay` 下单请求，不影响余额支付、支付跳转和订单查询链路。
- XHY-01 客服弹窗标题文案更简洁，适合主站和分站统一展示。

### 界面样式

- XHY-01 客服弹窗底部客服卡片标题由“岁岁云商城人工客服”改为“客服中心”。
- 本版本不调整客服弹窗布局、按钮样式和客服入口位置。

### 部署说明

- 程序缓存版本更新到 `2026052120`。
- 本版本不包含数据库结构变更。
- 覆盖更新后建议强制刷新首页，确保浏览器加载新的 `assets/js/main.js`。

### 后续计划

- 继续检查前台模板中与下单验证、支付弹窗、客服入口相关的历史脚本残留。
- 继续整理 XHY-01 模板中仍然写死的可运营文案和图片资源。

## v1.0.2.8 - 分站用户中心推广体验修复

发布日期：2026-05-21

### 重要说明

- 本版本面向分站用户推广场景，重点修复用户中心商品列表、搜索明细、调价入口和收款图上传链路。
- 分站用户现在可以在商品列表中正常查看可推广商品，并通过搜索、批量调价和价格恢复功能维护自己的销售价格。

### 修复问题

- 修复用户中心商品列表在渲染价格列时中断，导致只显示统计数量但下方商品明细为空的问题。
- 修复商品搜索后显示找到商品数量，但明细表格没有对应商品行的问题。
- 修复“提升销售价”“恢复到上一次修改”“历史记录”等按钮因前端脚本被旧乱码注释截断而无响应的问题。
- 修复收款图上传目录不存在或权限异常时保存失败、页面无法准确提示和预览的问题。

### 新增功能

- 补充分站商品管理页所需的价格读取接口，统一返回自用成本、下级专业版、下级普及版和当前销售价。
- 收款图和客服二维码上传时会自动检查目标目录，保存失败时给出明确的目录权限提示。
- 商品列表空结果时显示明确的空状态，避免用户误以为页面卡死。

### 优化改进

- 用户中心商品列表分页增加边界保护，避免异常页码导致空表格。
- 用户中心公共 CSS/JS 增加缓存版本号，更新后浏览器会加载新的用户中心资源。
- 收款图和客服二维码预览改为明确类名，由用户中心公共样式统一控制。

### 界面样式

- 收款图和客服二维码预览调整为稳定宽度、带边框和留白的图片样式，PC 与手机端都能正常缩放。
- 商品列表按钮继续使用 FontAwesome 图标体系，保留原有 Bootstrap 弹窗交互。

### 部署说明

- 程序缓存版本更新到 `2026052119`。
- 本版本不包含数据库结构变更。
- 覆盖更新后如收款图仍显示旧图，可强制刷新浏览器缓存，图片地址已带文件时间戳用于避免旧缓存。

### 后续计划

- 继续整理用户中心其他分站运营页面，逐步减少旧内联脚本和历史乱码注释残留。
- 继续检查分站推广、价格维护、收款信息和用户资料相关入口在手机端的完整可用性。

## v1.0.2.7 - 在线更新体验修复

发布日期：2026-05-21

### 重要说明

- 本版本继续完善后台在线更新中心，重点修复站长点击更新时的重复触发和环境预检提示不清晰问题。
- 更新包现在包含网站根目录 `cache/` 占位目录，减少新站点因缺少缓存目录导致预检失败的情况。

### 修复问题

- 修复“立即更新”和“流程演练”确认弹窗未自动关闭时可重复点击、重复提交的问题。
- 修复环境预检未通过时只提示失败项目、没有说明具体原因和解决办法的问题。
- 修复部分站点缺少 `cache/` 目录时，站长不知道应创建哪个目录、设置什么权限的问题。

### 新增功能

- 环境预检失败时会返回失败项目、失败原因和面向小白用户的处理建议。
- 前端弹窗会汇总未通过项目，并提示站长优先处理目录权限、缓存目录、PHP 扩展或网络访问问题。
- Release 更新包新增 `cache/.gitkeep`，保证覆盖安装后根目录带有 `cache/` 目录。

### 优化改进

- 在线更新按钮增加运行锁，更新或演练执行中不会再次触发同一流程。
- 环境检查结果在页面中拆分展示“原因”和“解决办法”，便于站长直接按提示处理。
- 目录权限预检继续按 PHP 运行用户判断，避免只看 root 权限导致线上执行失败。

### 界面样式

- 优化环境检查失败项的提示层级，错误原因和解决办法在 PC 与手机端都能完整换行显示。
- 保持在线更新中心的新后台 shell 风格和 FontAwesome 图标体系。

### 部署说明

- 程序缓存版本更新到 `2026052117`，后台资源版本更新到 `20260521suisuiops18`。
- 本版本不包含数据库结构变更。
- 如果旧站点已经在线运行，更新前仍建议确认站点目录、`cache/`、`admin/`、`includes/`、`assets/` 对 PHP 运行用户可写。

### 后续计划

- 继续完善更新失败后的回滚入口和历史更新记录。
- 继续细化不同服务器环境下的预检提示，让站长能更快定位权限、网络和扩展问题。

## v1.0.2.6 - 在线更新中心

发布日期：2026-05-21

### 重要说明

- 本版本新增后台在线更新中心，面向岁岁云商城独立运营版本提供站长可视化的一键更新入口。
- 在线更新会按步骤显示当前进度，避免长时间无反馈导致误判失败。

### 修复问题

- 修复原“检查版本更新”页面仅展示静态入口、无法完成在线更新流程的问题。
- 修复测试站已是最新版本时无法验证更新流程的问题，新增不会覆盖文件的流程演练模式。

### 新增功能

- 新增“立即更新”流程，自动执行环境预检、版本检查、下载更新包、完整性校验、自动备份、解压、覆盖、数据库升级、缓存清理和最终自检。
- 新增“流程演练”按钮，可在不覆盖程序文件、不执行数据库迁移的前提下验证下载、校验、备份、解压和自检链路。
- 支持读取 GitHub Release / update.json；未配置 update.json 时自动使用 GitHub Release 源码包作为兜底更新包。

### 优化改进

- 更新过程自动跳过 `config.php`、上传目录、备份目录、`install/install.lock` 等运行环境文件。
- 自动生成网站文件和数据库备份，保留更新失败后的回滚依据。
- 更新失败时返回具体失败步骤和原因，方便站长定位服务器权限、网络或更新包配置问题。

### 界面样式

- 在线更新中心改为新后台 shell 风格，使用状态卡、进度条、步骤列表和环境检查面板展示更新状态。
- 按钮和步骤图标统一使用 FontAwesome，移动端自动改为单列布局。

### 部署说明

- 程序缓存版本更新到 `2026052115`，后台资源版本更新到 `20260521suisuiops16`。
- 使用在线更新前，请确认站点目录对 PHP 运行用户可写，并确认服务器可以访问 GitHub。
- 本版本不包含数据库结构变更。

### 后续计划

- 后续 Release 可附带 `update.json` 和独立更新包，以提供更严格的 SHA256 校验和更稳定的下载源。
- 继续完善更新失败后的回滚入口和更新记录列表。

## v1.0.2.5 - 后台充值返利设置修复

发布日期：2026-05-21

### 重要说明

- 本版本修复后台“充值返利设置”入口空白的问题，恢复返利规则的独立配置页面。
- 后台用户列表和分站列表点击余额时，余额调整弹窗现在会稳定显示，不再只出现黑色遮罩。

### 修复问题

- 修复 `set.php?mod=rebaterecharge` 缺少页面分支导致内容区空白的问题。
- 修复后台用户列表点击余额时 Bootstrap 遮罩覆盖弹窗的问题。
- 修复后台分站列表点击余额时 Bootstrap 遮罩覆盖弹窗的问题。

### 新增功能

- 新增独立的“充值返利设置”页面，可配置返利开关、返利最低金额、固定比例、阶梯规则、加款卡开关和最低充值金额。

### 优化改进

- 充值返利配置集中到独立页面，在线充值、加款卡充值和后台手动加款使用同一套返利规则。
- 余额调整弹窗打开前会挂载到页面 `body` 下，避免被后台内容容器层级影响。

### 界面样式

- 充值返利设置页使用后台统一表单样式和 FontAwesome 图标。
- 余额调整弹窗保持原 Bootstrap 弹窗交互，PC 和手机端都可正常显示与关闭。

### 部署说明

- 程序缓存版本更新到 `2026052110`。
- 覆盖更新后建议强制刷新后台浏览器缓存。
- 本版本不包含数据库结构变更。

### 后续计划

- 继续整理财务管理相关页面，逐步减少旧 Bootstrap 弹窗和内联事件残留。
- 继续完善充值返利、加款卡和资金流水之间的展示口径。

## v1.0.2.4 - 商品列表库存入口修复

发布日期：2026-05-21

### 重要说明

- 本版本继续完善后台商品列表的新 shell 结构，修复库存入口与表格数据结构不一致的问题。
- 商品列表库存列新增“加卡”快捷入口，可直接进入对应商品的添加卡密页面。

### 修复问题

- 修复后台商品列表点击库存时提示“服务器请求失败，请稍后重试”的问题。
- 清理商品列表表格中旧的内联库存入口，改为统一读取行数据的 `data-shop-action` 结构。

### 新增功能

- 商品列表库存右侧新增“加卡”按钮，直接跳转到 `fakakms.php?my=add&tid=商品ID`。

### 优化改进

- 商品列表行输出补齐商品 ID、库存、来源、价格、状态等数据属性，详情、库存、价格和批量操作统一走新后台交互结构。
- 保持库存展示为本地卡密库存与站点库存合计，编辑库存时仍只维护站点库存。

### 界面样式

- 库存列改为“库存卡片 + 加卡按钮”的并排布局。
- 移动端库存区域支持自适应换行，避免按钮挤压库存数字。

### 部署说明

- 程序缓存版本更新到 `2026052108`。
- 覆盖更新后建议强制刷新后台浏览器缓存。
- 本版本不包含数据库结构变更。

### 后续计划

- 继续推进商品列表、发卡库存和卡密管理之间的快捷操作体验。
- 继续清理后台商品相关页面的旧内联事件与旧表格结构。

## v1.0.2.3 - 浮动客服配置

发布日期：2026-05-21

### 重要说明

- 本版本将前台客服入口调整为可配置的全站浮动客服，站长可按需选择跳转链接、QQ 对话、Chatwoot 或自定义代码。
- 原内置客服窗口入口已移除，避免继续维护旧的前台轮询聊天窗口、上传和提示音逻辑。

### 修复问题

- 移除后台公共头部中旧客服消息轮询和提示音引用，避免后台继续请求旧客服资源。
- 删除旧内置客服提示音资源，减少无用静态文件残留。

### 新增功能

- 新增后台“浮动客服配置”入口。
- 支持配置客服开关、客服方式、按钮文字、FontAwesome 图标、按钮颜色、文字颜色、显示位置、边缘距离、手机端显示和新窗口打开。
- 支持 Chatwoot 地址与 Website Token 配置。
- 支持站长粘贴可信第三方客服自定义代码。

### 优化改进

- 客服入口统一由 `template/default/chat/widget.php` 输出，避免每个模板单独硬编码。
- 左侧菜单在“内容与外观”下新增“浮动客服配置”，便于站长直接管理。

### 界面样式

- 浮动客服按钮适配 PC 和手机端，手机端默认只显示图标按钮。
- 按钮图标统一使用 FontAwesome。

### 部署说明

- 程序缓存版本更新到 `2026052106`。
- 覆盖更新后可在后台“内容与外观 / 浮动客服配置”中开启并配置客服入口。
- 本版本不包含数据库结构变更。

### 后续计划

- 继续按模板检查浮动按钮与页面底部导航、购物车入口等固定元素的遮挡情况。
- 根据实际运营反馈补充更多客服类型或模板级样式适配。

## v1.0.2.2 - 库存展示与后台细节修复

发布日期：2026-05-21

### 重要说明

- 本版本继续面向“岁岁云商城独立运营版本”，重点修复本地卡密库存与对接库存展示不一致的问题，并补充后台列表筛选和弹窗体验细节。
- 对接商品现在展示本地卡密库存与对接站库存的合计值；下单时优先使用本地已有卡密，本地卡密不足时继续走原有对接流程。

### 修复问题

- 修复对接商品已添加本地卡密后，前台、接口和后台商品列表仍只显示对接库存或不显示发卡库存的问题。
- 修复发卡库存管理页筛选条件只识别纯发卡商品，导致有本地卡密的对接商品未出现在库存列表的问题。
- 修复分站列表“分类查看”弹窗打开时出现黑色遮罩的问题，移除按钮与弹窗重复 ID 的触发冲突。
- 修复后台全局加载动画圆点偏离圆环轨道的问题。

### 新增功能

- 用户列表新增用户类型、状态和余额排序筛选入口。
- 商品库存展示新增本地卡密库存与对接库存合并计算能力。

### 优化改进

- 发卡库存统计、商品列表库存、前台商品详情和 API 商品库存口径保持一致。
- 后台分站列表搜索和分类查看改为新后台 shell 弹层，不再依赖旧 Bootstrap 遮罩链路。
- 用户列表筛选参数支持翻页保留，便于后台连续筛选与查看。

### 界面样式

- 优化用户列表筛选栏在 PC 和手机端的排列。
- 调整后台加载动画圆点轨道，让圆点保持在圆环内运动。

### 部署说明

- 程序缓存版本更新到 `2026052105`。
- 覆盖更新相关后台页面、公共库存逻辑、前台接口和后台 shell 样式后，建议强制刷新后台浏览器缓存。
- 本版本不包含数据库结构变更。

### 后续计划

- 继续按页面处理后台旧 Bootstrap 弹窗结构，避免重复 ID 和遮罩冲突。
- 继续完善对接商品库存、卡密发放和订单回写链路的异常提示。
- 继续推进后台页面到统一 shell 风格。

## v1.0.2.1 - XHY-01 首页顶部体验优化

发布日期：2026-05-20

### 重要说明

- 本版本继续推进 XHY-01 首页结构整理，重点优化首页顶部模块、快捷入口和资源缓存。

### 修复问题

- 修复 XHY-01 首页顶部模块圆角与其他模块不一致的问题。
- 减少旧 Bootstrap 结构对首页顶部布局的约束。

### 新增功能

- 新增 XHY-01 首页模块化外壳结构。
- 新增独立的首页品牌卡片与快捷入口模块样式。

### 优化改进

- 首页顶部区域改为更明确的结构类名，便于继续分模块重构。
- 快捷入口按钮使用独立网格布局，PC 与手机端表现更稳定。

### 界面样式

- 顶部品牌模块统一为圆角卡片视觉。
- 快捷入口与主内容卡片保持更一致的阴影、圆角和半透明背景。

### 部署说明

- 已更新 XHY-01 前台资源缓存版本，部署后浏览器会加载新样式。

### 后续计划

- 继续按模块拆分 XHY-01 首页旧结构。
- 逐步整理下单表单、查单模块和弹窗样式。

## v1.0.2.0 - XHY-01 模板结构重构

发布日期：2026-05-20

### 重要说明

- 本版本继续面向“岁岁云商城独立运营版本”，聚焦 `XHY-01` 重构版模板本身，不复用 `suisui` 模板结构，也不改动下单、查单、支付、商品同步等业务逻辑。
- `XHY-01` 首页保留原模板的视觉方向和主要页面模块，将旧模板里长期堆叠的内联 CSS/JS 拆分为模板专属静态资源，为后续持续运营维护打基础。

### 修复问题

- 修复 `XHY-01` 首页大量内联 `style`、页面内 `<style>` 块和散落脚本导致后续维护困难的问题。
- 修复客服弹窗、收藏按钮、在线客服入口等函数迁移后可能脱离全局作用域的问题，确保旧 HTML 事件入口仍可正常调用。
- 修复 XHY-01 专属资源旧缓存版本不明确的问题，避免测试时继续命中旧 CSS/JS。

### 新增功能

- 新增 `template/XHY-01/assets/js/xhy01.js`，集中承载 XHY-01 模板的纯前端交互。
- 为 XHY-01 首页新增明确的结构类名，用于替代旧内联样式，便于后续继续按模块重构。

### 优化改进

- `template/XHY-01/index.php` 从大体量混合模板清理为更偏结构化的 PHP/HTML 入口，样式和交互分别由专属 CSS/JS 管理。
- 将客服弹窗、首页导航、查询模块、抽奖模块、教程示例、页脚等区域的主要内联样式迁移到 `xhy01.css`。
- 保留 FontAwesome 图标体系，不引入 glyphicon 或新的外部图标依赖。

### 界面样式

- 保留 XHY-01 原有背景图、红色系按钮、半透明卡片、客服弹窗和多标签模块的视觉基调。
- 清理首页内联样式后，页面样式统一由 `/template/XHY-01/assets/css/xhy01.css` 输出。

### 部署说明

- 程序缓存版本更新到 `2026052010`。
- XHY-01 专属资源版本更新到 `xhy01refactor02`。
- 已同步到测试站 `https://text.zkapi.cn`，并完成服务器 `php -l`、XHY-01 CSS/JS/图片资源 HTTP 200、资源版本输出和乱码检查。
- 测试站当前首页实际启用模板为 `suisui`，如需验证本次 XHY-01 页面效果，需要在后台切换到 `XHY-01 重构版` 后测试。

### 后续计划

- 继续按 XHY-01 原视觉分模块重构首页结构，逐步减少旧 Bootstrap 结构约束和历史兼容样式。
- 后续优先检查手机端客服弹窗、标签栏、下单表单、查单结果和抽奖模块的真实交互表现。

## v1.0.1.9 - 前台模板与商品同步体验修复

发布日期：2026-05-20

### 重要说明

- 本版本面向岁岁云商城独立运营版本，集中修复 `suisui` 前台模板分类图、下单布局、商品简介同步和 `XHY-01` 模板入口问题。
- 已清理临时 `suisui_logic*` 资源文件，前台模板回到正式 `suisui.css` / `suisui.js` 入口，避免继续叠加临时 CSS/JS。

### 修复问题

- 修复公共 `assets/js/main.js` 在 `suisui` 模板中覆盖 `#classImg`，导致分类图先显示默认图又被空/坏商品图覆盖并出现破图闪烁的问题。
- 修复一级分类没有二级分类时仍显示“该分类无二级分类”提示的问题，改为直接隐藏二级分类选择区。
- 修复 `suisui` 模板“我要下单 / 查询订单”在窄屏和部分 PC 宽度下错位的问题。
- 修复 `suisui` 商品信息区域缺少商品简介展示的问题。
- 修复对接商品同步时部分上游商品简介未写入本地 `desc` 字段的问题，并补充历史空简介回填能力。
- 修复 `XHY-01` 被错误替换成 `suisui` 换色版的问题，恢复独立模板入口与配套页面。

### 新增功能

- `suisui` 模板新增后台可配置的全局默认分类图，分类无自定义图时统一使用该默认图。
- 商品同步逻辑新增多来源详情字段归一化，兼容 `desc`、`description`、`goods_desc`、`content` 等常见上游字段。

### 优化改进

- `suisui` 下单提醒模块移到下单区域上方，提升 PC 和手机端可见性。
- `suisui` 下单流程步骤改为当前步骤高亮、已完成步骤区分显示，避免“选分类”长期常亮造成误解。
- 分类图归属边界调整为：`suisui` 模板自己管理当前分类图，公共 `main.js` 不再接管该节点。
- 本地化 Layer 资源，减少前台模板对外部静态资源的依赖。

### 界面样式

- 优化 `suisui` 下单卡片、查询按钮、分类选择和商品信息区域在 PC / 移动端的排版。
- 为 `XHY-01` 保留独立样式入口，后续继续按原模板视觉做干净重构。

### 部署说明

- 程序缓存版本更新到 `2026052009`，后台资源版本更新到 `20260520suisuiops14`。
- 已同步到测试站 `https://text.zkapi.cn` 并完成首页、模板 CSS/JS、公共 `main.js` 资源 HTTP 200 检查。

### 后续计划

- 继续推进 `XHY-01` 的真正重构：保持原模板 UI 风格，清理旧代码结构，而不是复用 `suisui` 视觉。
- 继续优化商品同步的批量详情抓取性能，避免全量同步耗时过长。

## v1.0.1.8 - 首页弹出公告链路修复

发布日期：2026-05-20

### 重要说明

- 本版本修复 `suisui` 前台模板的首页弹出公告触发链路，不改变后台公告保存逻辑，不调整商品、订单、支付等业务流程。

### 修复问题

- 修复公共 `assets/js/main.js` 将模板传入的 `isModal` 覆盖为 `false`，导致前台弹窗触发条件失效的问题。
- 修复 `XHY-01` 自动弹窗误用首页公告 `anounce` 字段，而不是后台“首页弹出公告” `modal` 字段的问题。

### 新增功能

- 无新增业务功能。

### 优化改进

- `XHY-01` 模板增加独立的弹出公告内容变量，后续维护时更容易区分首页公告和首页弹出公告。

### 界面样式

- 沿用现有 `XHY-01` 弹出公告样式和 FontAwesome 图标，不新增叠加样式。

### 部署说明

- 程序缓存版本更新到 `2026052008`，后台资源版本更新到 `20260520suisuiops13`，前台 `main.js` 引用更新到 `suisuiorder04`。

### 后续计划

- 继续清理前台模板中遗留的旧公共脚本耦合点，逐步减少不同模板之间的弹窗变量冲突。

## v1.0.1.7 - 迁移表中文说明与分类

发布日期：2026-05-20

### 重要说明

- 本版本继续完善通用迁移中心的预检结果展示，为后续“选择迁移表”和正式迁移方案生成打基础。

### 修复问题

- 解决客户只能看到数据库表名、难以判断表用途的问题。

### 新增功能

- 新增迁移表清单，按源库表逐项展示中文功能、表说明、建议类型、源库行数、目标库状态和建议动作。
- 新增常见彩虹发卡 / 岁岁云商城同系表的中文说明，包括商品、订单、卡密、支付、分站、资金流水、工单、优惠券、同步配置、访问统计等。
- 表差异区域同步显示中文功能说明，减少只看表名造成的误判。

### 优化改进

- 预检报告将表分为默认必迁、可选迁移、自定义表和默认忽略，后续正式迁移可直接复用该分类作为勾选默认值。

### 界面样式

- 迁移表清单采用可滚动表格展示，避免大量表名撑长页面。

### 部署说明

- 程序缓存版本更新到 `2026052007`，后台资源版本更新到 `20260520suisuiops12`。

### 后续计划

- 下一步在迁移表清单上加入勾选控件、批量选择和生成迁移方案按钮。

## v1.0.1.6 - 迁移预检界面文案修正

发布日期：2026-05-20

### 重要说明

- 本版本继续围绕通用迁移中心做界面和表达修正，不改变数据库读取范围，不开放正式迁移写入。

### 修复问题

- 修复后台 shell 标题将“数据迁移中心”显示为 HTML 实体文本的问题。
- 修复预检结果状态仍显示英文 `ok`、`danger`、`warning`、`muted` 的问题。

### 新增功能

- 表差异结果增加建议动作，区分补结构、确认保留、默认忽略备份表等处理方向。
- 字段差异结果增加字段级建议，提示高价值字段应先补目标库结构再迁移。

### 优化改进

- 优化预检结果可读性，让管理员从报告中直接看到下一步处理动作。

### 界面样式

- 风险标签改为中文展示，减少误读。

### 部署说明

- 程序缓存版本更新到 `2026052006`，后台资源版本更新到 `20260520suisuiops11`。

### 后续计划

- 继续补充自动生成补字段 SQL 和字段映射方案。

## v1.0.1.5 - 通用数据迁移预检中心

发布日期：2026-05-20

### 重要说明

- 数据迁移能力定位为“岁岁云商城通用迁移中心”，面向彩虹发卡同系站点、岁岁云商城旧版本和同系统二开站点，不做任何单站点专用绑定。
- 本版本先上线只读预检报告，不执行正式迁移，不清空目标库，不写入数据，避免误操作影响生产站。

### 修复问题

- 修复 `admin/datamove.php` 仓库版本存在乱码和线上版本不一致的风险，避免后续从 GitHub 部署时覆盖掉正常页面。
- 移除旧迁移页“一点提交就逐表清空目标库再插入”的高风险入口。

### 新增功能

- 新增迁移预检报告，支持连接源站和目标站数据库后自动识别同系商城结构。
- 新增表差异、字段差异、核心业务表覆盖、高价值字段丢失风险检查。
- 新增源库和目标库主表前缀、系统族、核心表数量和核心表行数摘要。

### 优化改进

- 将迁移判断从单纯行数比较升级为结构级检查，能发现商品价格、上游成本、锁价、订单卡密、分站余额等关键字段风险。
- 将备份表、临时表、扩展表和核心业务表分级展示，便于管理员决定哪些需要保留。

### 界面样式

- 迁移入口改为后台 shell 风格的预检页面，保留 PC 和移动端可读性。
- 使用 FontAwesome 图标和明确的风险标签，不依赖 glyphicon。

### 部署说明

- 程序缓存版本更新到 `2026052005`，后台资源版本更新到 `20260520suisuiops10`。
- 部署后需要检查 `admin/datamove.php` 的 `php -l`、HTTP 200 和后台 CSS 新缓存资源。

### 后续计划

- 下一步增加迁移方案生成：自动给出补字段 SQL、字段映射建议和可忽略备份表清单。
- 正式迁移功能需在预检报告无高风险后再开放，并加入备份、分批写入、断点续迁和迁移后业务校验。

## v1.0.1.4 - 项目迁移与公开仓库更名

发布日期：2026-05-20

### 重要说明

- 项目公开仓库路径统一迁移为 `Guyi888/suisui-shop`，对外名称继续使用“岁岁云商城”。
- 本次更新只处理项目命名、联系方式、文档和后台版本入口，不改变下单、支付、同步、分站等业务逻辑。

### 修复问题

- 修复 README、后台版本信息页和搭建教程中仍指向旧仓库 `Guyi888/6v6faka` 或旧联系方式的问题。
- 修复安装默认公告中官方入口仍集中指向旧单一 Telegram 地址的问题。

### 新增功能

- README 增加 `suisui-shop` 项目路径说明，并将作者、交流群组、通知频道和项目地址拆分展示。
- 后台联系与赞助页增加官方群组、通知频道和项目仓库入口，方便后续维护和用户反馈。

### 优化改进

- 公共维护常量补充项目仓库、群组和频道地址，减少不同页面各写一套联系方式。
- 后台版本检查页的 GitHub 入口统一指向新公开仓库。

### 界面样式

- 联系与赞助页沿用现有后台 shell 风格，只更新展示字段和跳转入口，不新增额外样式层。

### 部署说明

- 需要推送新公开仓库 `Guyi888/suisui-shop`，并同步更新线上 `text.zkapi.cn` 的文档、后台版本入口和公共维护信息。
- 程序缓存版本更新到 `2026052004`，后台资源版本更新到 `20260520suisuiops09`。

### 后续计划

- 后续继续按后台页面清单推进界面重构和旧上游痕迹清理。
- 后续 Release 继续使用产品化发布说明，不写内部施工流水账。

## v1.0.1.3 - 后台细节返修与模板缩略图更新

发布日期：2026-05-20

### 修复问题

- 重构工单详情与网盘失效详情的回复动作区，三个操作按钮改为稳定网格布局，避免按钮错位和换行拥挤。
- 修复网站信息配置中客服微信上传二维码入口竖向错版的问题，并优化上传二维码页面的按钮布局。
- 清理更新日志页面时间线残留的左侧竖线，包括伪元素和旧边线影响。
- 当前使用模板 `suisui`（XHY-01）缩略图更新为当前前台真实首屏截图。

### 缓存

- 程序缓存版本更新到 `2026052003`，后台资源版本更新到 `20260520suisuiops08`。

## v1.0.1.2 - XHY-01 下单数量控件重构

发布日期：2026-05-20

### 修复问题

- 重构 XHY-01 前台首页下单份数控件，替换旧的 `input` 符号按钮为 FontAwesome 图标按钮。
- 修复加减按钮在移动端和窄屏下被输入组样式挤压、错位的问题。
- 为数量控件增加独立结构类名和模板内正式样式，减少对旧 Bootstrap 输入组样式的依赖。
- 对不支持多份下单的商品增加固定 1 份提示，减少用户误以为数量控件缺失的困惑。

### 说明

- 商品是否显示数量控件仍由商品 `multi` 配置控制；不允许多份下单的商品继续按 1 份提交，避免改变原有业务规则。

## v1.0.1.1 - 文档联系方式更新

发布日期：2026-05-20

### 文档更新

- README 联系入口更新为 Telegram 交流群组：[https://t.me/suisuishop](https://t.me/suisuishop)。
- README 通知频道更新为：[https://t.me/suisuifaka](https://t.me/suisuifaka)。
- 移除 README 中旧的单一 Telegram 联系入口，后续对外沟通统一使用群组与通知频道。

## v1.0.1.0 - 后台运营界面细节修复与加款卡增强

发布日期：2026-05-20

### 重要说明

- 本版本属于大更新，继续沿用“上线即运营”的检查口径，重点修复上一轮重构后暴露的后台界面细节、编码显示和批量操作体验问题。
- 加款卡密增加每张卡可使用次数能力，旧卡默认按 1 次处理，新卡可在生成时设置使用人数。

### 修复问题

- 修复自动补单页面顶部统计卡图标被普通 span 样式覆盖，导致图标变小并偏出色块的问题。
- 修复订单列表底部统计文案和批量操作栏仍使用旧表单样式的问题，批量确认弹窗重新接入新订单列表弹窗样式。
- 修复分站排行三项入口错位、第三项换行和奖励设置返回样式不协调的问题。
- 修复用户列表操作按钮不靠右的问题。
- 修复收支明细、通道结算、检查版本更新、更新日志等页面顶部标题显示 HTML 实体的问题。
- 修复对接站点管理点击“对接插件”出现过重黑色遮罩的问题。
- 修复网站信息配置中客服微信二维码上传控件竖向错版的问题。
- 修复工单处理和网盘失效处理弹窗、回复框、按钮和快捷回复区域的旧样式问题。
- 修复更新日志页面左侧异常白线视觉干扰。

### 新增功能

- 加款卡密生成结果页新增“一键复制”按钮，可直接复制本次生成的全部卡密。
- 加款卡密新增“每张可用人数”设置，并为 `pre_kms` 自动补齐 `use_limit` / `use_count` 字段。
- 联系与赞助页面新增图片广告位和文字广告位，后续可通过修改本页 `$supportAds` 数组或替换本地图片远程更新展示内容。
- 当前模板 `suisui`（XHY-01）缩略图更新为本地生成的前台首屏风格预览图。

### 优化改进

- 利润统计四个核心指标改为统一后台统计卡片样式，减少旧内联色块。
- 分站排行入口改为响应式三列按钮，在移动端自动单列展示。
- 后台公共资源缓存版本更新到 `2026052001` 与 `20260520suisuiops07`。

### 部署说明

- 本版本需要同步代码到线上环境，并首次访问加款卡密或用户充值时自动补齐加款卡使用次数字段。
- 更新后需要检查后台关键页面 HTTP 200、PHP 语法、静态资源加载和加款卡多次使用流程。

## v1.0.0.0 - 岁岁云商城首个可运营重构版本

发布日期：2026-05-19

### 重要说明

- 本版本是岁岁云商城独立运营版的首个正式记录版本，版本号从 `v1.0.0.0` 开始。
- 本次更新聚焦本地品牌资源统一、后台登录页清理、第一批后台运营页面重构、乱码修复和线上同步验证。
- 后续版本规则：超大更新提升第二段，大更新提升第三段，小更新提升第四段。

### 修复问题

- 修复前台、后台 favicon 未统一为本地 Q8 图标的问题，补齐 `favicon.ico` 与 `assets/img/favicon/favicon.ico`。
- 修复后台登录页残留远程背景图片外链、旧模板注释和旧文字说明的问题。
- 修复自动转账接口旧硬编码远程地址，改为后台配置项 `transfer_api_url` 并增加基础 URL 校验。
- 修复 `admin/ajax.php` 中上传文章图片、favicon 上传、卡密详情和首页统计附近的乱码注释、断裂输出与潜在转义问题。
- 修复 `includes/function.php` 分类下拉输出乱码与 HTML 转义问题，分类名称统一通过 `htmlspecialchars` 输出。
- 修复用户中心头部禁用/到期提示、分站加价模板说明、商品列表注释中的乱码，减少前台可见异常字符。
- 清理更新记录文件本身的历史乱码，后台 `admin/changelog.php` 改为实体输出，避免页面再次出现编码断裂。

### 新增功能

- 新增本地 Q8 logo 资源，后台登录页右侧改为本地图片展示。
- 新增后台运营页面通用 shell 样式，提供统一统计卡、工具栏、批量操作、空状态和移动端布局能力。
- 新增 README 首页“最近更新”展示，方便 GitHub 首页直接看到最新版本摘要。
- 新增后台更新日志页面的版本记录说明，与 GitHub 更新记录同步维护。

### 优化改进

- 后台公共头部接入新的 admin shell 资源版本，统一品牌、favicon helper 与页面基础视觉结构。
- 重构 `shoprank.php` 商品销量排行界面，补充统计、搜索和快捷入口。
- 重构 `fakalist.php` 发卡库存界面，补充库存统计、批量操作、状态切换和确认交互。
- 重构 `shopnoo.php` 商品介绍批量替换界面，补充预览和执行流程。
- 重构秒杀商品管理界面，包含 `seckill.php`、`seckill-table.php`、`assets/js/seckill.js`、`assets/js/seckilledit.js`。
- 重构 `kmlist.php` 加款卡密界面，补充生成结果页、金额统计、搜索弹窗、清空确认页和删除确认事件。
- 重构 `support.php` 联系与赞助界面，改为统一维护信息页并清理历史乱码。

### 界面样式

- 后台页面统一向分类列表、商品列表的新后台 shell 风格靠齐。
- 登录页视觉资源统一走本地 logo 与 CSS 渐变，不再加载远程背景图片。
- 秒杀商品管理移除旧内联点击事件，中文 JS 提示改为 Unicode 转义。
- 业务页面图标继续统一使用 FontAwesome，不引入 glyphicon。

### 部署说明

- GitHub 已推送到 `main`。
- 已创建版本标签：`v1.0.0.0`。
- 已同步线上环境。
- 当前缓存版本已同步到 `2026051907`，后台资源版本同步到 `20260519suisuiops06`。
- 已执行本地 `git diff --check`，服务器侧执行 `php -l`，并检查线上关键页面 HTTP 200、favicon/logo 资源状态和登录页外链残留。

### 后续计划

- 继续按页面清单推进剩余后台、供货管理、营销工具、内容与外观、工单处理、系统与安全、员工管理等页面重构。
- 每次更新继续同步 GitHub 文档、后台程序内更新日志、GitHub Release 和线上环境。
- 后续更新日志统一使用本发布说明格式，不再写成内部施工流水账。

## 更新要求

- 后续每次更新都必须同步维护本文档、GitHub Release 和后台程序内 `admin/changelog.php`。
- 不写旧上游基线合并类表述，项目定位统一为岁岁云商城独立运营版本。
- 更新前后必须检查乱码、硬编码外链、资源 404、PHP 语法和关键页面 HTTP 状态。
