# CQYGL3F8E 人企关系加强版模块

## 概述

CQYGL3F8E 是人企关系加强版模块，提供全面的企业关联分析功能。该模块通过拆分功能，将原本的单一组件分解为三个独立的子模块，每个子模块专注于特定类型的企业关联信息展示。

## 模块结构

### 主模块
- **文件位置**: `src/ui/CQYGL3F8E/index.vue`
- **功能**: 整合三个子模块，提供完整的人企关系分析视图
- **API ID**: `QYGL3F8E`

### 子模块

#### 1. 投资企业记录 (Investment)
- **文件位置**: `src/ui/CQYGL3F8E/components/Investment.vue`
- **API ID**: `CQYGL3F8E_Investment`
- **功能**: 展示用户作为股东、历史股东、法人、历史法人的企业记录
- **数据来源**: 过滤 `relationship` 字段包含 `["sh", "his_sh", "lp", "his_lp"]` 的企业

#### 2. 高管任职记录 (SeniorExecutive)
- **文件位置**: `src/ui/CQYGL3F8E/components/SeniorExecutive.vue`
- **API ID**: `CQYGL3F8E_SeniorExecutive`
- **功能**: 展示用户作为高管、历史高管的企业任职记录
- **数据来源**: 过滤 `relationship` 字段包含 `["tm", "his_tm"]` 的企业

#### 3. 涉诉风险 (Lawsuit)
- **文件位置**: `src/ui/CQYGL3F8E/components/Lawsuit.vue`
- **API ID**: `CQYGL3F8E_Lawsuit`
- **功能**: 展示存在涉诉风险的企业信息
- **数据来源**: 过滤 `lawsuitInfo` 字段包含有效涉诉数据的企业

#### 4. 对外投资历史 (InvestHistory)
- **文件位置**: `src/ui/CQYGL3F8E/components/InvestHistory.vue`
- **API ID**: `CQYGL3F8E_InvestHistory`
- **功能**: 展示企业的对外投资历史记录
- **数据来源**: `invest_history` 字段

#### 5. 融资历史 (FinancingHistory)
- **文件位置**: `src/ui/CQYGL3F8E/components/FinancingHistory.vue`
- **API ID**: `CQYGL3F8E_FinancingHistory`
- **功能**: 展示企业的融资历史记录
- **数据来源**: `financing_history` 字段

#### 6. 行政处罚 (Punishment)
- **文件位置**: `src/ui/CQYGL3F8E/components/Punishment.vue`
- **API ID**: `CQYGL3F8E_Punishment`
- **功能**: 展示企业的行政处罚记录
- **数据来源**: `punishment_info` 字段

#### 7. 经营异常 (Abnormal)
- **文件位置**: `src/ui/CQYGL3F8E/components/Abnormal.vue`
- **API ID**: `CQYGL3F8E_Abnormal`
- **功能**: 展示企业的经营异常记录
- **数据来源**: `abnormal_info` 字段

#### 8. 欠税公告 (OwnTax)
- **文件位置**: `src/ui/CQYGL3F8E/components/OwnTax.vue`
- **API ID**: `CQYGL3F8E_OwnTax`
- **功能**: 展示企业的欠税公告记录
- **数据来源**: `own_tax` 字段

#### 9. 税收违法 (TaxContravention)
- **文件位置**: `src/ui/CQYGL3F8E/components/TaxContravention.vue`
- **API ID**: `CQYGL3F8E_TaxContravention`
- **功能**: 展示企业的税收违法记录
- **数据来源**: `tax_contravention` 字段

## 数据拆分逻辑

### 数据源结构
```javascript
{
  data: {
    apiID: 'QYGL3F8E',
    data: {
      items: [
        {
          orgName: '企业名称',
          relationship: ['sh', 'tm'], // 关系类型
          lawsuitInfo: { ... }, // 涉诉信息
          basicInfo: { ... }, // 基本信息
          stockHolderItem: { ... }, // 持股信息
          staffList: { ... } // 人员列表
        }
      ]
    }
  }
}
```

### 拆分规则

#### 投资企业记录
- **过滤条件**: `relationship` 包含投资类关系
- **关系类型**: `["sh", "his_sh", "lp", "his_lp"]`
- **包含字段**: 完整的企业信息，包括持股详情

#### 高管任职记录
- **过滤条件**: `relationship` 包含高管类关系
- **关系类型**: `["tm", "his_tm"]`
- **包含字段**: 完整的企业信息，重点关注任职信息

#### 涉诉风险
- **过滤条件**: `lawsuitInfo` 包含有效涉诉数据
- **检查字段**: 
  - `lawsuitInfo.entout.data` (非空对象)
  - `lawsuitInfo.sxbzxr.data.sxbzxr` (非空数组)
  - `lawsuitInfo.xgbzxr.data.xgbzxr` (非空数组)
- **包含字段**: 涉诉企业和总数统计

