321 lines
9.6 KiB
TypeScript
321 lines
9.6 KiB
TypeScript
import type { FamilyMember, FamilyTreeData } from "@/types/family"
|
|
|
|
// Helper to create a member quickly
|
|
const createMember = (
|
|
id: string,
|
|
name: string,
|
|
gender: "MALE" | "FEMALE",
|
|
generation: number,
|
|
props: Partial<FamilyMember> = {},
|
|
): FamilyMember => {
|
|
const surname = "李"
|
|
return {
|
|
id,
|
|
surname,
|
|
givenName: name,
|
|
fullName: surname + name,
|
|
gender,
|
|
generation,
|
|
spouseIds: [],
|
|
childrenIds: [],
|
|
createdAt: new Date().toISOString(),
|
|
updatedAt: new Date().toISOString(),
|
|
...props,
|
|
}
|
|
}
|
|
|
|
const members: Record<string, FamilyMember> = {
|
|
// ========== 第一代 (曾祖父母辈,1920年代出生) ==========
|
|
"1": createMember("1", "国强", "MALE", 1, {
|
|
ancestralHome: "广东省广州市",
|
|
bio: "李氏家族第一代,抗战时期参加革命工作,新中国成立后在政府部门工作,为人正直,深受敬重。",
|
|
tags: ["革命干部", "始祖"],
|
|
birthDate: "1925-03-15",
|
|
deathDate: "2008-08-20",
|
|
spouseIds: ["2"],
|
|
childrenIds: ["3", "4", "5"],
|
|
}),
|
|
"2": createMember("2", "秀芳", "FEMALE", 1, {
|
|
fullName: "王秀芳",
|
|
surname: "王",
|
|
givenName: "秀芳",
|
|
ancestralHome: "广东省广州市",
|
|
bio: "知识分子家庭出身,建国后在学校任教,相夫教子,育有三子。",
|
|
birthDate: "1928-07-08",
|
|
deathDate: "2015-12-10",
|
|
spouseIds: ["1"],
|
|
childrenIds: ["3", "4", "5"],
|
|
}),
|
|
|
|
// ========== 第二代 (祖父母辈,1950年代出生) ==========
|
|
"3": createMember("3", "建华", "MALE", 2, {
|
|
fatherId: "1",
|
|
motherId: "2",
|
|
ancestralHome: "广东省深圳市",
|
|
birthPlace: "广东省深圳市",
|
|
bio: "国强长子,改革开放后下海经商,迁往深圳创办家族企业,事业有成。",
|
|
tags: ["企业家"],
|
|
birthDate: "1952-05-20",
|
|
deathDate: "2020-03-15",
|
|
spouseIds: ["6"],
|
|
childrenIds: ["9", "10"],
|
|
}),
|
|
"4": createMember("4", "建国", "MALE", 2, {
|
|
fatherId: "1",
|
|
motherId: "2",
|
|
generationName: "建",
|
|
rank: 2,
|
|
bio: "次子,大学教授,追随教育事业迁往北京,从事教育工作四十余年,桃李满天下。",
|
|
tags: ["教授", "次子"],
|
|
birthDate: "1955-11-03",
|
|
ancestralHome: "北京市",
|
|
birthPlace: "北京市",
|
|
spouseIds: ["7"],
|
|
childrenIds: ["11", "12", "13"],
|
|
}),
|
|
"5": createMember("5", "建军", "MALE", 2, {
|
|
fatherId: "1",
|
|
motherId: "2",
|
|
generationName: "建",
|
|
rank: 3,
|
|
bio: "三子,医生,支援西部建设迁往上海,从医三十余年,救死扶伤。",
|
|
tags: ["医生", "三子"],
|
|
birthDate: "1958-11-03",
|
|
ancestralHome: "上海市",
|
|
birthPlace: "上海市",
|
|
spouseIds: ["8"],
|
|
childrenIds: ["14"],
|
|
}),
|
|
|
|
// 第二代配偶
|
|
"6": createMember("6", "丽华", "FEMALE", 2, {
|
|
fullName: "陈丽华",
|
|
surname: "陈",
|
|
givenName: "丽华",
|
|
ancestralHome: "广东省深圳市",
|
|
bio: "建华之妻,企业管理者,协助丈夫打理家族企业。",
|
|
birthDate: "1955-05-20",
|
|
deathDate: "2021-11-05",
|
|
spouseIds: ["3"],
|
|
childrenIds: ["9", "10"],
|
|
}),
|
|
"7": createMember("7", "美玲", "FEMALE", 2, {
|
|
fullName: "张美玲",
|
|
surname: "张",
|
|
givenName: "美玲",
|
|
ancestralHome: "广东省广州市",
|
|
bio: "建国之妻,中学教师,与丈夫志同道合,共同从事教育事业。",
|
|
birthDate: "1957-01-15",
|
|
spouseIds: ["4"],
|
|
childrenIds: ["11", "12", "13"],
|
|
}),
|
|
"8": createMember("8", "雅琴", "FEMALE", 2, {
|
|
fullName: "林雅琴",
|
|
surname: "林",
|
|
givenName: "雅琴",
|
|
ancestralHome: "福建省厦门市",
|
|
bio: "建军之妻,护士长,温柔贤惠,善于持家。",
|
|
birthDate: "1960-08-10",
|
|
spouseIds: ["5"],
|
|
childrenIds: ["14"],
|
|
}),
|
|
|
|
// ========== 第三代 (父母辈,1980年代出生) ==========
|
|
"9": createMember("9", "志远", "MALE", 3, {
|
|
fatherId: "3",
|
|
motherId: "6",
|
|
generationName: "志",
|
|
rank: 1,
|
|
ancestralHome: "广东省深圳市",
|
|
birthPlace: "广东省深圳市",
|
|
bio: "建华长子,留学归国,接管家族企业,推动企业转型升级。",
|
|
tags: ["企业家", "海归"],
|
|
birthDate: "1980-03-08",
|
|
phone: "13800138001",
|
|
email: "zhiyuan.li@company.com",
|
|
address: "广东省广州市天河区珠江新城XX路XX号",
|
|
spouseIds: ["15"],
|
|
childrenIds: ["17", "18"],
|
|
}),
|
|
"10": createMember("10", "志强", "MALE", 3, {
|
|
fatherId: "3",
|
|
motherId: "6",
|
|
generationName: "志",
|
|
rank: 2,
|
|
ancestralHome: "北京市",
|
|
birthPlace: "北京市",
|
|
bio: "建华次子,互联网创业者,北上创业,创办科技公司。",
|
|
tags: ["创业者", "科技"],
|
|
birthDate: "1983-07-22",
|
|
phone: "13900139002",
|
|
email: "zhiqiang.li@techco.com",
|
|
address: "北京市朝阳区望京SOHO",
|
|
spouseIds: ["16"],
|
|
childrenIds: ["19"],
|
|
}),
|
|
"11": createMember("11", "志明", "MALE", 3, {
|
|
fatherId: "4",
|
|
motherId: "7",
|
|
generationName: "志",
|
|
rank: 1,
|
|
ancestralHome: "广东省广州市",
|
|
birthPlace: "广东省广州市",
|
|
bio: "建国长子,大学副教授,从北京返回广州从事教育研究工作。",
|
|
tags: ["副教授", "学者"],
|
|
birthDate: "1982-01-18",
|
|
phone: "13700137003",
|
|
telephone: "020-8888-8888",
|
|
email: "zhiming.li@university.edu.cn",
|
|
address: "广东省广州市海珠区大学城",
|
|
spouseIds: ["20"],
|
|
childrenIds: ["21", "22"],
|
|
}),
|
|
"12": createMember("12", "志文", "MALE", 3, {
|
|
fatherId: "4",
|
|
motherId: "7",
|
|
generationName: "志",
|
|
rank: 2,
|
|
bio: "建国次子,作家,追求文学梦想迁往成都,出版多部文学作品。",
|
|
tags: ["作家", "文学"],
|
|
birthDate: "1985-09-12",
|
|
ancestralHome: "四川省成都市",
|
|
birthPlace: "四川省成都市",
|
|
phone: "13600136004",
|
|
email: "zhiwen.li@writer.com",
|
|
}),
|
|
"13": createMember("13", "志勇", "MALE", 3, {
|
|
fatherId: "4",
|
|
motherId: "7",
|
|
generationName: "志",
|
|
rank: 3,
|
|
ancestralHome: "上海市",
|
|
birthPlace: "上海市",
|
|
bio: "建国三子,律师,从北京迁往上海,执业于知名律师事务所。",
|
|
tags: ["律师"],
|
|
birthDate: "1988-11-05",
|
|
phone: "13500135005",
|
|
email: "zhiyong.li@lawfirm.com",
|
|
address: "上海市浦东新区陆家嘴金融中心",
|
|
}),
|
|
"14": createMember("14", "志诚", "MALE", 3, {
|
|
fatherId: "5",
|
|
motherId: "8",
|
|
generationName: "志",
|
|
rank: 1,
|
|
ancestralHome: "广东省深圳市",
|
|
birthPlace: "广东省深圳市",
|
|
bio: "建军独子,医生,从上海迁往深圳,继承父业,在医院工作。",
|
|
tags: ["医生"],
|
|
birthDate: "1986-04-28",
|
|
phone: "13400134006",
|
|
telephone: "0755-6666-6666",
|
|
email: "zhicheng.li@hospital.com",
|
|
address: "广东省深圳市福田区人民医院",
|
|
spouseIds: ["23"],
|
|
childrenIds: ["24"],
|
|
}),
|
|
|
|
// 第三代配偶
|
|
"15": createMember("15", "晓雯", "FEMALE", 3, {
|
|
fullName: "赵晓雯",
|
|
surname: "赵",
|
|
givenName: "晓雯",
|
|
ancestralHome: "上海市",
|
|
bio: "志远之妻,金融行业从业者,MBA学位。",
|
|
birthDate: "1982-06-15",
|
|
spouseIds: ["9"],
|
|
childrenIds: ["17", "18"],
|
|
}),
|
|
"16": createMember("16", "诗涵", "FEMALE", 3, {
|
|
fullName: "刘诗涵",
|
|
surname: "刘",
|
|
givenName: "诗涵",
|
|
ancestralHome: "北京市",
|
|
bio: "志强之妻,设计师,从事品牌设计工作。",
|
|
birthDate: "1985-10-08",
|
|
spouseIds: ["10"],
|
|
childrenIds: ["19"],
|
|
}),
|
|
"20": createMember("20", "雨欣", "FEMALE", 3, {
|
|
fullName: "周雨欣",
|
|
surname: "周",
|
|
givenName: "雨欣",
|
|
ancestralHome: "浙江省杭州市",
|
|
bio: "志明之妻,中学教师,温柔贤淑。",
|
|
birthDate: "1984-02-25",
|
|
spouseIds: ["11"],
|
|
childrenIds: ["21", "22"],
|
|
}),
|
|
"23": createMember("23", "婉婷", "FEMALE", 3, {
|
|
fullName: "郑婉婷",
|
|
surname: "郑",
|
|
givenName: "婉婷",
|
|
ancestralHome: "广东省广州市",
|
|
bio: "志诚之妻,护士,在医院工作。",
|
|
birthDate: "1988-12-03",
|
|
spouseIds: ["14"],
|
|
childrenIds: ["24"],
|
|
}),
|
|
|
|
// ========== 第四代 (子女辈,2010年代出生) ==========
|
|
"17": createMember("17", "浩然", "MALE", 4, {
|
|
fatherId: "9",
|
|
motherId: "15",
|
|
generationName: "浩",
|
|
rank: 1,
|
|
bio: "志远长子,在读高中生,成绩优异。",
|
|
tags: ["学生"],
|
|
birthDate: "2010-05-10",
|
|
}),
|
|
"18": createMember("18", "思琪", "FEMALE", 4, {
|
|
fatherId: "9",
|
|
motherId: "15",
|
|
generationName: "思",
|
|
rank: 2,
|
|
bio: "志远次女,在读初中,喜欢绘画。",
|
|
tags: ["学生"],
|
|
birthDate: "2013-08-22",
|
|
}),
|
|
"19": createMember("19", "宇轩", "MALE", 4, {
|
|
fatherId: "10",
|
|
motherId: "16",
|
|
generationName: "宇",
|
|
rank: 1,
|
|
bio: "志强独子,在读小学,对编程感兴趣。",
|
|
tags: ["学生"],
|
|
birthDate: "2015-11-18",
|
|
}),
|
|
"21": createMember("21", "梓涵", "FEMALE", 4, {
|
|
fatherId: "11",
|
|
motherId: "20",
|
|
generationName: "梓",
|
|
rank: 1,
|
|
bio: "志明长女,在读大学,主修经济学。",
|
|
tags: ["大学生"],
|
|
birthDate: "2007-03-05",
|
|
}),
|
|
"22": createMember("22", "子轩", "MALE", 4, {
|
|
fatherId: "11",
|
|
motherId: "20",
|
|
generationName: "子",
|
|
rank: 2,
|
|
bio: "志明次子,在读高中,擅长数学。",
|
|
tags: ["学生"],
|
|
birthDate: "2010-07-14",
|
|
}),
|
|
"24": createMember("24", "欣怡", "FEMALE", 4, {
|
|
fatherId: "14",
|
|
motherId: "23",
|
|
generationName: "欣",
|
|
rank: 1,
|
|
bio: "志诚独女,在读初中,活泼可爱。",
|
|
tags: ["学生"],
|
|
birthDate: "2012-09-20",
|
|
}),
|
|
}
|
|
|
|
export const mockFamilyData: FamilyTreeData = {
|
|
members,
|
|
rootId: "1",
|
|
}
|