# 牦牛疾病预警 — 前端技术方案 > 依据:`牦牛疾病预警功能需求.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. 页面结构 1. **筛选区**:预警日期范围、所属牧场;搜索、重置、**同步**(第三方拉取)。 2. **同步提示**:成功后展示「数据截至:{syncTime}」。 3. **列表**:预警时间、牦牛编号、所属牧场、预警信息、操作(查看)。 4. **详情弹窗**:只读展示全部业务字段及扩展字段;有 `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` 权限(抽屉只读)。