# 项目与补贴 — 补贴 — 前端技术方案 > 依据:`项目与补贴-补贴技术方案.md`;作为 `policy/projectSubsidy/index.vue` 中 **补贴列表** Tab 实现。 --- ## 1. 页面与路由 | 项 | 说明 | | --- | --- | | **组件文件** | `ruoyi-ui/src/views/policy/projectSubsidy/MatterTab.vue` | | **父页面** | `policy/projectSubsidy/index`(`el-tabs` 第二个 Tab) | | **权限前缀** | `industryPolicy:subsidyMatter:` | --- ## 2. API | 文件 | Base Path | | --- | --- | | `ruoyi-ui/src/api/policy/subsidyMatter.js` | `/industryPolicy/subsidyMatter` | 方法:`listSubsidyMatter`、`getSubsidyMatter`、`addSubsidyMatter`、`updateSubsidyMatter`、`delSubsidyMatter`、`publishSubsidyMatter`、`offlineSubsidyMatter`。 --- ## 3. 列表与查询 - **筛选**:`keyword`(补贴名称/简介 OR)、`grantStatus`(1/2)、`publishStatus`(0/1)。 - **表格**:补贴名称、简介、发放状态、发布状态、明细附件、封面、发布时间、创建时间。 - **操作**:未发布 → 查看/编辑/删除/发布;已发布 → 查看/下架。 - **批量删除 / 导出**:`industryPolicy/subsidyMatter/export`。 --- ## 4. 表单与校验 | 字段 | 规则 | | --- | --- | | `subsidyName` | 必填,1~20 字 | | `introduction` | 选填,≤50 字 | | `grantStatus` | 必填;新建默认 `1`(申请中) | | `detailFileUrl` / `detailFilePath` / `detailFileName` | **必填**;pdf/md/doc/xls/ppt 等 ≤30MB | | `coverFileUrl` / `coverFilePath` | 选填,jpg/jpeg/png ≤10MB | | `remark` | 选填,≤500 字 | 上传走 `POST /common/upload`,提交时带 url、path、originalFilename。 --- ## 5. 国际化 `policy.js` 中 `subsidyMatter` 节点;`pubNs: 'subsidyMatter'` + `policyPublicityLocaleMixin`。 --- ## 6. 修订记录 | 版本 | 说明 | | --- | --- | | 1.0 | 初版:嵌入项目与补贴 Tab;明细附件必填 + 封面选填 | | 1.1 | 草稿 §6:发布/下架;与发放状态独立 |