农牧户数据填报 — 功能需求
1. 文档说明
| 项 |
说明 |
| 模块名称 |
农牧户数据填报 |
| 目标 |
按村 × 所属年月登记农牧户基本情况;导入 upsert;导出按模板填充 |
| 关联系统 |
业务后台;sys_dept(乡镇、村) |
| 修订依据 |
交接表 农牧户数据填报.xlsx;运行模板 farmer_household_import_template.xlsx |
2. 填报粒度
- 一条记录:某一自然年、某一自然月、某一行政村农牧户基本情况快照。
- 保存时由所选村反推所属乡镇。
- 唯一键:所属年份 + 所属月份 + 所属村。
- 导入:存在则更新、不存在则插入(非增幅累加,也不按年月先删后插)。
- 派生(保存时计算):
- 草场承包总面积 = 禁牧面积 + 草畜平衡面积
- 补助奖励总资金 = 禁牧补助 + 草畜平衡奖励
- 补助合计金额 = 补助奖励总资金 + 封顶保底后享受补助奖励总资金 + 村级草原监督员补助
- 封顶保底六项(是否是纯牧户等)按模板填写「是 / 否」。
- 草畜失衡预警(交接表注 7;不依赖「草畜平衡计算」模块):
- 导入 / 新增 / 修改保存后:若该年该月该村 核定年末草畜平衡载畜量 < 年底牲畜存栏(绵羊单位) → 写入/更新
biz_grass_livestock_imbalance_warning(data_source=farmer_household,source_key=FH-{id})
- 后续修改后 核定载畜量 ≥ 年底存栏(或字段不全无法判定)→ 对应预警记录删除
- 删除填报记录时同步清除预警
3. 功能范围
| 能力 |
说明 |
| 分页列表 |
筛选:年、月、乡镇;列:年、月、乡镇、村、户数、人数、草场承包总面积 |
| 新增 / 修改 |
选村(级联);新增默认本年本月;不展示派生小计(保存后详情可见) |
| 详情 |
全部字段含派生 |
| 删除 |
物理删除(级联清预警) |
| Excel 导入 |
多级表头;另选年月;按唯一键 upsert;任一行失败整批不写 |
| Excel 导出 |
另选年月;所属乡镇与列表一致(打开时带入列表当前乡镇,可清空表示全部);填表人=登录用户 |
4. 权限
dataModel:farmerHousehold:list|query|add|edit|remove|import|export
5. 修订记录
| 版本 |
说明 |
| 1.0 |
首版:CRUD + upsert 导入 + 导出;派生三项;村级唯一键 |
| 1.1 |
补草畜失衡预警:写入疾病预警表 type=6 |
| 1.2 |
预警改写独立表;规则对齐交接注 7(载畜量<存栏触发,≥则预警消失;不走草畜平衡计算) |