|
@@ -100,7 +100,7 @@
|
|
|
| 8 | 商业/权力/物质 | 富 |
|
|
| 8 | 商业/权力/物质 | 富 |
|
|
|
| 9 | 博爱/理想 | 心 |
|
|
| 9 | 博爱/理想 | 心 |
|
|
|
|
|
|
|
|
-灵数来源:现有 `NumSoulCalculator.calcLifePath(year, month, day)`(主数 11/22/33 保留,需化简为 1-9 用于映射:主数 11→映射 2、22→映射 4、33→映射 6)。
|
|
|
|
|
|
|
+灵数来源:现有 `NumSoulCalculator.calcLifePath(year, month, day)`(主数 11/22/33 保留)。`TianpanMemberVO.lifeNumber` 来自 `behaviorModifier` 中存储值,**服务内做防御性化简**:11→2、22→4、33→6(主数化简),其余 >9 值按 digit sum 递归化简至 1-9,null 则不命中。
|
|
|
|
|
|
|
|
**无灵数数据兜底**:无 birthDatetime 时灵数层全部 0 贡献。
|
|
**无灵数数据兜底**:无 birthDatetime 时灵数层全部 0 贡献。
|
|
|
|
|
|
|
@@ -165,7 +165,7 @@ private static final Map<Integer, String> LIFE_NUMBER_DIM = ...;
|
|
|
```java
|
|
```java
|
|
|
// 1. 初始化五维 map,八字层: 各维度 = (wuxing 对应五行值 ?? 50) × 0.6
|
|
// 1. 初始化五维 map,八字层: 各维度 = (wuxing 对应五行值 ?? 50) × 0.6
|
|
|
// 2. 星座命中: elementToDim[westernSign元素] += 20
|
|
// 2. 星座命中: elementToDim[westernSign元素] += 20
|
|
|
-// 3. 灵数命中: numberToDim[lifeNumber] += 20
|
|
|
|
|
|
|
+// 3. 灵数命中: numberToDim[reduceMaster(lifeNumber)] += 20 // 11->2, 22->4, 33->6, >9 digit sum
|
|
|
// 4. round 取整返回
|
|
// 4. round 取整返回
|
|
|
```
|
|
```
|
|
|
|
|
|
|
@@ -210,7 +210,7 @@ private Map<String, Integer> dimensionBaseScores; // 五维基础分 {body,mind
|
|
|
- 颜色:跟随 `getMemberColor(member.effectiveRole)`
|
|
- 颜色:跟随 `getMemberColor(member.effectiveRole)`
|
|
|
- 字体:9px,与节点名字体一致
|
|
- 字体:9px,与节点名字体一致
|
|
|
|
|
|
|
|
-**注意**:`TianpanMemberVO` 目前只有 `zodiacName` 字段(生肖名)—— 验证前端现有弹窗用的是 `selectedMember.zodiac`(生肖代码)显示为 `-`,需确认后端返回 `zodiacName` 已正确填充。若后端 `enrichMembers` 未设置 `zodiacName`,需一并修复(见 4.2 数据依赖)。
|
|
|
|
|
|
|
+**注意**:`enrichMembers` 目前只设置了 `vo.setZodiac(m.getZodiac())`(生肖代码,如 rat),**未设置 `zodiacName`(生肖中文名)**。前端弹窗/节点展示生肖名必须补齐:在 `enrichMembers` 中通过生肖代码映射中文名(映射表参考 `ZodiacConfig`/`findZodiacName` 逻辑,rat→鼠/ox→牛/...)并 `vo.setZodiacName(...)`。
|
|
|
|
|
|
|
|
### 4.2 成员弹窗增强(`pages/tianpan/index.vue` `member-popup`)
|
|
### 4.2 成员弹窗增强(`pages/tianpan/index.vue` `member-popup`)
|
|
|
|
|
|
|
@@ -236,7 +236,7 @@ private Map<String, Integer> dimensionBaseScores; // 五维基础分 {body,mind
|
|
|
- 八字四柱:年/月/日/时柱四格
|
|
- 八字四柱:年/月/日/时柱四格
|
|
|
- 五行条形图:复用 `FamilyTianpanCard` wuxingData 样式
|
|
- 五行条形图:复用 `FamilyTianpanCard` wuxingData 样式
|
|
|
- 星座 + 生肖 tag
|
|
- 星座 + 生肖 tag
|
|
|
- - 灵数:生命数/天赋数/生日数/命运数(现有 `NumSoulDetailVO` 结构,需确认 dashboard 是否返回完整 numSoul —— 若 `TianpanMemberVO` 只有 lifeNumber 无完整灵数详情,则本页展示简化版:仅生命数)
|
|
|
|
|
|
|
+ - 灵数:**定稿为简化版** —— 仅展示生命数(`member.lifeNumber`)+ 灵数称号(`member.lifeNumberTitle`)。完整的天赋数/生日数/命运数(`NumSoulDetailVO`)不随 dashboard 返回,如需完整版走 `/api/tianpan/member/{id}` 详情扩展(本迭代不做,列入 out of scope)
|
|
|
- **五维基础分**:条形图(五维标准色)+ 总分
|
|
- **五维基础分**:条形图(五维标准色)+ 总分
|
|
|
|
|
|
|
|
**页面注册**:`pages.json` 的 `pages/tianpan` 分包新增 `traditional`
|
|
**页面注册**:`pages.json` 的 `pages/tianpan` 分包新增 `traditional`
|
|
@@ -247,7 +247,7 @@ private Map<String, Integer> dimensionBaseScores; // 五维基础分 {body,mind
|
|
|
|
|
|
|
|
| 前端展示项 | 后端字段 | 现状 | 动作 |
|
|
| 前端展示项 | 后端字段 | 现状 | 动作 |
|
|
|
|------|------|------|------|
|
|
|------|------|------|------|
|
|
|
-| 生肖名 | `zodiacName` | `enrichMembers` 需确认是否设置 | 若无则补齐 |
|
|
|
|
|
|
|
+| 生肖名 | `zodiacName` | ❌ `enrichMembers` 未设置(仅 zodiac 代码) | **补齐**:代码→中文名映射 + setZodiacName |
|
|
|
| 星座 | `westernSign` | ✅ 已设置 | 无 |
|
|
| 星座 | `westernSign` | ✅ 已设置 | 无 |
|
|
|
| 灵数 | `lifeNumber` | ✅ 已设置 | 无 |
|
|
| 灵数 | `lifeNumber` | ✅ 已设置 | 无 |
|
|
|
| 八字四柱 | `eightCharacters` | ✅ 已设置(含脱敏) | 无 |
|
|
| 八字四柱 | `eightCharacters` | ✅ 已设置(含脱敏) | 无 |
|
|
@@ -281,13 +281,14 @@ cd cfc-backend && mvn clean compile
|
|
|
|
|
|
|
|
**In scope**:
|
|
**In scope**:
|
|
|
- 五维基础分算法服务 + 单测
|
|
- 五维基础分算法服务 + 单测
|
|
|
-- `TianpanMemberVO` 扩展 + `enrichMembers` 填充
|
|
|
|
|
|
|
+- `TianpanMemberVO` 扩展(dimensionBaseScores)+ `enrichMembers` 填充(含 zodiacName 补齐)
|
|
|
- 天盘首页 canvas 节点标注 + 成员弹窗增强
|
|
- 天盘首页 canvas 节点标注 + 成员弹窗增强
|
|
|
- 新增 `pages/tianpan/traditional.vue` + 入口卡片 + pages.json 注册
|
|
- 新增 `pages/tianpan/traditional.vue` + 入口卡片 + pages.json 注册
|
|
|
|
|
|
|
|
**Out of scope**:
|
|
**Out of scope**:
|
|
|
- 姓名数理(五格剖象法)—— 需汉字笔画库,单独需求
|
|
- 姓名数理(五格剖象法)—— 需汉字笔画库,单独需求
|
|
|
- 灵数九宫格连线(147/258/369 连线分析)—— 后续迭代
|
|
- 灵数九宫格连线(147/258/369 连线分析)—— 后续迭代
|
|
|
|
|
+- 灵数完整详情(天赋数/生日数/命运数)随 member 详情接口返回 —— 后续迭代
|
|
|
- AI 天盘解读(LangGraph)—— 未确认前不做
|
|
- AI 天盘解读(LangGraph)—— 未确认前不做
|
|
|
- 天盘周报 PDF 内容变更
|
|
- 天盘周报 PDF 内容变更
|
|
|
- 数据库迁移(无新表无新列)
|
|
- 数据库迁移(无新表无新列)
|