Skip to content

ARCH-001: 畜禽档案管理

优先级: 🔴 高 (18.0分) | 技术复用度: 75% | 实施周期: 2-3周

客户原话

"我们养殖场有5000头猪,每头猪都有耳标编号。以前用本子记录,哪头猪什么时候出生、父母是谁、打过什么疫苗、有没有生过病,全记在本子上。现在本子有十几本了,要查一头猪的信息,要翻半天。有时候配种,不知道两头猪是不是近亲,配完了才发现是兄妹,生出来的小猪体质差。还有,猪生病了,不知道以前得过什么病、用过什么药,治疗起来很被动。我们想建个电子档案,但不知道怎么建,要记录哪些信息。"

—— 某规模化养猪场场长

业务场景描述

典型场景

场景1: 畜禽个体档案建立

  • 新生仔猪出生,需要建立档案
  • 记录耳标号、出生日期、父母信息、初生重
  • 拍照记录外貌特征
  • 分配到对应栏舍和批次
  • 纸质记录容易丢失,信息不完整

场景2: 系谱关系查询

  • 准备配种,需要查询两头猪的系谱关系
  • 翻查纸质档案,查找父母、祖父母信息
  • 手工绘制系谱图,判断是否近亲
  • 查询耗时长,容易出错
  • 近亲配种风险高,影响后代质量

场景3: 健康档案查询

  • 猪生病了,兽医需要查看历史健康记录
  • 翻查本子,查找疫苗接种、疾病治疗记录
  • 记录分散,查询困难
  • 信息不完整,影响诊疗决策
  • 用药记录不清楚,可能重复用药或禁忌用药

场景4: 档案信息更新

  • 猪转栏、称重、免疫、治疗后需要更新档案
  • 手工记录,容易遗漏或出错
  • 多人记录,格式不统一
  • 更新不及时,信息滞后
  • 历史记录无法追溯修改痕迹

场景5: 多场区档案管理

  • 公司有3个养殖场,每个场独立记录
  • 种猪调拨时,档案信息无法同步
  • 集团层面无法统一查询和分析
  • 数据格式不统一,难以汇总
  • 优良种畜信息无法共享

核心痛点

  1. 查询效率低 - 纸质档案查找困难,翻半天找不到
  2. 系谱管理难 - 系谱关系记不清,近亲繁殖风险高
  3. 信息不完整 - 健康记录分散,疫病追溯困难
  4. 更新不及时 - 档案更新靠人工,容易遗漏出错
  5. 多场难管 - 多个养殖场档案分散,无法统一管理

业务流程图

当前人工流程

问题点

  • 纸质记录查询慢,容易丢失
  • 系谱关系判断困难,容易出错
  • 信息更新不及时,记录不规范
  • 多场区数据分散,无法共享

自动化流程

改进点

  • 电子档案,秒级查询
  • 自动计算系谱,智能预警
  • 实时更新,多场同步
  • 数据完整,可追溯

数据流与依赖

数据输入

  • 基础信息: 耳标号、品种、性别、出生日期、初生重
  • 系谱信息: 父亲、母亲、祖父母信息
  • 外貌特征: 照片、毛色、体型特征
  • 栏舍信息: 所在栏舍、批次编号
  • 来源信息: 自繁、外购、调拨

数据输出

  • 个体档案: 提供给饲养员、兽医查询
  • 系谱数据: 提供给繁殖管理(→ PROD-001)
  • 健康档案: 提供给免疫计划(→ HEALTH-001)
  • 追溯信息: 提供给追溯报表(→ DATA-004)

场景依赖关系

技术实现方案

核心功能模块

1. 畜禽档案数据结构

个体档案:

