# 供应商管理功能使用指南

## ✅ 功能概述

供应商管理系统提供了完整的供应商信息管理、资质文件管理、采购记录跟踪和关联查询功能，帮助企业全面管理供应商关系和采购业务。

## 📋 核心功能

### 1. **供应商基本信息管理**
- ✅ 供应商名称、类型、编码
- ✅ 联系人、电话、邮箱
- ✅ 地址、备注信息
- ✅ 自动生成供应商编码（SUP-001格式）

### 2. **信用评级体系**
- ✅ **A级（优秀）**: 长期合作、质量可靠、供货及时
- ✅ **B级（良好）**: 合作稳定、质量较好
- ✅ **C级（一般）**: 偶尔合作、质量一般
- ✅ **D级（差）**: 质量问题、供货不稳定

### 3. **资质文件管理**
- ✅ 资质证书名称、编号
- ✅ 签发日期、有效期
- ✅ 证书扫描件上传（支持PDF、JPG、PNG）
- ✅ 多个资质证书管理
- ✅ 资质到期提醒

### 4. **采购记录跟踪**
- ✅ 完整的历史采购记录
- ✅ 采购物品、数量、金额
- ✅ 采购日期、状态
- ✅ 累计采购金额统计
- ✅ 采购次数统计

### 5. **关联查询功能**
- ✅ 查询从某供应商采购的所有物品
- ✅ 采购物品详细信息展示
- ✅ 库存状态、有效期监控
- ✅ 采购统计分析
- ✅ 总库存价值计算

### 6. **统计分析**
- ✅ 累计采购金额
- ✅ 采购次数统计
- ✅ 合作年限记录
- ✅ 供应商等级分布
- ✅ 资质证书数量

## 🚀 使用步骤

### 新增供应商

#### 步骤1：打开新增对话框
1. 导航到：**资产管理 → 资产基础数据 → 供应商管理**
2. 点击右上角"新增供应商"按钮

#### 步骤2：填写基本信息
```
必填项：
• 供应商名称：如"北方农资有限公司"
• 供应商类型：种子供应商/化肥供应商/农药供应商/农机供应商/综合供应商
• 联系人：如"张经理"
• 联系电话：11位手机号，如"13900001111"
• 信用等级：A级/B级/C级/D级

选填项：
• 电子邮箱：contact@supplier.com
• 地址：详细地址信息
• 备注：长期合作伙伴，质量可靠
```

#### 步骤3：添加资质证书
1. 在"资质证书"区域点击"添加证书"按钮
2. 填写证书信息：
   - 证书名称：如"种子经营许可证"
   - 证书编号：如"SEED-2023-0001"
   - 签发日期：选择日期
   - 有效期至：选择日期
   - 证书扫描件：点击上传区域选择文件
3. 点击"添加"按钮
4. 重复以上步骤添加多个证书

#### 步骤4：保存供应商
1. 检查所有信息是否正确
2. 点击"保存"按钮
3. 系统自动生成供应商编码
4. 显示"供应商添加成功"提示

### 编辑供应商

#### 步骤1：打开编辑对话框
1. 在供应商列表中找到要编辑的供应商
2. 点击"编辑"按钮（铅笔图标）

#### 步骤2：修改信息
1. 修改基本信息（所有字段都可修改）
2. 添加或删除资质证书
3. 更新联系方式

#### 步骤3：保存更改
1. 确认修改无误
2. 点击"更新"按钮
3. 系统保留采购历史记录不变

### 查看供应商详情

#### 打开详情页面
1. 在供应商列表中找到供应商
2. 点击"查看详情"按钮（眼睛图标）

#### 详情页面内容
```
基本信息卡片：
• 供应商名称、类型、等级
• 编码、创建时间
• 联系人、电话、邮箱、地址

统计信息卡片：
• 累计采购金额（万元）
• 采购次数（次）
• 合作年限（年）

资质证书列表：
• 证书名称、编号
• 签发日期、有效期
• 扫描件状态

采购历史记录：
• 采购物品名称
• 采购日期、数量
• 采购金额、状态

备注信息：
• 供应商备注说明
```

### 关联查询

#### 步骤1：打开关联查询
1. 在供应商列表中找到供应商
2. 点击"关联查询"按钮（链接图标）

#### 步骤2：查看采购物品
```
供应商信息概览：
• 名称、类型、等级
• 联系人、电话
• 合作年限

采购物品列表：
每个物品显示：
• 物品名称、类型、状态
• 规格、型号、库存
• 单价、有效期、到期日期
• 采购日期

采购统计：
• 采购品种（种数）
• 总库存价值（元）
• 异常状态物品数量
```

