Browse Source

docs: record appointment date range release and verification

彭峰 1 hour ago
parent
commit
7c7ccf4c90
1 changed files with 28 additions and 0 deletions
  1. 28 0
      docs/qa/appointment-date-range-2026-11-11.md

+ 28 - 0
docs/qa/appointment-date-range-2026-11-11.md

@@ -0,0 +1,28 @@
+# 跨日期预约日期范围筛选 · 2026-11-11
+
+用户要求在跨日期预约管理中增加预约开始日期和结束日期,便于按日期查找及批量取消预约。提交 `2cf237e` 已推送并上线。
+
+## 行为
+
+- 搜索区使用后台已有日历选择器提供“预约开始日期”“预约结束日期”和重置按钮。可组合姓名与日期查询,也可只选日期或只选一端;空日期不限。北京时间计算,首尾日期均包含当天,开始晚于结束时阻止查询。
+- 查询清空旧勾选并回第一页。分页、每页条数及全选全部查询结果均使用已应用的同一日期范围,继续按预约实际时间倒序。
+- 改动筛选条件但尚未查询时,禁用勾选、全选和批量取消;新查询加载中或失败时也不能操作旧结果。取消仍保留未开始状态限制、版本核对、原因与既有确认步骤。
+- 数据库在计数和分页前按规范化预约时刻筛选:开始日北京时间零点起,结束日下一天零点之前;复用上一批排序的时区及旧日期/时间字段回退口径。校验真实日期和倒置范围,其他业务列表保持原行为。
+
+## 验证
+
+管理端全量 376 项、服务端全量 562 项测试通过,11 个云函数定义校验及后台生产构建通过(保留既有构建警告)。新增失败先行回归覆盖日期传参、翻页及跨页全选、只按日期全选、日期倒置、重置、未应用条件及新查询失败后的操作保护。PGlite 覆盖北京时间首尾零点、UTC、单侧范围、无效日期、姓名与日期组合分页、日期/时间分存和原倒序规则。
+
+本地浏览器使用隔离数据验证 112 条范围结果、跨页全选其中 88 条未开始预约,条件变动后取消禁用,新查询清空勾选,重置及 390px 日历无整页横向溢出。
+
+正式两个运营网关分别读取目标学员全部 87 条预约;2026-11-01 至 2026-12-31 筛出 26 条,2027-01-01 起 19 条,2026-09-30 止 32 条,2027-01-02 当天 4 条,均与全量逐条筛选一致,排序仍为倒序,前后记录字段保持一致。
+
+正式浏览器验证 26 条结果跨两页仍处于日期范围且倒序,全选仅选择其中 7 条未开始预约;修改结束日期后取消禁用,查询至 2026-11-30 得到 12 条并清空原勾选。桌面、390px 日历及页面均无运行时异常。未执行实际取消或其他业务写入,此浏览器检查不代替微信手机实机验收。
+
+## 发布与回滚
+
+两个运营网关只替换 businessRecordSqlPage,分别保留其他 370 个不同名函数,发布前源码哈希检查和备份、发布后逐字回读通过。发布时现有夜间同步在运行,本批没有修改同步函数、租约、批次或数据库对象。后台完整资源已备份,资源先上传并校验、清单及入口最后更新,CDN 刷新任务完成且无失败。
+
+后台版本:`admin-appointment-range-2cf237ebac02-20261111T151417027Z`。公网 96 个文件 SHA-256 与发布包一致,源站和公网清单一致,4 条深层路由返回新入口。
+
+私有备份、源码快照、测试日志、部署计划、哈希、前后接口结果及截图位于 `~/.local/state/xiaoshu/qa/2026-11-11-appointment-date-range/`。不提交会话或完整个人数据。回滚前核对后续发布,仅还原本批修改的函数及后台入口、清单,保留其他后续修改和哈希资源。