json
{
  "animal_id": "2024030001",
  "ear_tag": "CN-001-2024-0001",
  "rfid": "3400567890123456",
  "breed": "杜洛克",
  "gender": "母",
  "birth_date": "2024-03-01",
  "birth_weight": 1.5,
  "status": "育肥中",

  "pedigree": {
    "father_id": "2023010015",
    "father_ear_tag": "CN-001-2023-0015",
    "mother_id": "2022050032",
    "mother_ear_tag": "CN-001-2022-0032",
    "paternal_grandfather_id": "2021030008",
    "paternal_grandmother_id": "2021040012",
    "maternal_grandfather_id": "2020080005",
    "maternal_grandmother_id": "2020090018"
  },

  "appearance": {
    "photos": ["photo1.jpg", "photo2.jpg"],
    "coat_color": "黑色",
    "body_type": "标准",
    "special_marks": "左耳有白斑"
  },

  "location": {
    "farm_id": "F001",
    "farm_name": "一号养殖场",
    "building": "1号舍",
    "pen": "101栏",
    "batch_id": "B202403"
  },

  "source": {
    "type": "自繁",
    "source_farm": "F001",
    "purchase_date": null,
    "supplier": null,
    "price": null
  },

  "health_summary": {
    "vaccination_count": 5,
    "disease_count": 1,
    "treatment_count": 2,
    "last_vaccination": "2024-05-15",
    "last_checkup": "2024-06-01"
  },

  "production_summary": {
    "current_weight": 85.5,
    "daily_gain": 0.75,
    "feed_conversion": 2.8,
    "expected_slaughter_date": "2024-09-01"
  },

  "created_at": "2024-03-01 08:30:00",
  "updated_at": "2024-06-05 14:20:00",
  "created_by": "张饲养员",
  "status_history": [
    {"date": "2024-03-01", "status": "哺乳", "operator": "张饲养员"},
    {"date": "2024-04-01", "status": "保育", "operator": "李饲养员"},
    {"date": "2024-05-01", "status": "育肥中", "operator": "王饲养员"}
  ]
}

状态定义:

  • 哺乳: 0-28天,跟随母猪
  • 保育: 28-70天,断奶后保育
  • 育肥中: 70天-出栏,育肥阶段
  • 后备: 选留的后备种猪
  • 种用: 正式种猪
  • 已出栏: 已销售出栏
  • 已淘汰: 淘汰处理
  • 死亡: 死亡

2. 系谱关系计算

近交系数计算:

javascript
// 计算两个个体的近交系数
function calculateInbreedingCoefficient(animal1_id, animal2_id) {
  // 获取两个个体的祖先信息(往上追溯3-5代)
  let ancestors1 = getAncestors(animal1_id, 5)
  let ancestors2 = getAncestors(animal2_id, 5)

  // 查找共同祖先
  let commonAncestors = findCommonAncestors(ancestors1, ancestors2)

  if (commonAncestors.length === 0) {
    return 0 // 无共同祖先,近交系数为0
  }

  // 计算近交系数
  let coefficient = 0
  commonAncestors.forEach(ancestor => {
    let n1 = ancestor.generation_from_animal1 // 从animal1到共同祖先的代数
    let n2 = ancestor.generation_from_animal2 // 从animal2到共同祖先的代数
    let fa = ancestor.inbreeding_coefficient || 0 // 共同祖先自身的近交系数

    // Wright近交系数公式: F = Σ[(1/2)^(n1+n2+1) * (1+fa)]
    coefficient += Math.pow(0.5, n1 + n2 + 1) * (1 + fa)
  })

  return coefficient
}

// 获取祖先信息
function getAncestors(animal_id, generations) {
  let ancestors = []
  let queue = [{id: animal_id, generation: 0}]

  while (queue.length > 0 && queue[0].generation < generations) {
    let current = queue.shift()
    let animal = getAnimalById(current.id)

    if (animal.pedigree.father_id) {
      ancestors.push({
        id: animal.pedigree.father_id,
        generation: current.generation + 1,
        relation: 'paternal'
      })
      queue.push({
        id: animal.pedigree.father_id,
        generation: current.generation + 1
      })
    }

    if (animal.pedigree.mother_id) {
      ancestors.push({
        id: animal.pedigree.mother_id,
        generation: current.generation + 1,
        relation: 'maternal'
      })
      queue.push({
        id: animal.pedigree.mother_id,
        generation: current.generation + 1
      })
    }
  }

  return ancestors
}

// 近交风险评估
function assessInbreedingRisk(coefficient) {
  if (coefficient >= 0.25) {
    return {
      level: 'high',
      color: 'red',
      message: '近交系数≥25%,属于全同胞或亲子交配,严禁配种!',
      allow: false
    }
  } else if (coefficient >= 0.125) {
    return {
      level: 'medium',
      color: 'yellow',
      message: '近交系数12.5-25%,属于半同胞交配,谨慎配种',
      allow: true,
      warning: true
    }
  } else if (coefficient >= 0.0625) {
    return {
      level: 'low',
      color: 'orange',
      message: '近交系数6.25-12.5%,有一定近交风险,建议评估',
      allow: true,
      warning: false
    }
  } else {
    return {
      level: 'safe',
      color: 'green',
      message: '近交系数<6.25%,可以配种',
      allow: true,
      warning: false
    }
  }
}

