# 权重配置弹窗更新说明

## 更新内容

已将多因子综合评价页面的评价因子权重配置功能移至上方的"权重配置"弹窗中，提供更完整和便捷的权重调整体验。

## 新增功能

### 1. 权重配置弹窗

点击页面右上角的"权重配置"按钮即可打开弹窗，包含以下功能：

#### 快速方案选择
- **粮食作物方案**
  - 侧重有机质(30%)和土层厚度(25%)
  - pH值占20%
  - 氮磷钾各占8%
  - 排水性占1%
  
- **经济作物方案**
  - 侧重有机质(35%)和pH值(25%)
  - 土层厚度占15%
  - 氮磷钾各占7%
  - 排水性占4%

#### 自定义权重调整

**调整方式**
- 滑块拖动：实时调整权重值(0-100%)
- 数值输入：精确输入权重值
- 两种方式同步联动

**7项评价因子**
1. pH值
2. 有机质含量 (g/kg)
3. 土层厚度 (cm)
4. 全氮 (g/kg)
5. 全磷 (g/kg)
6. 全钾 (g/kg)
7. 排水性

**实时验证**
- 显示当前权重总和
- 总和=100%时显示绿色徽章
- 总和≠100%时显示红色徽章并提示
- 只有总和为100%时才能应用配置

#### 操作按钮

- **恢复默认**：一键恢复到系统默认权重配置
- **取消**：放弃修改，关闭弹窗
- **应用配置**：保存权重设置并关闭弹窗
  - 权重总和不为100%时按钮禁用
  - 应用成功后显示提示消息

## 界面特点

### 用户体验优化

1. **弹窗设计**
   - 最大宽度3xl，支持内容滚动
   - 清晰的标题和描述说明
   - 分区明确，结构清晰

2. **快速方案卡片**
   - 大尺寸卡片(h-20)，易于点击
   - 图标+文字+描述，信息完整
   - 悬停效果，交互友好

3. **权重调整区**
   - 滑块+输入框双重控制
   - 实时显示总和状态
   - 视觉反馈明确

4. **智能验证**
   - 权重范围限制(0-100)
   - 总和自动计算
   - 错误状态提示

## 使用流程

### 方式一：使用快速方案

1. 点击"权重配置"按钮
2. 选择"粮食作物方案"或"经济作物方案"
3. 系统自动应用对应权重
4. 显示成功提示

### 方式二：自定义调整

1. 点击"权重配置"按钮
2. 使用滑块或输入框调整各因子权重
3. 确保权重总和为100%
4. 点击"应用配置"保存设置

### 恢复默认

1. 点击"权重配置"按钮
2. 点击"恢复默认"按钮
3. 系统恢复到默认权重配置：
   - pH值: 20%
   - 有机质: 25%
   - 土层厚度: 20%
   - 全氮: 10%
   - 全磷: 10%
   - 全钾: 10%
   - 排水性: 5%

## 技术实现

### 状态管理

```typescript
// 权重配置状态
const [factorWeights, setFactorWeights] = useState([...]);
const [showWeightConfig, setShowWeightConfig] = useState(false);

// 计算权重总和
const totalWeight = factorWeights.reduce((sum, f) => sum + f.weight, 0);
```

### 权重更新

```typescript
const handleUpdateWeight = (id: string, newWeight: number) => {
  setFactorWeights(prev =>
    prev.map(f => f.id === id ? { ...f, weight: newWeight } : f)
  );
};
```

### 权重重置

```typescript
const handleResetWeights = () => {
  setFactorWeights([
    { id: 'ph', name: 'pH值', weight: 20, unit: '' },
    // ... 其他因子
  ]);
  toast.success('权重已恢复默认值');
};
```

## 权重方案对比

| 因子 | 默认方案 | 粮食作物 | 经济作物 |
|------|----------|----------|----------|
| pH值 | 20% | 20% | 25% |
| 有机质 | 25% | 30% | 35% |
| 土层厚度 | 20% | 25% | 15% |
| 全氮 | 10% | 8% | 7% |
| 全磷 | 10% | 8% | 7% |
| 全钾 | 10% | 8% | 7% |
| 排水性 | 5% | 1% | 4% |
| **总计** | **100%** | **100%** | **100%** |

## 注意事项

1. **权重总和验证**
   - 必须确保所有因子权重总和为100%
   - 不满足条件时无法应用配置
   - 显示橙色警告提示

2. **权重范围限制**
   - 单个因子权重范围：0-100%
   - 输入超出范围会自动限制

3. **配置持久化**
   - 权重配置在会话期间保持
   - 应用配置后立即生效
   - 影响所有评价计算

4. **快速方案**
   - 点击快速方案会立即应用
   - 但不会自动关闭弹窗
   - 可继续微调或直接关闭

## 业务价值

1. **灵活性**：支持不同作物类型的评价需求
2. **专业性**：基于农业专业知识的预设方案
3. **易用性**：滑块+输入框双重控制方式
4. **安全性**：权重验证确保计算准确性
5. **直观性**：实时反馈，所见即所得

## 后续优化建议

1. **方案管理**
   - 支持保存自定义方案
   - 方案命名和管理
   - 导入导出功能

2. **更多预设**
   - 增加蔬菜作物方案
   - 果树作物方案
   - 特殊作物方案

3. **智能推荐**
   - 根据地块特征推荐权重方案
   - AI辅助权重优化

4. **历史记录**
   - 记录权重调整历史
   - 支持回退到历史配置

## 访问路径

地块管理 → 土壤适宜性评价 → 多因子综合评价 → 权重配置按钮