#### 对外投资历史
- **数据来源**: `invest_history.items` 数组
- **包含字段**: 投资企业信息、持股比例、注册资本等

#### 融资历史
- **数据来源**: `financing_history.items` 数组
- **包含字段**: 融资轮次、融资金额、投资者、新闻信息等

#### 行政处罚
- **数据来源**: `punishment_info.items` 数组
- **包含字段**: 处罚类型、处罚金额、处罚原因、处罚部门等

#### 经营异常
- **数据来源**: `abnormal_info.items` 数组
- **包含字段**: 异常原因、列入/移出日期、相关部门等

#### 欠税公告
- **数据来源**: `own_tax.items` 数组
- **包含字段**: 欠税金额、税务类型、欠税税种、纳税人信息、税务机关等

#### 税收违法
- **数据来源**: `tax_contravention.items` 数组
- **包含字段**: 案件性质、违法ID、税务机关、发布时间、纳税人名称等

## 工具函数

### simpleSplitter.js
位置: `src/ui/CQYGL3F8E/utils/simpleSplitter.js`

#### 主要函数
- `splitCQYGL3F8EForTabs(reportData)`: 数据拆分主函数
- `getRelationshipText(relation)`: 获取关系文本描述
- `getRelationshipClass(relation)`: 获取关系样式类
- `getStatusClass(status)`: 获取企业状态样式类
- `formatCapital(capital, currency)`: 格式化资本金额
- `formatDate(dateStr)`: 格式化日期显示

## 集成配置

### BaseReport.vue 配置
```javascript
// 导入拆分函数
import { splitCQYGL3F8EForTabs } from '@/ui/CQYGL3F8E/utils/simpleSplitter.js';

// 数据处理
const processedReportData = computed(() => {
    let data = reportData.value;
    // ... 其他拆分
    data = splitCQYGL3F8EForTabs(data);
    return data;
});

// 功能映射
const featureMap = {
    QYGL3F8E: {
        name: "人企关系加强版",
        component: defineAsyncComponent(() => import("@/ui/CQYGL3F8E/index.vue")),
        remark: '人企关系加强版提供全面的企业关联分析，包括投资企业记录、高管任职记录和涉诉风险等多维度信息。'
    },
    CQYGL3F8E_Investment: {
        name: "投资企业记录",
        component: defineAsyncComponent(() => import("@/ui/CQYGL3F8E/components/Investment.vue")),
    },
    CQYGL3F8E_SeniorExecutive: {
        name: "高管任职记录", 
        component: defineAsyncComponent(() => import("@/ui/CQYGL3F8E/components/SeniorExecutive.vue")),
    },
    CQYGL3F8E_Lawsuit: {
        name: "涉诉风险",
        component: defineAsyncComponent(() => import("@/ui/CQYGL3F8E/components/Lawsuit.vue")),
    }
};
```

## 使用方式

### 完整视图
访问 `QYGL3F8E` 将显示完整的人企关系分析，包含所有九个子模块。

### 独立子模块
- 访问 `CQYGL3F8E_Investment` 仅显示投资企业记录
- 访问 `CQYGL3F8E_SeniorExecutive` 仅显示高管任职记录  
- 访问 `CQYGL3F8E_Lawsuit` 仅显示涉诉风险
- 访问 `CQYGL3F8E_InvestHistory` 仅显示对外投资历史
- 访问 `CQYGL3F8E_FinancingHistory` 仅显示融资历史
- 访问 `CQYGL3F8E_Punishment` 仅显示行政处罚
- 访问 `CQYGL3F8E_Abnormal` 仅显示经营异常
- 访问 `CQYGL3F8E_OwnTax` 仅显示欠税公告
- 访问 `CQYGL3F8E_TaxContravention` 仅显示税收违法

## 特性

### 1. 数据过滤
- 基于关系类型智能过滤企业数据
- 支持多种关系类型的组合展示

### 2. 展开式详情
- 企业卡片支持点击展开查看详细信息
- 包含持股信息、基本信息、联系方式等

### 3. 状态标识
- 企业状态颜色编码（存续、注销、吊销等）
- 关系类型标签展示

### 4. 数据格式化
- 资本金额自动转换为万元单位
- 日期格式化显示
- 持股比例可视化进度条

### 5. 响应式设计
- 支持移动端和桌面端
- 自适应布局和交互

## 注意事项

1. **数据完整性**: 拆分后的数据保持原始结构的完整性
2. **性能优化**: 使用 `defineAsyncComponent` 实现组件懒加载
3. **错误处理**: 对缺失数据进行安全处理，避免渲染错误
4. **样式一致性**: 保持与整体设计系统的视觉一致性

## 更新历史

- **v1.0.0**: 初始版本，支持基本的企业关联信息展示
- **v2.0.0**: 模块拆分重构，支持独立子模块访问
- **v2.1.0**: 优化数据处理逻辑，增强错误处理能力
- **v2.2.0**: 新增欠税公告和税收违法模块，完善企业风险分析功能
