# 农事执行—操作录入功能更新 ## 更新时间 2025-10-20 ## 更新内容 ### 1. 操作参数自动带出 - 选择农事类型后,系统自动加载该类型对应的操作参数模板 - 根据参数类型(文本、数字、选择、日期)动态渲染不同的表单控件 - 显示参数是否必填、单位、选项等信息 - 显示参数描述,帮助用户正确填写 ### 2. 移除智能录入工具模块 - 去掉了"智能录入工具"卡片,包括: - 扫描农资条码功能 - 获取GPS定位功能 - 拍摄现场照片按钮(已移至独立模块) - 简化了对话框界面,使其更加清晰 ### 3. 新增现场图片上传功能 - 新增独立的"现场图片"卡片 - 支持点击上传或拖拽上传图片 - 支持多图上传(最多10张) - 提供图片预览功能 - 可以删除已上传的图片 - 显示图片序号便于管理 ## 技术实现 ### 新增状态变量 ```typescript const [selectedOperationType, setSelectedOperationType] = useState(null); const [uploadedPhotos, setUploadedPhotos] = useState([]); ``` ### 新增处理函数 - `handleOperationTypeChange`: 处理农事类型选择,自动加载参数模板 - `handlePhotoUpload`: 处理图片上传 - `handlePhotoRemove`: 删除已上传的图片 ### 动态参数渲染 根据选择的农事类型,系统会: 1. 读取该类型的参数配置(parameters数组) 2. 遍历每个参数 3. 根据参数类型(text/number/select/date)渲染对应的表单控件 4. 显示必填标记(*) 5. 显示单位(如:kg、cm、亩等) 6. 显示参数描述 ## 使用说明 ### 新增操作记录流程 1. 点击"新增记录"按钮 2. 选择农事类型(如:播种、施肥、灌溉等) 3. 系统自动显示该类型对应的操作参数表单 4. 填写基本信息(地块、执行人、日期等) 5. 填写自动生成的操作参数 6. 上传现场图片(可选) 7. 填写备注(可选) 8. 点击"保存记录" ### 图片上传 - 点击上传区域选择文件 - 或直接拖拽图片到上传区域 - 支持JPG、PNG格式 - 可上传多张图片 - 鼠标悬停在图片上可看到删除按钮 - 点击删除按钮可移除图片 ## 参数模板示例 ### 播种类型参数 - 作物品种(文本,必填) - 种子品牌(文本,必填) - 播种量(数字,必填,单位:kg) - 播种方式(选择,必填,选项:条播/穴播/撒播/点播) - 行距(数字,选填,单位:cm) - 株距(数字,选填,单位:cm) - 播种深度(数字,必填,单位:cm) ### 施肥类型参数 - 肥料类型(选择,必填) - 肥料品牌(文本,必填) - 施肥量(数字,必填,单位:kg/亩) - 总用量(数字,必填,单位:kg) - 施肥方法(选择,必填) - 施肥位置(文本,选填) ### 灌溉类型参数 - 灌溉方式(选择,必填) - 灌溉时长(数字,必填,单位:小时) - 水量(数字,必填,单位:m³) - 水源(选择,必填) ## 优势 1. **自动化程度高**:选择类型后自动加载参数,无需手动配置 2. **数据规范性强**:使用预定义的参数模板,确保数据完整性 3. **操作更简便**:界面简洁,操作流程清晰 4. **图片管理方便**:独立的图片上传模块,支持预览和删除 5. **灵活性好**:可以通过农事类型库自定义参数模板 ## 文件位置 `/components/operation/OperationExecution.tsx`