Skip to content

Commit 28dd64c

Browse files
committed
feat:资历统计
1 parent 9a595a1 commit 28dd64c

17 files changed

Lines changed: 2165 additions & 331 deletions

docs/project/achievement-statistics.md

Lines changed: 296 additions & 0 deletions
Large diffs are not rendered by default.

docs/project/achievement.md

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
- `docs/design/responsive-adaptation-guide.md`
1111
- `docs/design/achievement-layout.md`
1212
- `docs/project/pvx-modernization.md`
13+
- [资历总览统计业务规则](./achievement-statistics.md)
1314

1415
## 2. 当前模块范围
1516

@@ -84,7 +85,8 @@
8485
## 4. 设计边界
8586

8687
资历宝典的背景资产、配色、页面层级、公共组件外观和响应式结果统一维护在
87-
`docs/design/achievement-layout.md`。本文只保留业务结构、状态、统计口径和实施边界。
88+
`docs/design/achievement-layout.md`。本文只保留业务结构、状态和实施边界;总览的字段定义、分类规则、统计公式和数据快照统一维护在
89+
[资历总览统计业务规则](./achievement-statistics.md)
8890

8991
## 5. 建议目标结构
9092

@@ -235,7 +237,13 @@ npm run build:dev
235237
git diff --check
236238
```
237239

238-
当前仓库没有资历宝典专项自动测试。实施时至少应补充纯数据聚合函数测试,避免视觉重构改变资历统计口径。
240+
总览已有纯数据聚合函数测试:
241+
242+
```bash
243+
node scripts/test-achievement-statistics.js
244+
```
245+
246+
后续调整总览统计时必须运行该测试;亲友对比与渡劫方案仍需继续补充专项自动测试。
239247

240248
## 9. 实施原则与阶段结果
241249

@@ -265,3 +273,9 @@ git diff --check
265273
- 回归:已在当前 `12028` 联调页面检查桌面、iPad 和 `414 × 896` 手机布局,三页无页面级横向溢出;局部表格和分类导航只在自身容器滚动。
266274

267275
后续仍需完成阶段 E 的小程序/App 专用端复核,以及普通 Web 写操作的完整业务回归。当前开发约束是只同步到浏览器正在使用的 `12028` 项目,不另启其他端口;修改对比或渡劫时必须回归已经改造完成的总览页面。
276+
277+
## 11. 总览分类统计口径
278+
279+
总览分类统计的唯一业务基线是 [资历总览统计业务规则](./achievement-statistics.md)。该文档完整定义三个数据源、`point / general / visible` 字段、隐藏开关、总体与分类公式、99 烟花、绝版成就、异常边界、验收数据,并附当前 `general=0/3` 的完整 ID 快照。
280+
281+
维护本页面时只在本文记录模块范围和实施状态,不再复制统计细则;任何口径调整都应先更新业务规则文档,再同步统计实现与自动测试。

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
"build:dev": "cross-env NODE_OPTIONS=--max-old-space-size=4096 VUE_APP_PROXY_ENABLE=0 BUILD_PREVIEW=1 vue-cli-service build --mode development",
1212
"build:prod": "cross-env NODE_OPTIONS=--max-old-space-size=4096 vue-cli-service build --mode production",
1313
"lint": "vue-cli-service lint",
14+
"test:achievement-statistics": "node scripts/test-achievement-statistics.js",
1415
"verify:legacy-js": "node scripts/verify-legacy-js.js",
1516
"update": "npm --registry https://registry.npmjs.org install @jx3box/jx3box-common@latest @jx3box/jx3box-data@latest @jx3box/jx3box-ui@latest @jx3box/jx3box-editor@latest @jx3box/jx3box-facedat@latest @jx3box/jx3box-map@latest"
1617
},

0 commit comments

Comments
 (0)