西藏巴青项目

草蓄平衡计算前端技术方案.md 3.4KB

草场平衡计算 — 前端技术方案

依据:doc/产业数据模型及体系/草蓄平衡计算/草畜平衡计算功能需求.md草蓄平衡计算技术方案.md;界面布局对齐原型 Snipaste_2026-05-19_12-33-53.jpg;字段 小驼峰


1. 页面与路由

说明
Vue 路径 ruoyi-ui/src/views/dataModel/grassLivestockBalance/index.vue
组件名 GrassLivestockBalance
菜单配置 组件路径:dataModel/grassLivestockBalance/index(手工配置,不提供 SQL)
权限前缀 dataModel:grassLivestockBalance:query

草场下拉另需:dataModel:grassland:listdataModel:grassland:query


2. API 模块

说明
文件 ruoyi-ui/src/api/dataModel/grassLivestockBalance.js
Base /dataModel/grassLivestockBalance
方法 HTTP 说明
calculateGrassLivestockBalance POST /calculate,Body 见技术方案 §3.1.1
getGrassLivestockBalanceDefaults GET /defaults,羊单位默认参数

草场主数据:复用 listGrasslandkeyword 模糊)、getGrassland(选定后带出面积、产草、利用率)。


3. 页面结构

  1. 基础参数区el-card):草场 remote 下拉;面积、亩产草量、利用率(0~1);羊单位年需草量、折算系数、养殖数量;计算清空
  2. 计算结果区el-card):11 项只读指标,按原型三行展示;等级字段按 balanceLevel 配色;warningel-alert
  3. 公式说明区el-collapse):11 条公式 + 四档等级表(文案 i18n,不参与计算)。

4. 业务规则(前端)

规则 实现
草场联动 getGrassland(id) 填充 areaMugrassYieldPerMuutilizationRate;切换草场清空结果
默认羊单位参数 createdGET /defaults 填充;清空后恢复默认
利用率 与草场管理一致,传 0~1 小数,非百分比
校验 与技术方案 §3.5 / 功能需求 §5.1 一致;失败不展示结果
计算 校验通过后 POST /calculate,展示 data 各字段
超载羊单位 / 饲草缺口 负值展示绝对值并附「(余量)」
数值格式 金额类 2 位小数;超载率加 %;超载头数为整数
清空 表单、结果、草场选项一并重置

5. 国际化

说明
语言包 dataModel.grassLivestockBalancelang/zh/dataModel.jslang/bo/dataModel.js
Mixin dataModelLocaleMixindmNs = 'grassLivestockBalance'
单位 亩、kg/亩、0~1 复用 dataModel.grassland

6. 联调说明

  1. 部署 GrassLivestockBalanceController 及草场台账 biz_grassland
  2. 菜单权限:dataModel:grassLivestockBalance:query
  3. 验证:草场带出、默认值、计算 11 项、等级颜色、边界 warning、清空与双语切换。

7. 文件清单

类型 路径
页面 ruoyi-ui/src/views/dataModel/grassLivestockBalance/index.vue
API ruoyi-ui/src/api/dataModel/grassLivestockBalance.js
i18n ruoyi-ui/src/lang/zh/dataModel.jslang/bo/dataModel.jsgrassLivestockBalance 段)

8. 修订记录

版本 说明
1.0 初版:三卡片布局;POST 计算 + GET 默认值;复用草场接口;公式折叠区