#### 步骤3：分析采购情况
1. 查看所有采购物品的库存状态
2. 识别临期或缺货物品
3. 评估供应商的供货质量
4. 计算库存总价值

### 删除供应商

#### 删除前检查
系统会自动检查：
- ✅ 是否有关联的采购记录
- ✅ 如有采购记录，禁止删除
- ✅ 需先清理关联数据

#### 删除步骤
1. 确认该供应商无采购记录
2. 点击"删除"按钮（垃圾桶图标）
3. 确认删除操作
4. 删除成功

## 💡 使用技巧

### 供应商分类管理
```
种子供应商：
• 关注种子经营许可证
• 检查品种审定证书
• 注意保质期管理

化肥供应商：
• 验证化肥经营许可证
• 关注产品质量检测报告
• 注意储存条件

农药供应商：
• 必须有农药经营许可证
• 检查毒性等级
• 严格管理安全间隔期

农机供应商：
• 查看售后服务能力
• 关注配件供应
• 维修保养记录
```

### 信用评级标准
```
A级供应商条件：
• 合作3年以上
• 累计采购50万以上
• 质量零投诉
• 供货及时率>95%
• 资质齐全且有效

B级供应商条件：
• 合作1-3年
• 累计采购20-50万
• 质量投诉<3次
• 供货及时率>85%
• 基本资质齐全

C级供应商条件：
• 合作1年内
• 累计采购<20万
• 质量投诉<5次
• 供货及时率>70%
• 资质基本符合

D级供应商：
• 质量问题频繁
• 供货不稳定
• 服务态度差
• 建议更换
```

### 资质文件管理
```
常见资质类型：
1. 种子经营许可证
2. 化肥经营许可证
3. 农药经营许可证
4. 营业执照
5. 产品质量检测报告
6. ISO质量认证
7. 环保认证
8. 生产许可证

到期提醒：
• 提前3个月查看证书有效期
• 及时要求供应商更新
• 过期证书标记警告
• 暂停合作直到更新
```

### 采购数据分析
```
定期分析（建议每月）：
1. 采购金额排名
   - 识别主要供应商
   - 优化采购结构
   
2. 采购频次分析
   - 评估供货稳定性
   - 调整采购计划
   
3. 质量问题统计
   - 库存异常率
   - 退货退款记录
   
4. 价格对比
   - 同类产品不同供应商
   - 议价空间评估
```

## 📊 数据示例

### 示例供应商1：北方农资有限公司
```yaml
基本信息:
  名称: 北方农资有限公司
  编码: SUP-001
  类型: 种子供应商
  等级: A级
  联系人: 刘经理
  电话: 13900001111
  邮箱: liu@northern-agri.com
  地址: 黑龙江省哈尔滨市

资质证书:
  - 种子经营许可证 (SEED-2023-0001)
    签发: 2023-01-01
    有效期: 2026-01-01
    状态: 有效

统计数据:
  累计采购: ¥52.0万
  采购次数: 2次
  合作年限: 3年

采购记录:
  1. 优质水稻种子
     日期: 2024-01-15
     数量: 200袋
     金额: ¥56,000
     状态: 已完成
     
  2. 玉米种子
     日期: 2024-02-20
     数量: 150袋
     金额: ¥45,000
     状态: 已完成
```

### 示例供应商2：中化化肥
```yaml
基本信息:
  名称: 中化化肥
  编码: SUP-002
  类型: 化肥供应商
  等级: A级
  联系人: 王总
  电话: 13900002222
  邮箱: wang@sinochem.com
  地址: 北京市朝阳区

资质证书:
  - 化肥经营许可证 (FERT-2023-0002)
    签发: 2023-01-01
    有效期: 2026-01-01
    状态: 有效

统计数据:
  累计采购: ¥38.0万
  采购次数: 1次
  合作年限: 5年

采购记录:
  1. 复合肥
     日期: 2024-02-01
     数量: 500袋
     金额: ¥90,000
     状态: 已完成
```

## ⚠️ 注意事项

### 数据完整性
1. **必填项检查**
   - 供应商名称不能为空
   - 必须选择供应商类型
   - 必须填写联系人和电话
   - 必须选择信用等级

2. **数据格式验证**
   - 手机号必须是11位数字
   - 邮箱必须符合格式规范
   - 日期格式必须正确

