# 草场使用记录 — 前端技术方案 > 依据:`草场使用记录功能需求.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. 页面结构 1. **筛选区**:草场名称关键字;**预约日期**(创建日期 `daterange` → `startDate`/`endDate`);搜索、重置、新增、批量删除、导出。 2. **列表区**:草场名称、使用面积(亩)、养殖主体、使用起止日、实际使用天数、放牧数量(头)、放牧方式、创建时间、操作列。 3. **新增/编辑**:草场/主体 **remote + filterable** 下拉;使用面积(亩,≤ 草场总面积提示);使用时段 **daterange**;实际使用天数只读自动计算;放牧数量、放牧方式。 4. **查看弹窗**:只读 + 审计字段。 --- ## 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. 联调说明 1. 部署 `BizGrasslandUsageRecordController` 及 `biz_grassland_usage_record` 表。 2. 菜单与按钮权限与技术方案 §4 一致。 3. 验证:主数据远程搜索、面积上限、使用天数与后端一致、逻辑删除后列表不可见。 --- ## 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 |