风险因子设置 — 功能需求
1. 文档说明
| 项 |
说明 |
| 模块名称 |
风险因子设置(界面标题可为「风险因子权重」,见原型) |
| 目标 |
配置疾病风险评估模型中各因子的权重,保证五项权重均为正数且合计为 1,供后续风险计算或预警模块引用 |
| 关联系统 |
业务后台;与「疾病检测与上报」体系内疫情上报、实验室检测等模块的衔接由产品统一规划 |
| 修订依据 |
同目录 风险因子设置-草稿.md、界面原型 风险因子设置.png |
本文档仅描述功能需求与业务规则,不涉及库表结构、接口路径、请求体字段命名及技术栈选型。
2. 术语与因子说明
2.1 风险因子(固定五项)
本模块维护的因子集合固定为下表五项,用户不可新增、删除或重命名因子(若需扩展因子项,须单独修订需求与原型)。
| 序号 |
因子名称 |
业务含义(摘要) |
| 1 |
养殖密度 |
养殖场所或区域单位面积/单位规模上的畜禽承载程度,密度越高通常意味着传播风险上升 |
| 2 |
交通流动性 |
人员、物资、畜禽调运等与外部交流的频繁程度 |
| 3 |
检疫强度 |
检疫、免疫、监测等防控措施的执行力度(强度越高,一般表示防控越严) |
| 4 |
气象适宜度 |
温湿度、降水等气象条件对病原体存活与传播的有利程度 |
| 5 |
既往发病水平 |
历史疫情、阳性检出、上报记录等反映的基线发病水平 |
2.2 权重
| 项 |
说明 |
| 含义 |
某因子在综合风险评分中的占比 |
| 取值 |
正数;五项权重之和必须等于 1(见 §2.3) |
| 展示 |
建议以小数形式录入与展示(如 0.20);是否同时展示百分比(如 20%)由界面统一,录入口径以小数为准 |
| 精度 |
小数位数与项目全局数字规范一致(建议保留 2~4 位);保存与「和为 1」校验须在同一精度规则下比较 |
2.3 权重合计约束(核心规则)
| 规则 |
说明 |
| 和为 1 |
五项权重相加的结果必须等于 1(在约定精度下比较,见下) |
| 精度比较 |
例如保留 4 位小数时,允许误差 ` |
| 实时提示 |
录入过程中宜在页面展示当前合计(如「当前合计:0.85」),并在合计 ≠ 1 时提示用户调整 |
| 保存拦截 |
合计不为 1 时不允许保存,并给出明确提示(如「五项权重之和须等于 1」) |
2.4 配置记录说明
- 本模块为全局参数配置,通常仅维护一套当前生效的权重(非分页台账、非按地区多套配置的复杂模型,除非产品另行约定「按区划多套权重」)。
- 是否保留历史版本、回滚上一版权重,本期草稿与原型未要求;若需要须单独立项。
- 权重保存成功后,下游风险计算宜使用最新已保存的权重;未保存前的临时输入不得参与正式计算。
3. 功能范围
本期实现:
- 风险因子权重查看(进入页面加载当前生效配置)
- 风险因子权重保存(一次性提交五项权重)
- 五项权重的必填、正数、合计为 1 等校验
- 保存成功/失败的用户提示(见 §8)
本期不实现:
- 因子项的新增、删除、排序、自定义名称
- 按区域、牧场、疫情类型等维护多套权重方案(若需要另出需求)
- 权重变更审批流、版本对比、定时生效
- 基于权重自动跑分、地图预警等(属下游模块,不在本文档范围)
4. 业务流程概览
flowchart LR
A[进入风险因子设置页] --> B[加载当前权重]
B --> C[查看/修改五项权重]
C --> D{合计=1且各项为正数?}
D -->|否| C
D -->|是| E[点击保存]
E --> F[保存成功]
F --> B
- 进入:具备权限的用户打开「风险因子设置/风险因子权重」页面。
- 加载:系统展示当前生效的五项权重;若从未配置,可按产品约定展示默认值(如各项
0.2)或空表单项并提示须完成首次配置。
- 调整:用户修改一项或多项权重;页面实时刷新合计。
- 保存:用户点击「保存」→ 通过校验后写入并提示成功;未通过校验则停留在当前页并标明原因。
- 使用:其它业务模块读取已保存的权重参与风险相关计算(引用规则由下游需求定义)。
5. 详细功能需求
5.1 页面展示与加载
| 项 |
规则 |
| 页面标题 |
与原型一致,建议为 「风险因子权重」 或产品确认的等价文案 |
| 表单项 |
固定展示 §2.1 五项因子,每项对应一个权重输入框;标签与原型一致 |
| 占位提示 |
输入框占位符宜为「请输入权重」等与原型一致 |
| 辅助说明 |
每项输入旁或下方宜标注 「正数」(与原型一致);页面底部或合计区标注 「权重之和 = 1」 |
| 加载 |
进入页面时自动加载当前生效配置;加载中宜有等待态,失败时提示并可重试 |
首次无数据(若存在):
- 五项可为空或预填建议默认值;保存时仍须满足正数且合计为 1。
- 是否允许「全空不可保存」与「预填 0.2×5」由产品择一并在实现说明中固定。
5.2 权重录入与校验
| 因子 |
规则 |
| 养殖密度 |
必填;正数(大于 0) |
| 交通流动性 |
必填;正数 |
| 检疫强度 |
必填;正数 |
| 气象适宜度 |
必填;正数 |
| 既往发病水平 |
必填;正数 |
汇总校验:
| 规则 |
说明 |
| 正数 |
拒绝 0、负数、非数字;是否拒绝「正无穷」等等价异常由实现约定 |
| 合计 |
五项之和 = 1(按 §2.3 精度规则) |
| 单项上限 |
因合计为 1 且各项为正,隐含每项 < 1;无需单独配置上限除非产品要求(如单项不得超过 0.8) |
交互建议:
- 修改任一项时,实时计算并展示五项合计。
- 合计 ≠ 1 时,「保存」可置灰或点击后提示,避免误提交。
- 各字段校验失败时,错误提示宜可区分(未填、非正数、合计不为 1)。
5.3 保存权重
| 项 |
规则 |
| 触发 |
用户点击 「保存」 按钮(与原型一致) |
| 前置校验 |
须先通过 §5.2 全部校验;未通过则不提交 |
| 确认 |
是否二次确认由产品约定;原型未要求弹窗确认,默认可直接保存 |
| 成功 |
提示保存成功;页面展示与刚保存一致的权重;宜记录操作人、操作时间(若系统有审计字段) |
| 失败 |
提示失败原因(网络、权限、服务端业务错误等),不部分更新五项中的若干项(须保证五项作为一套配置原子更新) |
并发与覆盖:
- 若两人同时修改,以后保存者覆盖或提示「配置已被他人更新」由实现阶段约定;需求层要求:避免出现长期不一致的五项组合(如仅三项更新成功)。
5.4 查看与权限(无列表)
- 本模块无分页列表、详情弹窗、删除单条等台账操作。
- 查看即进入配置页阅读当前五项权重。
- 修改即在同一页面编辑并保存。
在已授权前提下(菜单与按钮级权限按项目角色配置):
| 操作 |
说明 |
| 查看/进入页面 |
具备查询或列表类权限即可进入并加载 |
| 保存 |
具备修改/保存类权限方可点击保存并成功提交 |
具体权限标识在权限配置文档中定义,本文档不展开。
6. 操作权限矩阵(汇总)
| 能力 |
查看当前权重 |
修改并保存 |
| 有查询权限 |
✓ |
— |
| 有保存/修改权限 |
✓ |
✓ |
若菜单仅配置一个「风险因子设置」入口,常见做法为:进入需 list 或 query,保存需 edit 或 save(实现时与后端权限命名对齐即可)。
7. 错误与提示约定
面向使用方的提示宜语义明确、可区分,例如:
| 场景 |
提示方向(示例) |
| 某项未填 |
「请填写【养殖密度】权重」 |
| 非正数 |
「【交通流动性】权重须为正数」 |
| 合计不为 1 |
「五项权重之和须等于 1,当前合计为 x.xx」 |
| 加载失败 |
「权重配置加载失败,请稍后重试」 |
| 保存成功 |
「保存成功」 |
| 无保存权限 |
「无权限修改风险因子权重」 |
本文档不约定 HTTP 状态码、错误码字段名及接口报文结构(草稿中的统一 code/msg/data 属实现层,不写入本文档)。
8. 非功能需求(建议)
| 类别 |
建议 |
| 权限 |
仅管理员或业务配置角色可保存;普通用户只读或不可见菜单 |
| 审计 |
保存记操作日志:操作人、时间、变更前后权重(若系统支持) |
| 性能 |
单页五项数值,加载与保存响应满足后台常规体验即可 |
| 双语 |
因子名称与提示符合项目 i18n 规范(汉语 + 藏文,若适用) |
| 扩展 |
多套权重方案、因子项可配置、版本回滚、与风险评分的公式联动 |
9. 修订说明(相对草稿)
| 草稿条目 |
优化处理 |
| 仅列五项权重与「和=1」 |
扩展为 §2 因子含义、§2.3 精度与实时合计、§5 分节 |
| 编号跳跃(1 后直接 6、7) |
重整章节;移除技术栈与接口响应格式 |
| 「养殖标准管理」类笔误风险 |
模块定为 风险因子设置,与目录、原型一致 |
| 未说明是否列表/多版本 |
明确为全局单套配置(§2.4) |
| 无流程图 |
增补 §4 流程图与操作矩阵 |
| 原型「正数」 |
明确为 > 0,且与「和为 1」联立(§5.2) |
10. 功能需求追溯(自查)
| 能力 |
对应章节 |
| 五项因子固定展示 |
§2.1、§5.1 |
| 正数、必填 |
§5.2 |
| 权重之和 = 1 |
§2.3、§5.2、§5.3 |
| 保存 |
§5.3、§4 |
| 权限与提示 |
§6、§7 |
| 不含接口/库表 |
全文 |
11. 与相关文档关系
| 文档 |
关系 |
风险因子设置-草稿.md |
初稿功能列表 |
风险因子设置.png |
界面原型 |
| 《风险因子设置技术方案》 |
库表、接口、权限标识 |
| 《疫情上报功能需求》等 |
同属「疾病检测与上报」,下游可引用本权重 |