系谱图生成:

javascript
// 生成系谱图数据(用于前端可视化)
function generatePedigreeTree(animal_id, generations = 3) {
  let animal = getAnimalById(animal_id)

  let tree = {
    id: animal.animal_id,
    name: animal.ear_tag,
    breed: animal.breed,
    gender: animal.gender,
    birth_date: animal.birth_date,
    photo: animal.appearance.photos[0],
    children: []
  }

  if (generations > 0) {
    if (animal.pedigree.father_id) {
      tree.children.push(
        generatePedigreeTree(animal.pedigree.father_id, generations - 1)
      )
    }
    if (animal.pedigree.mother_id) {
      tree.children.push(
        generatePedigreeTree(animal.pedigree.mother_id, generations - 1)
      )
    }
  }

  return tree
}

3. 档案查询与搜索

多条件搜索:

javascript
function searchAnimals(criteria) {
  let results = animals.filter(animal => {
    // 耳标号模糊匹配
    if (criteria.ear_tag && !animal.ear_tag.includes(criteria.ear_tag)) {
      return false
    }

    // 品种
    if (criteria.breed && animal.breed !== criteria.breed) {
      return false
    }

    // 性别
    if (criteria.gender && animal.gender !== criteria.gender) {
      return false
    }

    // 状态
    if (criteria.status && animal.status !== criteria.status) {
      return false
    }

    // 出生日期范围
    if (criteria.birth_date_from) {
      if (new Date(animal.birth_date) < new Date(criteria.birth_date_from)) {
        return false
      }
    }
    if (criteria.birth_date_to) {
      if (new Date(animal.birth_date) > new Date(criteria.birth_date_to)) {
        return false
      }
    }

    // 栏舍
    if (criteria.building && animal.location.building !== criteria.building) {
      return false
    }
    if (criteria.pen && animal.location.pen !== criteria.pen) {
      return false
    }

    // 批次
    if (criteria.batch_id && animal.location.batch_id !== criteria.batch_id) {
      return false
    }

    // 父母
    if (criteria.father_id && animal.pedigree.father_id !== criteria.father_id) {
      return false
    }
    if (criteria.mother_id && animal.pedigree.mother_id !== criteria.mother_id) {
      return false
    }

    return true
  })

  // 排序
  if (criteria.sort_by) {
    results.sort((a, b) => {
      let aVal = getNestedValue(a, criteria.sort_by)
      let bVal = getNestedValue(b, criteria.sort_by)
      return criteria.sort_order === 'desc' ? bVal - aVal : aVal - bVal
    })
  }

  return results
}

4. 档案变更记录

变更日志:

json
{
  "log_id": "LOG202406050001",
  "animal_id": "2024030001",
  "change_type": "status_change",
  "field": "status",
  "old_value": "保育",
  "new_value": "育肥中",
  "reason": "达到育肥标准",
  "operator": "王饲养员",
  "timestamp": "2024-05-01 09:15:00",
  "ip": "192.168.1.100"
}

技术复用度分析

可复用的技术能力(75%):

技术能力复用场景说明
数据管理工业园区LEASE-001相同的档案管理逻辑
搜索筛选中央厨房PROC-001相同的多条件搜索
关系图谱新开发系谱关系可视化
变更日志中央厨房PROD-002相同的审计日志能力

需要新开发的能力(25%):

  • 系谱关系计算算法
  • 近交系数评估
  • 系谱图可视化

实施方案

实施步骤

第1周: 数据整理与导入

  • 整理现有纸质档案,统一格式
  • 录入存栏畜禽基础信息
  • 录入系谱关系(至少2代)
  • 上传照片,完善外貌特征
  • 选择1个栏舍试点测试

第2周: 系统开发与测试

  • 开发档案管理后台
  • 开发系谱关系计算功能
  • 开发近交系数评估功能
  • 开发移动端查询应用
  • 测试数据准确性

第3周: 全面上线与培训

  • 全量数据导入
  • 培训饲养员使用系统
  • 培训兽医查询档案
  • 制定档案维护规范
  • 建立数据质量检查机制

成本估算

