Files
chinese-family-tree-2/FOUNDER_FEATURE.md
T
freedakgmail 3d075c6076 0.0.8.5
2025-11-24 14:02:34 +08:00

114 lines
2.9 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.
# 始祖标识功能说明
## 功能概述
当创建新家族树后添加第一个成员时,系统会自动将其标记为"始祖",并赋予特殊的视觉标识。
## 自动设置
### 第一个成员自动处理
当家族树中没有任何成员时,添加的第一个成员会自动:
1. **设置世代**:自动设为第 1 代
2. **添加标签**:自动添加"始祖"标签
3. **特殊提示**:页面标题显示"添加家族始祖"
### 页面提示
- **标题**:添加家族始祖
- **说明**:这是家族树的第一位成员,将自动标记为"始祖"并设为第1代
## 视觉标识
### 始祖标签样式
"始祖"标签具有特殊的视觉样式:
- **图标**:👑 皇冠图标
- **颜色**:金色主题(amber
- 背景:`bg-amber-100`
- 文字:`text-amber-800`
- 边框:`border-amber-300`
- **字体**:加粗显示(`font-semibold`
### 普通标签样式
其他标签使用默认样式:
- 背景:`bg-primary/10`
- 文字:`text-primary`
- 边框:`border-primary/20`
## 显示位置
始祖标签会显示在以下位置:
1. **成员列表页**:每个成员卡片的标签区域
2. **成员详情页**:成员信息的标签部分
3. **族谱图**:成员节点上
## 使用场景
### 创建新家族树
1. 创建家族树后,点击"添加成员"
2. 系统检测到这是第一个成员
3. 页面显示"添加家族始祖"
4. 填写成员信息并保存
5. 成员自动标记为"始祖",世代为1
### 后续添加成员
- 第二个及以后的成员不会自动标记为始祖
- 需要手动设置世代和关系
- 可以手动添加其他标签
## 技术实现
### 检测逻辑
```typescript
const existingMembers = Object.values(treeData.members)
const isFirstMember = existingMembers.length === 0
```
### 自动设置
```typescript
const memberData = isFirstMember ? {
...newMember,
generation: 1,
tags: [...(newMember.tags || []), '始祖'],
createdAt: new Date().toISOString(),
updatedAt: new Date().toISOString(),
} : {
...newMember,
createdAt: new Date().toISOString(),
updatedAt: new Date().toISOString(),
}
```
### 样式渲染
```typescript
className={tag === '始祖'
? "text-xs bg-amber-100 text-amber-800 px-2 py-0.5 rounded border border-amber-300 font-semibold"
: "text-xs bg-primary/10 text-primary px-2 py-0.5 rounded border border-primary/20"}
```
## 注意事项
1. **唯一性**:每个家族树只有第一个成员会自动标记为始祖
2. **不可撤销**:一旦标记为始祖,需要手动编辑才能移除标签
3. **世代固定**:始祖默认为第1代
4. **视觉突出**:始祖标签使用金色主题,在列表中更加醒目
## 未来扩展
可能的功能扩展:
- [ ] 支持多个始祖(如夫妻双方都是始祖)
- [ ] 始祖成员在族谱图中的特殊显示
- [ ] 始祖成员的专属统计信息
- [ ] 从始祖开始的完整世系追溯