# 专项核查员工家庭资产负债展开区改版设计

**日期**: 2026-03-25  
**模块**: 项目详情 - 专项核查 - 员工家庭资产负债专项核查  
**作者**: Codex  
**状态**: 已确认

## 1. 概述

当前专项核查页中的“员工家庭资产负债专项核查”已经具备列表与展开详情能力，但展开区仍沿用“三列卡片 + 表格明细”的结构，与最新原型存在明显差异：

- 信息层级偏散，展开后阅读路径不稳定
- 逐条明细表过重，不符合当前原型的“汇总式详查”表达
- 资产、负债、指标和风险结论没有形成清晰的纵向阅读节奏

本次设计只改造展开后的详情展示效果，不调整列表层字段、列顺序、查看详情交互、接口契约和页面路由。

## 2. 设计目标

### 2.1 包含内容

- 仅改造 `FamilyAssetLiabilityDetail.vue` 的展开区展示结构
- 展开区改为自上而下 5 张纵向汇总卡片
- 每张卡片标题直接展示该模块汇总数字
- 卡片内部简洁展示汇总数据的来源项
- 资产与负债来源项改为按现有类型聚合后全部展示
- 风险结论按真实风险等级切换样式与文案

### 2.2 不包含内容

- 不调整列表层列顺序、列文案和操作按钮
- 不改造 `查看详情` 的交互入口和按需加载机制
- 不新增后端字段、后端接口或路由
- 不保留现有逐条表格明细展示
- 不增加兼容分支、降级分支、二级折叠或 tooltip 解释

## 3. 当前上下文

当前前端相关文件：

- `ruoyi-ui/src/views/ccdiProject/components/detail/FamilyAssetLiabilitySection.vue`
- `ruoyi-ui/src/views/ccdiProject/components/detail/FamilyAssetLiabilityDetail.vue`
- `ruoyi-ui/src/views/ccdiProject/components/detail/SpecialCheck.vue`
- `ruoyi-ui/src/api/ccdi/projectSpecialCheck.js`

当前详情接口已返回以下结构：

- `incomeDetail`
- `assetDetail`
- `debtDetail`
- `summary`

其中 `summary` 已包含：

- `totalIncome`
- `totalDebt`
- `totalAsset`
- `comparisonAmount`
- `riskLevelCode`
- `riskLevelName`

这意味着本次改版无需调整接口，即可直接支撑总额、净资产、关键指标和风险结果展示。

## 4. 视觉方向

### 4.1 Visual Thesis

展开区改为“工作台式纵向汇总带”，每段只承载一个核心结论，用浅灰标题条、白底内容区和简洁来源项建立稳定层级。

### 4.2 Content Plan

1. 总收入
2. 总负债
3. 总资产
4. 关键指标
5. 详查结果

### 4.3 Interaction Thesis

- 保留现有“点击列表行内展开”的唯一交互，不额外增加二级折叠
- 通过模块顺序和标题汇总值强化信息导向，不靠复杂动效制造层级
- 风险结果卡通过颜色和结论文案形成唯一视觉落点

## 5. 方案比较

### 5.1 方案 A：完全沿用现有三列卡片，仅替换表格样式

做法：

- 保留 `收入 / 负债 / 资产` 三列结构
- 仅把内部表格改成更轻的列表展示

优点：

- 改动最少

缺点：

- 与原型的纵向分段结构不一致
- 无法形成“总额 -> 指标 -> 结论”的阅读链路

### 5.2 方案 B：双列摘要面板

做法：

- 左侧聚合资产和负债
- 右侧聚合指标和结果

优点：

- 信息比较紧凑

缺点：

- 更像通用后台摘要区，不够贴近原型
- 用户新确认的顺序无法自然落地

### 5.3 方案 C：纵向 5 段汇总卡片

做法：

- 展开区改为 5 张单列卡片，顺序固定为：
  - 总收入
  - 总负债
  - 总资产
  - 关键指标
  - 详查结果
- 每张卡片标题右侧直接展示汇总值
- 资产、负债卡片内部仅展示聚合后的来源项

优点：

- 最贴近当前确认原型和用户确认顺序
- 只动详情组件，改动边界最清晰
- 能自然去掉逐条表格，收拢成简洁汇总式详查

缺点：

- 放弃现有逐条明细表阅读方式

### 5.4 结论

