# 休药期标准管理 — 前端技术方案 > 依据:`doc/休药期标准/休药期标准管理技术方案.md`;列表与卡片布局对齐 `ruoyi-ui/src/views/breedingStandards/breedingManage/index.vue`(本模块无附件上传、无发布/下架);请求与表单字段统一 **小驼峰**,与后端 `BizWithdrawalPeriodStandard` 及 Jackson 序列化一致。 --- ## 1. 页面与路由 | 项 | 说明 | | --- | --- | | **Vue 路径** | `ruoyi-ui/src/views/breedingStandards/diseaseTreatment/withdrawalPeriod/index.vue` | | **组件名** | `WithdrawalPeriodStandard` | | **菜单配置** | 若依「菜单管理」组件路径:`breedingStandards/diseaseTreatment/withdrawalPeriod/index` | | **权限前缀** | `withdrawalPeriod:standard:`(**无** `publish`、`offline`) | --- ## 2. API 模块 | 项 | 说明 | | --- | --- | | **文件** | `ruoyi-ui/src/api/breedingStandards/withdrawalPeriod.js` | | **Base Path** | `/withdrawalPeriod/standard` | 封装方法:`listWithdrawalPeriodStandard`、`getWithdrawalPeriodStandard`、`addWithdrawalPeriodStandard`、`updateWithdrawalPeriodStandard`、`delWithdrawalPeriodStandard`、`syncKbWithdrawalPeriodStandard`、`removeKbWithdrawalPeriodStandard`。 --- ## 3. 列表与查询 - **分页**:`pageNum`、`pageSize`(默认 20)。 - **筛选**:`keyword`(**仅**药物名称模糊);`drugType`(1~4 精确匹配,可清空)。 - **表格列**:药物名称、药物类型文案、休药期天数、使用指南、药物作用(溢出省略)、知识库同步状态、创建时间、操作列。 - **行字段**:`drugName`、`drugType`、`withdrawalDays`、`usageGuide`、`drugEffect`、`kbSyncStatus`、`kbDocId`(详情/查看可展示)等,均为小驼峰。 **药物类型枚举(与后端一致)**:`1` 抗生素、`2` 抗原虫、`3` 抗病毒、`4` 激素。 --- ## 4. 表单校验(与后端 Bean / `WithdrawalPeriodStandardValidation` 对齐) | 字段 | 规则 | | --- | --- | | `drugName` | 必填,长度 1~20(`String.length` 口径);**全表唯一**(保存失败时展示后端「药物名称已存在」) | | `drugType` | 必填,`1`~`4` | | `withdrawalDays` | 必填,整数 **1~999** | | `usageGuide` | 必填,长度 1~200 | | `drugEffect` | 必填,长度 1~200 | 编辑弹窗使用 `el-input-number` 约束休药期范围,并辅以自定义校验器保证为整数且在 1~999。 --- ## 5. 操作按钮与知识库状态 本模块**仅有**知识库同步维度,无发布状态。 | 按钮 | 显示条件 | 权限标识 | | --- | --- | --- | | 查看 | 有 `query` 权限 | `withdrawalPeriod:standard:query` | | 同步知识库 | `kbSyncStatus === 0` | `withdrawalPeriod:standard:syncKb` | | 移出知识库 | `kbSyncStatus === 1` | `withdrawalPeriod:standard:removeKb` | | 编辑 | `kbSyncStatus === 0` | `withdrawalPeriod:standard:edit` | | 删除 | `kbSyncStatus === 0` | `withdrawalPeriod:standard:remove` | 已同步记录须先「移出知识库」后再允许编辑、删除(与需求 **4.6**、技术方案 **3.4** 一致)。 --- ## 6. 与养殖标准页的差异摘要 | 项 | 养殖标准(breedingManage) | 休药期标准 | | --- | --- | --- | | 正文/封面上传 | 有 | 无 | | 发布/下架 | 有 | 无 | | 列表筛选维度 | 关键词 + `standardType` | 药物名称 + `drugType` | | 知识库 | 同步 / 移出 + 发布链路 | 仅同步 / 移出 | --- ## 7. 联调说明 1. 部署含 `BizWithdrawalPeriodStandardController` 的后端,确认代理 `VUE_APP_BASE_API` 可达。 2. 菜单与按钮权限与 `sql/biz_withdrawal_period_standard.sql` 注释中的标识一致后,用不同权限账号验证列表与写操作。 3. 同步成功后后端可能写入占位 `kbDocId`(如 `LOCAL-{id}`),查看弹窗可展示该字段便于验收。 --- ## 8. 修订记录 | 日期 | 说明 | | --- | --- | | 2026-05-13 | 初稿:页面、API、权限与后端 Controller 对齐 |