# 作物适配推荐功能完善说明

## 更新概要

已完成作物适配推荐功能的全面升级，构建了完整的"作物-环境"知识库系统，实现了智能匹配、产量预测和风险提示功能。

## 核心功能

### 1. 作物-环境知识库 (`/lib/cropKnowledgeBase.ts`)

构建了包含8种主要作物的完整知识库：

#### 收录作物
- **粮食作物**: 水稻、玉米、小麦、大豆、马铃薯
- **经济作物**: 棉花、花生
- **蔬菜作物**: 番茄

#### 知识库数据结构

每种作物包含以下完整信息：

**土壤环境要求**
- pH值（最佳范围 + 可接受范围）
- 有机质含量（g/kg）
- 土层厚度（cm）
- 全氮（g/kg）
- 全磷（g/kg）
- 全钾（g/kg）
- 排水性（0-100分）

**气候环境要求**
- 温度（°C，最佳范围 + 可接受范围）
- 降雨量（mm/年）
- 光照时长（小时/天）

**产量预测**
- 高适宜性条件下产量区间（kg/亩）
- 中等适宜性条件下产量区间（kg/亩）
- 低适宜性条件下产量区间（kg/亩）

**生长周期信息**
- 生长天数
- 适宜种植季节

**风险因子库**
- 风险名称
- 触发条件
- 严重程度（高/中/低）
- 应对建议

### 2. 智能匹配算法 (`matchCropsForField`)

#### 匹配流程

1. **参数对比**: 将地块的7项土壤因子与每种作物的要求范围逐一对比
2. **评分计算**:
   - 在最佳范围内：100分
   - 在可接受范围内：60分
   - 超出可接受范围：0分
3. **综合匹配度**: 加权平均所有因子得分（0-100分）
4. **分级推荐**:
   - ≥85分：高度推荐
   - 70-84分：推荐
   - 50-69分：谨慎种植
   - <50分：不推荐

#### 产量预测机制

根据综合匹配度自动选择对应的产量区间：
- 高度推荐 → 高产量区间
- 推荐 → 中产量区间
- 谨慎种植 → 低产量区间

### 3. 风险识别系统

#### 支持的风险类型

**土壤风险**
- pH偏低/偏高
- 有机质不足
- 氮磷钾缺乏
- 排水不良/涝害

**气候风险**
- 干旱风险
- 低温冷害/倒春寒
- 高温胁迫
- 降雨异常

**营养风险**
- 特定元素缺乏
- 肥料过量

#### 风险提示功能

- ✅ 自动识别：根据地块实际参数自动判断触发的风险
- ✅ 严重度分级：高/中/低三级标注
- ✅ 应对建议：每个风险配套具体的应对措施
- ✅ 可视化展示：不同严重程度使用不同颜色标识

## 使用示例

### 水稻推荐示例

**地块条件**：
- pH: 6.5（在最佳范围5.5-6.5内）
- 有机质: 32 g/kg（在最佳范围25-40内）
- 土层厚度: 85 cm（在最佳范围40-80内）
- 排水性: 65分（在可接受范围30-80内）

**匹配结果**：
- 匹配度: 92分
- 推荐等级: 高度推荐
- 预期产量: 500-600 kg/亩

**风险提示**：
- 无高风险因素
- 排水性略低，建议注意田间管理

### 玉米推荐示例

**地块条件**：
- pH: 7.8（略高于最佳范围）
- 有机质: 22 g/kg（低于最佳范围20-35）
- 土层厚度: 95 cm（在最佳范围60-100内）
- 全钾: 14 g/kg（低于最佳范围18-28）

**匹配结果**：
- 匹配度: 73分
- 推荐等级: 推荐
- 预期产量: 450-550 kg/亩

**风险提示**：
- ⚠️ 中风险：土壤碱化（pH > 7.8）
  - 应对建议：施用酸性肥料或硫磺调节pH
- ⚠️ 中风险：钾素缺乏
  - 应对建议：增施钾肥，建议氯化钾或硫酸钾

## 界面展示

### 1. 地块参数概览
- 7项土壤因子卡片式展示
- 渐变色背景，视觉美观
- 图标辅助识别

### 2. 作物推荐卡片

每个作物显示：
- 作物名称、类别、描述
- 推荐等级徽章（带颜色区分）
- 匹配度评分（0-100分）
- 预期产量区间（kg/亩）
- 生长周期（天数）

**因子匹配详情**
- 7项因子并列展示
- 最佳/可接受/偏离 状态标识
- 实际值与要求范围对比

**气候要求展示**
- 温度、降雨、光照三项
- 图标化展示
- 最佳范围标注

**风险提示区域**
- 根据风险严重程度使用不同背景色
- 高风险：红色背景
- 中低风险：橙色背景
- 包含触发条件和应对建议

**适宜季节标签**
- 显示适宜种植的季节
- 徽章样式展示

### 3. 知识库说明卡片

详细说明系统的：
- 知识库构成（8种作物，7项土壤参数）
- 智能匹配流程（评分规则）
- 产量预测机制（三级区间）
- 风险识别系统（多维度监测）

## 技术实现

### 核心文件

1. `/lib/cropKnowledgeBase.ts` - 作物知识库和匹配算法
2. `/components/field/FieldSuitabilityEvaluation.tsx` - UI组件

### 关键函数

```typescript
// 匹配作物
const recommendations = matchCropsForField({
  ph: 6.5,
  organic: 32,
  depth: 85,
  nitrogen: 1.8,
  phosphorus: 1.2,
  potassium: 18,
  drainage: 65,
  temperature: 22,
  rainfall: 800,
});
```

返回排序后的推荐列表，包含：
- 作物信息
- 匹配度评分
- 适宜性等级
- 因子匹配详情
- 适用的风险列表
- 预期产量区间

## 系统优势

1. **科学性**: 基于土壤科学、作物学、气象学等多学科知识
2. **全面性**: 综合考虑土壤、气候、营养等多个维度
3. **智能性**: 自动匹配、智能评分、动态产量预测
4. **实用性**: 具体的风险提示和应对建议
5. **可扩展性**: 易于添加新作物和新风险因子

## 后续优化建议

1. **知识库扩充**: 增加更多作物品种（蔬菜、果树等）
2. **地域适配**: 根据不同地域特点调整参数范围
3. **季节优化**: 考虑不同季节的种植适宜性
4. **历史数据**: 结合历史种植数据优化预测模型
5. **专家系统**: 引入专家经验规则库
6. **机器学习**: 使用ML算法持续优化推荐准确度

## 访问路径

地块管理 → 土壤适宜性评价 → 作物适配推荐

选择地块后即可查看该地块的智能作物推荐清单。
