# 企业管理功能更新说明

## 📋 更新概述

本次更新优化了中心配置管理系统-租户管理-企业管理的功能，增加了审核状态显示、去掉编辑功能、新增企业详情查看功能。

## 🎯 更新内容

### 1. 企业列表显示审核状态

#### ✅ 新增审核状态列
企业列表现在显示每个企业的审核状态，帮助管理员快速了解企业的审核进度。

#### 审核状态类型
| 状态 | 显示 | 说明 | 颜色标识 |
|------|------|------|---------|
| not_submitted | 未提交 | 企业尚未提交审核资料 | 灰色 |
| pending | 待审核 | 企业已提交，等待管理员审核 | 黄色 |
| approved | 审核通过 | 企业审核通过，可正常使用 | 绿色 |
| rejected | 已驳回 | 企业审核被驳回，需重新提交 | 红色 |

#### 列表字段顺序
```
企业编码 > 企业名称 > 企业类型 > 联系人 > 联系电话 > 创建时间 > 审核状态 > 状态 > 操作
```

### 2. 移除编辑按钮

#### ✅ 去掉编辑功能
- **变更说明**：移除了企业列表中的"编辑"按钮
- **设计理念**：
  - 管理员只负责创建企业基础信息
  - 详细信息由企业自主管理
  - 避免管理员过度干预企业数据

#### 操作按钮变化
| 之前 | 现在 |
|------|------|
| 查看 + 编辑 + 启用/禁用 | 查看 + 启用/禁用 |

### 3. 新增查看按钮和详情弹窗

#### ✅ 企业详情查看功能
企业列表新增"查看"按钮，点击后弹出企业详情对话框，显示完整的企业信息。

#### 详情弹窗结构

查看弹窗采用与企业审核相同的字段和布局，分为4个Tab页：

##### Tab 1: 基本信息
```
- 企业名称
- 企业编码
- 企业类型
- 所在地区 (省市区)
- 详细地址
- 登记人
- 联系电话
```

##### Tab 2: 其他信息
```
- 公司规模
- 注册资本
- 成立时间
- 发票类型
- 社会信用代码
- 经营范围
- 营业执照 (图片)
```

##### Tab 3: 开户信息
```
- 银行账号
- 开户行
- 开户行全称
- 开户行地址
- 开户许可证 (图片)
```

##### Tab 4: 法人信息
```
- 法人姓名
- 联系人
- 身份证正面 (图片)
- 身份证反面 (图片)
```

#### 弹窗顶部显示
- 标题：企业详情
- 右上角：审核状态徽章 + 启用/禁用状态徽章

## 🎨 界面优化

### 列表表头
```
| 企业编码 | 企业名称 | 企业类型 | 联系人 | 联系电话 | 创建时间 | 审核状态 | 状态 | 操作 |
```

### 状态徽章设计

#### 审核状态
- **未提交**: 灰色背景 + 灰色文字
- **待审核**: 黄色背景 + 黄色深色文字
- **审核通过**: 绿色背景 + 绿色深色文字
- **已驳回**: 红色背景 + 红色深色文字

#### 启用状态
- **启用**: 绿色背景 + 绿色文字
- **禁用**: 灰色背景 + 灰色文字

### 操作按钮
```
[查看] [启用/禁用]
```

## 📝 数据结构更新

### Enterprise 接口扩展

在 `/types/auth.ts` 中添加了以下字段：

```typescript
export interface Enterprise {
  // ... 原有字段
  auditStatus?: 'not_submitted' | 'pending' | 'approved' | 'rejected';
  
  // 企业详细信息字段（用于审核查看）
  province?: string;
  city?: string;
  district?: string;
  companySize?: string;
  registeredCapital?: string;
  establishmentDate?: string;
  invoiceType?: string;
  socialCreditCode?: string;
  businessScope?: string;
  businessLicense?: string;
  bankAccount?: string;
  bankName?: string;
  bankFullName?: string;
  bankAddress?: string;
  bankLicense?: string;
  legalPerson?: string;
  registrant?: string;
  contactPhone?: string;
  idCardFront?: string;
  idCardBack?: string;
  updatedAt?: string;
  auditTime?: string;
  auditor?: string;
  auditReason?: string;
}
```

### 示例数据更新

在 `/lib/authStorage.ts` 中为所有企业添加了审核状态：

```typescript
{
  id: 'ent-1',
  name: '绿野农业科技有限公司',
  auditStatus: 'approved',  // 审核通过
  // ...
},
{
  id: 'ent-3',
  name: '智慧农业示范基地',
  auditStatus: 'pending',   // 待审核
  // ...
},
{
  id: 'ent-4',
  name: '现代农业合作社',
  auditStatus: 'not_submitted',  // 未提交
  // ...
},
{
  id: 'ent-5',
  name: '优质粮食生产基地',
  auditStatus: 'rejected',  // 已驳回
  // ...
}
```

