牦牛疾病预警 — 前端技术方案
依据:牦牛疾病预警功能需求.md、牦牛疾病预警技术方案.md;列表布局参考 dataModel/grasslandUsage/index.vue(双 card + 分页);同步交互参考 livestockFinance/yakAsset/index.vue。
1. 页面与路由
| 项 |
说明 |
| Vue 路径 |
ruoyi-ui/src/views/dataModel/yakDiseaseWarning/index.vue |
| 组件名 |
DataModelYakDiseaseWarning |
| 菜单配置 |
组件路径:dataModel/yakDiseaseWarning/index |
| 权限前缀 |
dataModel:yakDiseaseWarning:list、query、sync |
数据范围:列表/详情按用户可见牧场过滤(后端 allowedPastureIds / 数据权限);牧场下拉来自 GET /dataModel/pasture/list。
2. API 模块
| 项 |
说明 |
| 文件 |
ruoyi-ui/src/api/dataModel/yakDiseaseWarning.js |
| Base |
/dataModel/yakDiseaseWarning |
| 方法 |
HTTP |
说明 |
listYakDiseaseWarning |
GET |
/list |
getYakDiseaseWarning |
GET |
/{id} 详情 |
syncYakDiseaseWarning |
POST |
/sync;repeatSubmit: false |
关联:listPasture(api/dataModel/pasture.js)用于牧场筛选下拉。
列表 Query(小驼峰):startDate、endDate、pastureId、pageNum、pageSize(默认 20)。
本期无 新增/修改/删除接口。
3. 页面结构
- 筛选区:预警日期范围、所属牧场;搜索、重置、同步(第三方拉取)。
- 同步提示:成功后展示「数据截至:{syncTime}」。
- 列表:预警时间、牦牛编号、所属牧场、预警信息、操作(查看)。
- 详情弹窗:只读展示全部业务字段及扩展字段;有
yakAssetId 时可打开「牦牛资产档案」抽屉。
4. 业务规则(前端)
| 规则 |
实现 |
| 只读 |
无增删改;仅列表、详情、同步 |
| 日期筛选 |
startDate/endDate;开始晚于结束提示并阻断查询 |
| 牧场筛选 |
pastureId 精确匹配;空则不过滤 |
| 排序 |
后端 alert_time DESC, id DESC |
| 预警类型 |
详情展示:1 体温异常、2 运动量异常、9 其他 |
| 同步结果 |
提示新增/更新/失败条数;刷新列表 |
| 档案跳转 |
复用 livestockFinance/yakAsset/detailDrawer |
5. 国际化
| 项 |
说明 |
| 语言包 |
dataModel.yakDiseaseWarning(lang/zh/dataModel.js、lang/bo/dataModel.js) |
| Mixin |
dataModelLocaleMixin,dmNs = 'yakDiseaseWarning';warningTypeText |
6. 文件清单
| 路径 |
说明 |
src/views/dataModel/yakDiseaseWarning/index.vue |
主页面 |
src/api/dataModel/yakDiseaseWarning.js |
API |
src/mixins/dataModelLocaleMixin.js |
预警类型文案 |
src/lang/zh/dataModel.js |
中文 |
src/lang/bo/dataModel.js |
藏文 |
7. 联调说明
- 配置菜单组件路径与
list/query/sync 按钮权限。
- 同步依赖第三方告警接口配置(见后端
application.yml)。
- 查看档案需「牦牛资产档案」模块数据及
dataModel:yakAsset:query 权限(抽屉只读)。