Files
juzi/docs/综合得分三维度加权-2026-10-14.md
T

39 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 综合得分:三维度按 4:3:3 加权
## 已确认公式
综合得分 = Math.round(紧塑力S × 4 + 透亮感S × 3 + 稳韧力S × 3)
- 三个维度为10分制,综合得分为100分制整数。
- 使用现有维度S分数(保留两位小数)计算,不先取页面显示的一位小数;最终四舍五入一次。
- 三维度任何一个缺失、非数值或越界,返回 null,页面显示 `--`,CSV为空;不按0分计、不重新分配权重。
- 不再读取旷视 `score_info.total_score` 或顶层 `total_score` 作为综合得分。原始接口数据仍原样保留供复核。
例如:紧塑力8、透亮感9、稳韧力8.5 → 84.5 → 85分。
## 生效位置
统一函数 `SkinScore.weightedTotal(dims)`,供评分引擎、H5报告页和后台复用。
- 新检测的 `vm.total` 与后台记录 `total_score` 保存加权结果,规则标记为 `dimensions-433-v1`。
- 后台列表列名“综合得分”,详情明确显示公式与精度规则,CSV列名“综合得分(4:3:3)”。
- 历史报告H5展示、后台列表/详情/CSV按已保存维度计算,不使用旧接口总分;不批量改写历史记录、报告快照或原始返回文件。
- 不修改维度评分、原始肌龄、文案或推荐产品规则;历史推荐保持不变。
- 历史快照和历史列表接口里既有的摘要总分不做迁移;用户页面不会使用该旧摘要分数,报告详情由统一函数计算显示。
## 本地验证
```sh
node h5/test/weighted-total.js
node h5/js/skin-score.js
node h5/test/regression.js
node h5/test/recommendation.js
node h5/test/raw-skin-age.js
node h5/test/accounts.js
H5_ARTIFACT_DIR=/tmp/juzi-weighted-total-20261014 node h5/test/report-persistence.mjs
```
使用临时数据目录、固定微信身份和接口样例进行测试,不调用付费检测,不读写真实线上报告。验证新记录保存、前后端展示一致、CSV、历史记录文件不变、缺失维度、安全隔离与既有产品/文案回归。
已获用户确认,纳入 2026-10-14 发版;部署后只读核对线上静态资源、报告页与后台接口,不调用真实付费检测或新增测试记录。