采用 **方案 C：纵向 5 段汇总卡片**。

原因：

1. 完整匹配用户最终确认顺序
2. 不改接口即可实现
3. 视觉层级清晰，符合原型的“汇总式展开详情”目标

## 6. 总体设计

### 6.1 展开区结构

展开区固定改为以下顺序：

1. `总收入`
2. `总负债`
3. `总资产`
4. `关键指标`
5. `详查结果`

每个模块都采用统一结构：

- 标题左侧：模块名称
- 标题右侧：该模块汇总数字
- 内容区：来源项或指标项

### 6.2 模块规则

#### 6.2.1 总收入

标题右侧展示 `家庭总年收入`。

内容区固定展示两条来源项：

- 本人收入
- 配偶收入

不新增额外说明文字。

#### 6.2.2 总负债

标题右侧展示 `家庭总负债`。

内容区展示“按现有负债类型聚合后的来源项”，每条结构统一为：

- 负债类型名
- 聚合金额
- 占总负债比例

所有聚合项全部展示，不截断、不合并为“其他”。

#### 6.2.3 总资产

标题右侧展示 `家庭总资产`。

内容区展示“按现有资产类型聚合后的来源项”，每条结构统一为：

- 资产类型名
- 聚合金额
- 占总资产比例

所有聚合项全部展示，不截断、不合并为“其他”。

#### 6.2.4 关键指标

标题右侧固定展示指标数 `3`。

内容区固定展示以下 3 项：

- 资产负债率 = 总负债 / 总资产
- 资产/收入比 = 总资产 / 总收入
- 负债/收入比 = 总负债 / 总收入

展示格式：

- 百分比项使用 `%`
- 倍数项使用 `倍`
- 分母为 `0` 时显示 `-`

#### 6.2.5 详查结果

标题右侧展示 `riskLevelName`。

内容区展示单条结论文案，按真实风险等级切换样式和文案：

- `NORMAL`：结构基本合理
- `RISK`：负债与收入压力偏高
- `HIGH`：资产负债结构明显异常
- `MISSING_INFO`：当前信息不完整

不新增二级解释区。

## 7. 数据映射与计算规则

### 7.1 直接取值

- 总收入：`incomeDetail.totalIncome` 或 `summary.totalIncome`
- 总负债：`debtDetail.totalDebt` 或 `summary.totalDebt`
- 总资产：`assetDetail.totalAsset` 或 `summary.totalAsset`
- 风险等级：`summary.riskLevelCode`、`summary.riskLevelName`

### 7.2 前端计算

- 净资产 = 总资产 - 总负债
- 资产负债率 = 总负债 / 总资产
- 资产/收入比 = 总资产 / 总收入
- 负债/收入比 = 总负债 / 总收入

### 7.3 聚合规则

资产来源项：

- 基于 `assetDetail.items`
- 按现有类型字段聚合
- 保留全部聚合项

负债来源项：

- 基于 `debtDetail.items`
- 按现有类型字段聚合
- 保留全部聚合项

本次不要求后端新增分类字段，统一由前端基于现有字段归并。

## 8. 样式约束

- 取消现有逐条明细表和表头
- 资产、负债来源项改为紧凑摘要条目
- 桌面端可使用两列或三列流式排布承载来源项
- 窄屏回落为单列
- 金额统一使用 `¥` + 千分位格式
- 标题区与内容区仍延续专项核查现有白底大区块语义，不引入新主题色体系

## 9. 验证要点

### 9.1 结构验证

- 展开区顺序必须为：总收入 -> 总负债 -> 总资产 -> 关键指标 -> 详查结果
- 每张卡片标题中必须出现对应汇总数字
- 资产与负债来源项不再使用表格

### 9.2 计算验证

- 关键指标基于当前总额值计算，不重复请求接口
- 分母为 `0` 时显示 `-`
- 风险结果卡的标题和结论文案与真实风险等级一致

### 9.3 范围验证

- 列表层结构、列顺序和交互不变
- 接口路径与返回结构不变
- 项目切换、展开缓存和首次展开按需加载机制不变

## 10. 实施边界

本次前端实施默认只涉及：

- `ruoyi-ui/src/views/ccdiProject/components/detail/FamilyAssetLiabilityDetail.vue`

必要时补充与该组件直接相关的单元测试与样式断言，但不扩大到列表层和后端实现。
