草场使用记录 — 前端技术方案
依据:草场使用记录功能需求.md、草场使用记录技术方案.md;布局对齐 breedingStandards/breedingManage/index.vue(双 el-card);字段 小驼峰。
1. 页面与路由
| 项 |
说明 |
| Vue 路径 |
ruoyi-ui/src/views/dataModel/grasslandUsage/index.vue |
| 组件名 |
GrasslandUsage |
| 菜单配置 |
组件路径:dataModel/grasslandUsage/index(手工配置,不提供 SQL) |
| 权限前缀 |
dataModel:grasslandUsage:list\|query\|add\|edit\|remove\|export |
2. API 模块
| 项 |
说明 |
| 文件 |
ruoyi-ui/src/api/dataModel/grasslandUsage.js |
| Base |
/dataModel/grasslandUsage |
| 方法 |
HTTP |
说明 |
listGrasslandUsage |
GET |
/list |
getGrasslandUsage |
GET |
/{id} |
addGrasslandUsage |
POST |
/ |
updateGrasslandUsage |
PUT |
/ |
delGrasslandUsage |
DELETE |
/{ids} |
主数据下拉:复用 listGrassland、listPasture(keyword 模糊,pageSize=50)。
3. 页面结构
- 筛选区:草场名称关键字;预约日期(创建日期
daterange → startDate/endDate);搜索、重置、新增、批量删除、导出。
- 列表区:草场名称、使用面积(亩)、养殖主体、使用起止日、实际使用天数、放牧数量(头)、放牧方式、创建时间、操作列。
- 新增/编辑:草场/主体 remote + filterable 下拉;使用面积(亩,≤ 草场总面积提示);使用时段 daterange;实际使用天数只读自动计算;放牧数量、放牧方式。
- 查看弹窗:只读 + 审计字段。
4. 业务规则(前端)
| 规则 |
实现 |
| 实际使用天数 |
结束 − 开始 + 1(含起止日);useDateRange 变更时刷新;提交不传 actualUseDays(后端重算) |
| 使用面积 |
> 0 且 ≤ 所选草场 areaMu |
| 放牧数量 |
整数 ≥ 1 |
| 放牧方式 |
1 轮牧 / 2 自由放牧 / 3 季节性放牧 |
| 创建日期筛选 |
createDateRange 映射 startDate、endDate;起 > 止时提示 |
5. 国际化
| 项 |
说明 |
| 语言包 |
dataModel.grasslandUsage(lang/zh/dataModel.js、lang/bo/dataModel.js) |
| Mixin |
dataModelLocaleMixin,data.dmNs = 'grasslandUsage' |
| 单位 |
亩、天复用 dataModel.grassland.unitMu / unitDay |
6. 联调说明
- 部署
BizGrasslandUsageRecordController 及 biz_grassland_usage_record 表。
- 菜单与按钮权限与技术方案 §4 一致。
- 验证:主数据远程搜索、面积上限、使用天数与后端一致、逻辑删除后列表不可见。
7. 文件清单
| 类型 |
路径 |
| 页面 |
ruoyi-ui/src/views/dataModel/grasslandUsage/index.vue |
| API |
ruoyi-ui/src/api/dataModel/grasslandUsage.js |
| i18n |
ruoyi-ui/src/lang/zh/dataModel.js、lang/bo/dataModel.js(grasslandUsage 段) |
8. 修订记录
| 版本 |
说明 |
| 1.0 |
初版:双卡片 CRUD;主数据远程下拉;使用时段 daterange |