产业政策宣传 — 功能需求
1. 文档说明
| 项 |
说明 |
| 模块名称 |
产业政策宣传 |
| 目标 |
对产业政策宣传内容进行录入、查询、维护与发布管理,支撑面向使用方的政策查阅与展示 |
| 关联系统 |
业务后台 |
| 修订依据 |
同目录 产业政策宣传功能需求-草稿 |
本文档仅描述功能需求与业务规则,不涉及库表结构、接口路径、请求体字段命名及技术栈选型。
2. 术语与状态
2.1 政策层级(枚举,单选)
2.2 发布状态(互斥,单值)
| 取值 |
含义概要 |
| 未发布 |
新建草稿或已下架回流;对外不可见(与产品「前台展示」定义一致);在满足矩阵规则下可编辑、可删除、可发布 |
| 已发布 |
对外可见或可检索(与产品定义一致);不允许修改;不允许直接删除,须先执行 下架 |
下架回流: 对已发布内容执行「下架」后,发布状态回到 未发布,允许再次编辑并在校验通过后 再次发布,无须新建一条记录。
3. 功能范围
- 产业政策宣传的新增、修改、删除、分页列表查询、详情查看
- 政策文件(非结构化文档)与封面图的上传、替换、展示及删除时的存储联动清理
- 发布、下架及发布状态约束下的操作权限控制
- 面向使用方的业务错误与校验提示(见第 6 章)
4. 业务流程概览
下列顺序描述典型闭环;具体操作禁忌以 第 5 节矩阵 为准。
- 新建:录入必填项,按需上传政策文件与封面 → 初始为 未发布。
- 维护:在 未发布 下可反复修改字段与附件,直至内容定稿。
- 发布:在 未发布 且满足发布前置校验时执行「发布」→ 已发布。
- 对外展示:已发布 内容按产品约定在前台或公开渠道展示;后台详情为只读维护视角。
- 下架:在 已发布 下执行「下架」→ 回到 未发布,结束对外展示。
- 再编辑 / 再发布:下架后可修改并再次发布(重复步骤 2~3)。
- 删除:仅在 未发布 下允许删除整条记录及关联文件;已发布 须先下架。
stateDiagram-v2
[*] --> 未发布: 新建
未发布 --> 已发布: 发布
已发布 --> 未发布: 下架
未发布 --> [*]: 删除
5. 详细功能需求
5.1 新增产业政策宣传
| 字段 |
规则 |
| 政策名称 |
必填;长度 1~20 个字符(字符计数规则与项目全局一致) |
| 政策层级 |
必填;单选,取值限定为第 2.1 节 |
| 政策简介 |
选填;若有内容,长度不超过 50 字 |
| 出台日期 |
必填;格式 YYYY-MM-DD;不得为未来日期(若业务允许「待定」须单独评审,默认不允许未来日期) |
| 政策描述 |
必填;长度不超过 50 字 |
| 政策文件 |
选填;通过单个附件上传;允许后缀:pdf、md、doc、docx、xls、xlsx、ppt、pptx;单文件 ≤ 30 MB |
| 封面 |
选填;通过单个图片上传;允许后缀:jpg、jpeg、png(若产品要求支持 webp 等可追加);单文件 ≤ 10 MB |
必填字段汇总: 政策名称、政策层级、出台日期、政策描述。
校验:
- 须校验文件类型(后缀与白名单 / 项目安全规范一致)与大小;超限或格式不符时给出可区分的错误提示。
- 若业务要求政策名称在适用范围(如租户 / 组织)内唯一,应在评审时单独约定并写入本节。
初始状态: 新建成功后,发布状态为 未发布。
5.2 查询产业政策宣传列表
- 关键字: 对「政策名称」或「政策简介」进行模糊匹配(二者为 OR 关系);关键字为空时不按关键字过滤。
- 政策层级: 精确匹配筛选;未选择时不按层级过滤。
- 发布状态(建议): 列表宜支持按 未发布 / 已发布 筛选,便于运营人员区分待发布与已上线内容。
- 分页: 支持分页;默认 每页 20 条,默认首页为第一页;单页条数上限与项目列表通用规范一致(若有)。
- 排序: 默认按 创建时间倒序(最新在前);次要排序键与项目列表规范一致(若有)。
列表宜展示:政策名称、政策层级、政策简介(可截断)、出台日期、发布状态、封面缩略图(若有),以及当前状态下可执行的操作入口。
5.3 修改产业政策宣传
- 状态约束: 仅未发布(含新建后未发布、已从已发布下架回流)允许修改。已发布状态下不允许修改(列表 / 详情不提供可提交的编辑入口,或仅为只读;任何保存类修改须被拒绝并给出明确业务原因,如「已发布内容请先下架后再编辑」)。
- 可修改项: 政策名称、政策层级、政策简介、出台日期、政策描述、政策文件、封面。
- 保存约束: 政策名称、政策层级、出台日期、政策描述 始终保持必填;政策简介、政策文件、封面 仍为选填,但若用户上传或替换附件,仍须满足 5.1 中的格式与大小规则。
- 附件替换: 替换政策文件或封面时,旧文件在保存成功后应从存储中清理,避免孤儿文件(与删除整条的清理策略一致)。
5.4 删除产业政策宣传
- 允许删除: 发布状态为 未发布 的记录。
- 不允许删除: 发布状态为 已发布 的记录;须先执行「下架」(见 5.6)回到 未发布 后再删除。
- 删除后果: 删除本条业务记录时,须同步删除关联存储中的政策文件与封面文件,避免存储残留。
5.5 查看产业政策宣传详情
- 展示内容: 政策名称、政策层级、政策简介、出台日期、政策描述、政策文件(下载或预览入口)、政策文件原始名称(与上传文件名一致,便于识别)、封面、当前 发布状态。
- 权限与交互:
- 未发布: 具备权限的用户可进入编辑流程(见 5.3)。
- 已发布: 详情为 只读(无保存类编辑);可提供「下架」操作入口。
- 在线预览: 政策文件(如 PDF)、封面图片的在线预览若需要,可作为迭代项单列,不作为本期必选。
5.6 发布与下架
发布
- 前置条件:
- 当前发布状态为 未发布;
- 必填字段均已满足 5.1 规则(含政策名称、政策层级、出台日期、政策描述)。
- 操作结果: 发布状态变为 已发布;内容按产品约定对外可见或可检索。
- 失败处理: 校验不通过时须给出明确原因(如必填项缺失、日期非法等),不变更发布状态。
下架
- 前置条件: 当前发布状态为 已发布。
- 操作结果:
- 发布状态变为 未发布;
- 对外展示 / 检索可见性结束(与产品「前台是否展示」定义一致);
- 允许用户再次修改(5.3)并在满足条件后 再次发布,无须新建记录。
- 说明: 下架不删除业务记录与已上传文件,仅变更发布状态与对外可见性。
6. 状态与操作矩阵(汇总)
便于评审与测试用例编写。
| 当前发布状态 |
查看 |
修改 |
发布 |
下架 |
删除 |
| 未发布 |
✓ |
✓ |
✓ |
— |
✓ |
| 已发布 |
✓ |
✗ |
— |
✓ |
✗ |
补充: 从「已发布」下架后,记录回到 未发布,操作权限按上表第一行执行。
7. 错误与提示约定
- 业务与校验错误宜采用项目统一的
code、msg、data 结构呈现,便于前端统一处理(不涉及具体协议与路径设计)。
- 常见提示宜可区分,例如:
- 必填项缺失、字段超长、日期格式或业务规则不符;
- 文件格式不支持、文件大小超限、上传失败;
- 已发布不可编辑、已发布不可删除须先下架;
- 发布 / 下架操作失败原因。
8. 非功能需求(建议)
| 类别 |
建议 |
| 权限 |
菜单与按钮级权限:新增、编辑、删除、发布、下架、查看等是否分角色 |
| 审计 |
关键操作记操作日志(新增、修改、发布、下架、删除) |
| 安全 |
上传文件类型校验、存储路径不可预测、下载与预览鉴权 |
| 性能 |
列表查询响应时间满足后台通用体验;大附件若后续需直传或分片再扩展 |
| 双语 |
若前台面向藏汉双语用户,展示文案与后台字段标签须与项目 i18n 规范一致(具体范围在 UI 设计阶段确认) |
9. 修订说明(相对草稿)
| 草稿问题 |
优化处理 |
| 查询条件写为「标准类型」 |
更正为 政策层级,与本模块字段一致 |
| 第 6 条「产互」 |
更正为 删除,并与发布状态矩阵对齐 |
| 发布 / 下架规则分散且不完整 |
增补 §4 流程概览、§5.6 发布与下架、§6 操作矩阵;明确已发布不可改、不可删 |
| 政策简介、政策文件、封面是否必填未写清 |
与同类模块对齐:简介、文件、封面选填;政策描述必填 |
| 政策名称长度仅写「不超过 20 字」 |
明确为 1~20 字符 |
| 第 6、7 条接口与技术栈 |
接口细节删除;错误结构仅保留 §7 中的呈现约定;技术栈移至技术方案文档 |
| 删除时文件处理仅一句话 |
在 §5.4 明确须联动清理政策文件与封面;修改替换附件时亦须清理旧文件 |