### 关联数据保护
1. **删除限制**
   - 有采购记录的供应商不能删除
   - 需先清理关联的采购数据
   - 或者使用"停用"代替删除

2. **数据一致性**
   - 编辑供应商时保留采购历史
   - 供应商编码不可修改
   - 采购金额自动累计

### 资质文件管理
1. **文件上传**
   - 支持PDF、JPG、PNG格式
   - 建议文件大小不超过5MB
   - 文件名建议包含证书名称

2. **有效期监控**
   - 定期检查证书有效期
   - 提前通知供应商续期
   - 过期证书及时更新

### 最佳实践
1. **定期维护**
   - 每月更新供应商信息
   - 季度评估信用等级
   - 年度审核资质证书

2. **数据备份**
   - 重要供应商信息备份
   - 采购记录定期导出
   - 资质文件云端存储

3. **权限管理**
   - 限制删除供应商权限
   - 重要操作需要审批
   - 记录操作日志

## 🔧 技术实现

### 数据结构
```typescript
interface Supplier {
  id: string;                    // 供应商ID
  code: string;                  // 供应商编码
  name: string;                  // 供应商名称
  type: string;                  // 供应商类型
  contactPerson: string;         // 联系人
  phone: string;                 // 电话
  email: string;                 // 邮箱
  address: string;               // 地址
  level: SupplierLevel;          // 信用等级
  certifications: Certification[]; // 资质证书
  purchaseHistory: PurchaseRecord[]; // 采购记录
  totalPurchaseAmount: number;   // 累计采购金额
  cooperationYears: number;      // 合作年限
  notes?: string;                // 备注
  createdAt: string;             // 创建时间
}

interface Certification {
  id: string;                    // 证书ID
  name: string;                  // 证书名称
  certificateNo: string;         // 证书编号
  issueDate: string;             // 签发日期
  expiryDate: string;            // 有效期至
  file?: string;                 // 文件路径
}

interface PurchaseRecord {
  id: string;                    // 采购记录ID
  date: string;                  // 采购日期
  materialName: string;          // 物品名称
  quantity: number;              // 数量
  amount: number;                // 金额
  status: string;                // 状态
}
```

### 关键功能
```typescript
// 关联查询实现
const getRelatedItemsBySupplier = (supplierId: string) => {
  return materials.filter(m => m.supplierId === supplierId);
};

// 删除前检查
const handleDeleteSupplier = (id: string) => {
  const relatedMaterials = materials.filter(m => m.supplierId === id);
  if (relatedMaterials.length > 0) {
    toast.error(`该供应商已有 ${relatedMaterials.length} 条采购记录，无法删除`);
    return;
  }
  // 执行删除
};

// 自动生成编码
const generateSupplierCode = () => {
  const count = suppliers.length + 1;
  return `SUP-${count.toString().padStart(3, '0')}`;
};
```

## 📝 快速测试

### 测试场景1：新增供应商并添加资质
1. 点击"新增供应商"
2. 填写：名称"测试农资公司"，类型"综合供应商"
3. 填写：联系人"李经理"，电话"13800138000"
4. 选择等级"B级"
5. 点击"添加证书"
6. 填写证书信息并上传文件
7. 点击"保存"
8. 验证供应商列表中显示新增的供应商

### 测试场景2：关联查询
1. 选择"北方农资有限公司"
2. 点击"关联查询"
3. 查看采购物品列表
4. 验证显示"优质水稻种子"和"玉米杂交种子"
5. 检查采购统计数据是否正确

### 测试场景3：编辑供应商
1. 选择任意供应商点击"编辑"
2. 修改联系人信息
3. 添加新的资质证书
4. 点击"更新"
5. 查看详情验证修改成功

### 测试场景4：删除保护
1. 尝试删除"北方农资有限公司"
2. 验证系统提示"该供应商已有2条采购记录，无法删除"
3. 删除保护生效

## ✨ 总结

供应商管理系统提供了全方位的供应商信息管理能力：
- ✅ 完整的基本信息管理
- ✅ 灵活的信用评级体系
- ✅ 便捷的资质文件上传
- ✅ 详细的采购记录追踪
- ✅ 强大的关联查询功能
- ✅ 完善的数据保护机制

通过这些功能，企业可以：
1. 规范化管理供应商信息
2. 科学评估供应商质量
3. 追踪采购历史记录
4. 优化供应商结构
5. 降低采购风险
6. 提高采购效率

系统已完全按照需求开发完成，支持供应商全生命周期管理！
