v74 端上删掉家谱 + 名册页头改「醒目搜索 + 添加」

用户 2026-10-21:「算了,你画不好。这个功能直接从鸿蒙端去掉吧,不要了。
这样名册这个功能,进来以后,上面就是搜索和添加按钮,搜索,做的醒目一点,
现在看不清。家谱和名册的标签,都不要了。家谱的相关功能,都删除。」

家谱链路整条删除(不是隐藏):
- 删 common/KinLayout.ets、components/FbKinGraph.ets 两个源文件
- 删 Types 的 FbKinPerson / FbKinGraph / FbKinRelation、FbParse 的 parseKin
- 删 FbModuleLoad 路由、FbModuleRepo 模块名、FbSyncAll 预同步清单里的 kin
- 删 DemoData 的 FB_DEMO_KIN_RELATIONS、Theme/Settings 的家谱图标映射
- 删死资源 fb_ic_kin.png
- Index 的 kin 分支去掉(不再有「名册/家谱」两个模块共用一个页面)
- FbPeoplePage:删 subView 分段切换、kinHeader/kinView、loadKin、segBtn;
  openDetail 不再借家谱字段兜底,改成纯 id 占位 + 异步补全
  (保留"本地没缓存也要立刻开浮层",那是 v73 修过的"点了没反应")

名册页头:
- 第一行就是搜索 + 添加,上面不再有任何东西
- 搜索框从「看不清」改成醒目:白底 #FFFFFF(原来 inputBg 与页面米色几乎同色
  ⇒ 没有边界)、1.5 主题色描边、高度 36→44、图标 15→18 并染主题色、
  字号 fontSmall→fontBody、提示词收短成「搜索姓名 / 首字母 / 手机」

验证:
- ArkTS 静态守卫 917/0(新增 6 条:家谱五条链路全清 + 搜索框三个具体数值)
- 反向验证 154/0(新增 7 条注入全部有效;另修好两条因代码演进失效的旧锚点)
- 编译 BUILD SUCCESSFUL + 装机 install bundle successfully
- 真机 v74 探针 22/0(高度实测 44.2vp、白底、占屏 66%、同排对齐、
  家谱在页面与抽屉里都不存在、搜索输入与清空真的生效)

顺带修掉探针三处假红(都不是应用问题,是量错了节点):
- 搜索框在界面树里是两层,TextInput(75px) 只是内部输入区,
  白底容器 Row(138px) 才是盒子;只按"有文字/可点"收集会把它漏掉
- uitest uiInput inputText 是 (x,y,text) 三参数,只给文本会静默不输入
- 空态文案是「换个关键词试试…」,按"没有/找到"判永远为假
This commit is contained in:
2026-10-21 23:28:19 +08:00
parent 8cabc35400
commit 6e7cdaf5fc
14 changed files with 150 additions and 1615 deletions
+1 -13
View File
@@ -13,7 +13,7 @@
*/
import { FbAccount, FbBookItem, FbCalBook, FbCalEvent, FbGroup,
FbKinChip, FbKinRelation, FbLedgerBook, FbLedgerEntry, FbMovieItem,
FbKinChip, FbLedgerBook, FbLedgerEntry, FbMovieItem,
FbNoteItem, FbNotificationItem, FbResourceItem, FbRosterItem, FbSession,
FbTaskItem, FbTripItem, FbTripNode } from './Types';
@@ -91,18 +91,6 @@ export const FB_DEMO_ROSTER: FbRosterItem[] = [
{ id: 12, name: '赵鹏', kinship: '朋友', group: '亲友', tags: ['邻居'], avatarColor: '#3D6B8E', roster: 'friend', birthday: '04-17', avatar: '', phone: '', initials: 'x', isAdmin: false, phones: [], org: '', title: '' },
];
/** 家谱连线(父母 / 配偶 / 子女) */
export const FB_DEMO_KIN_RELATIONS: FbKinRelation[] = [
{ id: 1, fromId: 1, fromName: '杨永全', toId: 5, toName: '杨建国', kind: 'parent', label: '父亲' },
{ id: 2, fromId: 1, fromName: '杨永全', toId: 6, toName: '王秀兰', kind: 'parent', label: '母亲' },
{ id: 3, fromId: 1, fromName: '杨永全', toId: 2, toName: '李慧', kind: 'spouse', label: '配偶' },
{ id: 4, fromId: 1, fromName: '杨永全', toId: 3, toName: '杨小满', kind: 'child', label: '儿子' },
{ id: 5, fromId: 1, fromName: '杨永全', toId: 4, toName: '杨小禾', kind: 'child', label: '女儿' },
{ id: 6, fromId: 1, fromName: '杨永全', toId: 7, toName: '杨永强', kind: 'child', label: '弟弟' },
{ id: 7, fromId: 2, fromName: '李慧', toId: 8, toName: '李国栋', kind: 'parent', label: '岳父' },
{ id: 8, fromId: 2, fromName: '李慧', toId: 9, toName: '陈静', kind: 'parent', label: '岳母' }
];
// ============================================================
// 观影
// ============================================================
+1 -1
View File
@@ -19,7 +19,7 @@
/** 一个功能模块的静态定义 */
export interface FbModuleDef {
/** 模块 key,等于 Web 端路由名(home / kin / people / …) */
/** 模块 key,等于 Web 端路由名(home / people / movies / …) */
key: string;
/** 抽屉里显示的名字 */
name: string;
-55
View File
@@ -332,61 +332,6 @@ export interface FbRosterItem {
title: string;
}
/**
* 家谱里的一个人(`GET /api/v1/kin`)。
*
* ⚠️ 与 `FbRosterItem`(名册平铺名单)**不是一个东西**:
* 名册是"我名册里的人"(可能上千),家谱是"**以我为中心的关系网**"
* (只含上下两代,十来人),关键是带**代数**与**亲属边**。
*/
export interface FbKinPerson {
id: number;
name: string;
/** 「我怎么叫他」(昵称优先) */
shown: string;
/** 「我该怎么称呼他」(服务端按图谱推导,如"岳父""外甥女") */
label: string;
/** 代数:0 = 我,负 = 长辈,正 = 晚辈 */
gen: number;
avatarColor: string;
/**
* 头像(服务端 OSS 相对路径,如 `avatars/xxx.jpg`;空 = 这个人没传过头像)。
*
* ⚠️ v73 加:家谱卡片改成"头像在上"之后要用真图。
* 服务端 `/api/v1/kin` 一直就返回这个字段,只是端上以前画圆点用不着、没解析。
* 与 `FbRosterItem.avatar` **同一个含义**,拼地址同样走 `fbImageSrc()`。
*/
avatar: string;
/** 户(夫妻单元)号 */
unit: number;
parents: number[];
children: number[];
spouses: number[];
siblings: number[];
}
/** 家谱整体 */
export interface FbKinGraph {
meId: number;
people: FbKinPerson[];
total: number;
}
/** 家谱连线(kin/relate:父母 / 配偶 / 子女) */
export interface FbKinRelation {
id: number;
/** 从谁出发 */
fromId: number;
fromName: string;
/** 到谁 */
toId: number;
toName: string;
/** 关系类型:parent / spouse / child */
kind: string;
/** 称谓(Kinship::label 算出,如「爷爷」「外甥」) */
label: string;
}
// ============================================================
// 观影(movies)
// ============================================================