## 🔄 功能对比

### 企业创建
| 功能 | 之前 | 现在 |
|------|------|------|
| 创建时状态 | 仅设置启用状态 | 设置启用状态 + 审核状态(未提交) |
| 默认值 | status: 'active' | status: 'active', auditStatus: 'not_submitted' |

### 企业查看
| 功能 | 之前 | 现在 |
|------|------|------|
| 查看方式 | 编辑弹窗查看 | 专门的查看弹窗 |
| 字段显示 | 基础字段 | 完整审核字段（4个Tab） |
| 字段布局 | 简单表单 | 与企业审核一致的布局 |

### 企业编辑
| 功能 | 之前 | 现在 |
|------|------|------|
| 编辑权限 | 管理员可编辑 | 管理员不可编辑 |
| 编辑按钮 | 有 | 无 |
| 数据维护 | 管理员维护 | 企业自主维护 |

## 🚀 使用说明

### 查看企业详情

```
1. 进入：中心配置管理系统 > 租户管理 > 企业管理
2. 在企业列表中找到目标企业
3. 点击"查看"按钮
4. 在弹出的详情对话框中查看企业信息
   - 基本信息：企业基础资料
   - 其他信息：注册资本、经营范围等
   - 开户信息：银行账户信息
   - 法人信息：法人身份信息
5. 点击"关闭"退出查看
```

### 识别审核状态

```
在企业列表中，审核状态列显示：
- 灰色徽章：未提交 - 企业刚创建，未提交审核
- 黄色徽章：待审核 - 企业已提交，等待审核
- 绿色徽章：审核通过 - 企业已通过审核
- 红色徽章：已驳回 - 企业审核被驳回
```

### 创建新企业

```
1. 点击"新建企业"
2. 填写基本信息：
   - 企业名称 (必填)
   - 企业编码 (必填，创建后不可修改)
   - 企业类型 (可选)
3. 点击"创建企业"
4. 系统创建企业，状态为：
   - 启用状态：启用
   - 审核状态：未提交
```

## 📊 示例场景

### 场景1：查看审核通过的企业

```
企业：绿野农业科技有限公司
编码：LYNY001
审核状态：审核通过 (绿色)
状态：启用 (绿色)

操作：
1. 点击"查看"按钮
2. 在详情弹窗中查看完整信息
3. 可以看到该企业已填写完整信息
```

### 场景2：查看待审核的企业

```
企业：智慧农业示范基地
编码：ZHNY003
审核状态：待审核 (黄色)
状态：启用 (绿色)

操作：
1. 点击"查看"按钮
2. 查看企业提交的审核资料
3. 需要到"企业审核"功能中进行审核操作
```

### 场景3：查看未提交的企业

```
企业：现代农业合作社
编码：XDNY004
审核状态：未提交 (灰色)
状态：启用 (绿色)

说明：
- 企业已创建但未提交审核资料
- 详细信息可能为空或不完整
- 企业登录后可自行完善并提交审核
```

### 场景4：查看已驳回的企业

```
企业：优质粮食生产基地
编码：YZLS005
审核状态：已驳回 (红色)
状态：启用 (绿色)

操作：
1. 点击"查看"按钮
2. 查看企业信息和驳回原因
3. 通知企业修改后重新提交
```

## 💡 设计理念

### 1. 权限分离
- **管理员职责**：创建企业基础账号
- **企业职责**：完善详细信息并提交审核
- **审核流程**：企业审核模块负责审核操作

### 2. 数据一致性
- 查看弹窗字段与企业审核详情完全一致
- 方便管理员在不同模块间切换查看
- 避免信息不对称

### 3. 状态可视化
- 审核状态和启用状态分开显示
- 使用颜色区分不同状态
- 一目了然的状态管理

### 4. 只读查看
- 管理员只能查看，不能修改企业详细信息
- 避免数据混乱和权责不清
- 企业数据由企业自主管理

## ⚠️ 注意事项

### 1. 审核状态说明
- **未提交**：企业创建后的默认状态，表示企业尚未提交审核资料
- **待审核**：企业在"企业信息"模块提交审核后的状态
- **审核通过**：在"企业审核"模块审核通过后的状态
- **已驳回**：在"企业审核"模块审核驳回后的状态

### 2. 与企业审核的关系
- **企业管理**：创建企业、查看详情、管理状态
- **企业审核**：审核企业提交的资料、通过/驳回
- **企业信息**：企业自主完善资料、提交审核

