# 需求

饲料配方管理及自动生成配方

## issue

http://git.huangwc.com/pig/pig-farm-controller/issues/66

# 开发计划

1. 原料营养价值管理
    - 增删改查
    - 内置60+条常用原料（玉米、豆粕43、豆粕46、发酵豆粕、麸皮、次粉、DDGS、乳清粉、鱼粉、膨化大豆、各种氨基酸、预混料、油脂等）
    - 每种原料固定营养值（消化能、粗蛋白、赖氨酸、钙、磷等15项左右）

2. 饲料库存管理（代替批次）
    - 字段：饲料名、当前原料种类、当前剩余量（吨）、上次入料日期、保质期剩余天数（手动填）、是否发酵料（勾选）
    - 发酵料塔额外字段：
        - 发酵状态（未发酵 / 正在发酵 / 已发酵可用）
        - 发酵开始日期
        - 发酵几天（默认3～7天）
        - 水分增加比例（默认+10～20%）
        - 营养折损系数（可调，粗蛋白-5%、能量-3%之类）

3. 猪只阶段营养需求管理
    - 预设10个常用阶段（教槽、仔猪、小猪、中猪、大猪、后备、怀孕前中后、哺乳）
    - 每个阶段维护营养需求上下限（消化能、粗蛋白、赖氨酸、钙、有效磷等12项）

4. 配方管理
    - 按阶段建配方
    - 支持增删改查 + 复制上个配方快速新建
    - 配方明细：原料 + 配比（%）

5. 自动生成配方（核心功能）
    - 选择阶段 → 点击“自动计算最低成本配方”
    - 自动读取当前所有料塔的：
        - 剩余量（不够的原料自动降配比）
        - 保质期剩余天数（越快过期的优先用，权重×1.5）
        - 发酵料塔如果状态是“已发酵可用”则按发酵后营养值参与计算
    - 输出：总成本、营养达标情况、发酵料占比、即将过期原料使用提示

6. 配方下发与记录
    - 一键下发到喂料站/料线（生成下料曲线）
    - 自动记录今天用了哪个配方

7. 简单查看功能
    - 两个配方对比页面（营养+成本对比）

# 完成事项

1. 定义原料表, 营养表, 原料营养表, 原料库存变更表
2. 迁移配置文件, 实现从json文件中读取原材料营养预设值, 并自动写入数据库
3. 定义配方领域, 实现营养元素的增删改查
4. 实现原材料的增删改查和仓库层的原料库存记录表增查
5. 定义猪的模型和营养需求模型
6. 实现从json读取猪营养需求并写入数据库
7. 实现配方领域关于猪模型和营养需求的增删改查
8. 实现配方领域的web接口