软件成本:

  • 平台开发: 约6-8万元(可复用现有平台,成本降低50%)
  • 系谱计算模块: 约2-3万元
  • RFID设备: 读写器2000元/个 × 5个 = 1万元
  • 耳标: 2元/个 × 5000个 = 1万元

人力成本节省:

  • 档案查询时间减少90%: 约1万元/年
  • 近亲配种损失减少: 约3-5万元/年
  • 疫病追溯效率提升: 约2-3万元/年
  • 年节省成本: 约6-9万元

其他收益:

  • 种畜选育效率提升: 约5-8万元/年
  • 繁殖效率提升: 约8-10万元/年
  • 总收益: 约19-27万元/年

投资回收期: 约4-6个月

预期收益

效率提升:

  • 档案查询时间: 从10分钟 → 10秒
  • 系谱关系判断: 从30分钟 → 5秒
  • 档案更新时间: 从5分钟 → 1分钟

准确性提升:

  • 档案信息准确率: 从85% → 99%
  • 近亲配种识别率: 从60% → 100%
  • 系谱完整率: 从70% → 95%

管理提升:

  • 实时掌握存栏结构,优化种群
  • 精准选育,提升种畜质量
  • 疫病追溯快速准确,降低损失

风险与应对

技术风险

风险1: 历史数据不完整

  • 表现: 老猪系谱信息缺失,无法完整录入
  • 应对:
    • 优先录入种猪和后备猪档案
    • 育肥猪只录入基础信息
    • 新生仔猪从出生开始完整记录
    • 逐步完善历史数据

风险2: 耳标脱落或损坏

  • 表现: 耳标脱落,无法识别个体
  • 应对:
    • 使用RFID电子耳标,更牢固
    • 双耳标(左耳RFID,右耳普通)
    • 拍照记录外貌特征,辅助识别
    • 定期检查耳标,及时补打

风险3: 系谱关系录入错误

  • 表现: 父母信息录错,影响系谱计算
  • 应对:
    • 配种时扫描公母耳标,自动关联
    • 产仔时再次确认母猪信息
    • 设置系谱校验规则(如年龄合理性)
    • 重要种猪系谱人工复核

业务风险

风险1: 饲养员不习惯新系统

  • 表现: 习惯纸质记录,不愿意用系统
  • 应对:
    • 强调系统便利性(快速查询、自动提醒)
    • 提供详细培训和操作手册
    • 移动端操作简单,扫码即可
    • 将系统使用纳入考核

风险2: 数据录入工作量大

  • 表现: 初期录入5000头猪档案,工作量大
  • 应对:
    • 分批录入,优先种猪和后备猪
    • 新生仔猪逐步建档,不急于一次性完成
    • 可外包数据录入服务
    • 简化录入流程,只录必要信息

风险3: 多场区数据同步

  • 表现: 种猪调拨时,档案信息同步不及时
  • 应对:
    • 云端统一数据库,实时同步
    • 调拨时扫码自动更新位置信息
    • 设置调拨审批流程,确保数据准确
    • 定期核对各场区数据一致性

实施检查清单

上线前检查

  • [ ] 存栏畜禽基础信息已录入
  • [ ] 种猪系谱关系已录入(至少2代)
  • [ ] 照片已上传,外貌特征已记录
  • [ ] 系谱计算功能已测试
  • [ ] 近交系数评估功能已测试
  • [ ] 移动端查询应用已测试
  • [ ] RFID设备已安装调试
  • [ ] 饲养员已培训
  • [ ] 档案维护规范已制定

上线后监控

  • [ ] 每日检查档案更新情况
  • [ ] 每周检查系谱数据准确性
  • [ ] 每月核对存栏数量与档案一致性
  • [ ] 每季度评估系统使用效果
  • [ ] 收集用户反馈,持续改进

成功案例参考

某规模化养猪场(存栏5000头)

实施前:

  • 档案查询时间: 平均10分钟
  • 系谱关系判断: 人工绘图,30分钟
  • 近亲配种率: 约5%(每年25头)
  • 档案信息准确率: 约85%

实施后(6个月):

  • 档案查询时间: 10秒(提升98%)
  • 系谱关系判断: 自动计算,5秒(提升99%)
  • 近亲配种率: 0%(系统自动拦截)
  • 档案信息准确率: 99%(提升14%)
  • 种猪选育效率: 提升40%
  • 繁殖效率: PSY从24提升至26(提升8%)

相关资源

基于 AI 辅助开发,快速、灵活、可靠