### 3. 查看权限
- 所有企业都可以查看详情
- 无论审核状态如何，都能查看
- 帮助管理员了解企业信息完整度

### 4. 数据完整性
- 新创建的企业详细信息为空是正常的
- 企业需登录后在"企业信息"模块完善
- 只有完善后的信息才能提交审核

## 🔧 技术实现

### 文件修改
1. `/types/auth.ts` - 扩展Enterprise接口
2. `/lib/authStorage.ts` - 添加审核状态示例数据
3. `/components/config/EnterpriseManagement.tsx` - 重写组件逻辑

### 主要变更
```typescript
// 添加审核状态字段
auditStatus?: 'not_submitted' | 'pending' | 'approved' | 'rejected';

// 移除编辑功能
- handleEdit() 函数
- showEditDialog 状态
- Edit 按钮

// 新增查看功能
+ handleView() 函数
+ showViewDialog 状态
+ 详情弹窗组件（4个Tab）
```

### 状态管理
```typescript
const [showViewDialog, setShowViewDialog] = useState(false);
const [selectedEnterprise, setSelectedEnterprise] = useState<Enterprise | null>(null);
```

## 🎓 最佳实践

### 1. 企业生命周期

```
创建企业 → 企业自主完善 → 提交审核 → 审核通过 → 正常使用
   ↓           ↓              ↓           ↓          ↓
未提交    未提交/完善中     待审核      审核通过    已激活
```

### 2. 管理员操作流程

```
1. 创建企业（填写基本信息）
2. 通知企业登录完善资料
3. 企业提交审核后，到"企业审核"模块审核
4. 审核通过后，企业可正常使用
5. 必要时禁用/启用企业
```

### 3. 查看时机

```
- 企业创建后：检查基础信息是否正确
- 企业提交审核前：查看资料完整度
- 审核通过后：查看企业完整信息
- 日常管理：随时查看企业状态
```

## 📞 相关模块

### 企业审核
- 路径：中心配置管理系统 > 租户管理 > 企业审核
- 功能：审核企业提交的资料、通过/驳回
- 关系：审核操作会改变企业的审核状态

### 企业信息
- 路径：中心配置管理系统 > 租户管理 > 企业信息
- 功能：企业自主完善详细资料、提交审核
- 关系：企业完善的信息可在企业管理中查看

### 审核历史
- 路径：中心配置管理系统 > 租户管理 > 审核历史
- 功能：查看所有审核记录
- 关系：记录企业审核的完整历史

## 🚀 快速测试

### 测试查看功能

```
1. 进入企业管理页面
2. 找到"绿野农业科技有限公司"（审核通过）
3. 点击"查看"按钮
4. 检查弹窗显示：
   ✓ 标题：企业详情
   ✓ 右上角：审核通过 + 启用 两个徽章
   ✓ 4个Tab页：基本信息、其他信息、开户信息、法人信息
   ✓ 所有字段以只读方式显示
5. 切换不同Tab页查看
6. 点击"关闭"退出
```

### 测试审核状态显示

```
1. 查看企业列表的"审核状态"列
2. 检查不同企业的状态：
   ✓ 绿野农业科技有限公司：审核通过（绿色）
   ✓ 丰收农场管理集团：审核通过（绿色）
   ✓ 智慧农业示范基地：待审核（黄色）
   ✓ 现代农业合作社：未提交（灰色）
   ✓ 优质粮食生产基地：已驳回（红色）
```

### 测试创建企业

```
1. 点击"新建企业"
2. 填写信息：
   - 企业名称：测试企业A
   - 企业编码：TESTA01
   - 企业类型：测试类型
3. 点击"创建企业"
4. 检查新企业：
   ✓ 审核状态：未提交（灰色）
   ✓ 状态：启用（绿色）
   ✓ 详细信息为空
```

### 测试无编辑按钮

```
1. 查看企业列表的操作列
2. 确认只有两个按钮：
   ✓ 查看
   ✓ 启用/禁用
3. 确认没有"编辑"按钮
```

## 📚 补充说明

### 字段显示规则
- 未填写的字段显示为 "-"
- 图片字段未上传时显示 "未上传"
- 地区字段会拼接省市区
- 代码类字段（如社会信用代码）使用等宽字体

### 弹窗交互
- 弹窗最大高度为视口的90%
- 内容区域可滚动
- 支持键盘ESC关闭
- 点击遮罩层可关闭

### 数据来源
- 企业列表从 `getAllEnterprises()` 获取
- 企业详情使用选中的企业对象
- 审核状态从企业对象的 `auditStatus` 字段读取

---

更新时间：2024-10-23  
版本：V2.0  
模块：中心配置管理系统 - 租户管理 - 企业管理
