Files
Environment-Monitoring-System/Report/需求定义_v4_第三部分.md
ChuXun 02a830145e 1
2025-10-25 19:18:43 +08:00

197 lines
8.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 需求定义文档(续)
### 3.2 模块功能概述
| 模块名称 | 功能概述 |
| :--- | :--- |
| **用户与认证模块** | 负责用户身份验证和权限控制,提供注册、登录、密码重置等功能,确保系统安全性。 |
| **反馈管理模块** | 处理公众提交的环境问题反馈,包括提交、审核、状态追踪和查询统计等功能。 |
| **任务管理模块** | 将审核通过的反馈转化为工作任务,管理任务的分配、执行和完成全流程。 |
| **网格与地图模块** | 提供地理空间的网格化管理,支持路径规划和地图可视化,辅助任务执行。 |
| **决策支持模块** | 通过数据分析和可视化,为管理层提供决策支持,帮助优化资源配置和治理策略。 |
| **系统管理模块** | 提供系统配置、用户管理、权限设置等基础功能,保障系统正常运行。 |
| **文件服务模块** | 处理系统中的文件上传、存储和访问,支持反馈和任务的附件管理。 |
| **日志审计模块** | 记录系统操作日志,支持安全审计和问题追溯,确保系统运行的可追溯性。 |
## 4. 整体业务流程
下图描述了从公众发现问题、上报、到平台内部流转、处理、并最终反馈结果的完整闭环业务流程:
```mermaid
flowchart TD
%% 定义样式
classDef public fill:#d4f1f9,stroke:#05a8e5,color:#333
classDef platform fill:#ffe6cc,stroke:#f7a128,color:#333
classDef worker fill:#d5e8d4,stroke:#82b366,color:#333
classDef supervisor fill:#e1d5e7,stroke:#9673a6,color:#333
classDef decision fill:#f8cecc,stroke:#b85450,color:#333
classDef start_end fill:#f5f5f5,stroke:#666666,color:#333,stroke-width:2px
%% 流程开始
A([开始]) --> B["[公众端] 发现环境问题"]
B --> C["[公众端] 提交反馈<br>(标题/描述/图片/位置)"]
%% 平台接收与AI处理
C --> D["[平台] 接收反馈<br>生成唯一事件ID"]
D --> E{"[平台] AI自动审核<br>分析内容/分类"}
%% AI审核分支
E -- "明显无效" --> F1["[平台] 标记为AI_REJECTED"]
F1 --> F2["[平台] 通知提交者"]
F2 --> Z1([结束])
E -- "需人工确认" --> G["[主管] 查看反馈详情<br>进行人工审核"]
%% 主管审核分支
G --> H{"[主管] 审核决定"}
H -- "驳回" --> I1["[主管] 填写驳回理由"]
I1 --> I2["[平台] 更新状态为REJECTED"]
I2 --> I3["[平台] 通知提交者"]
I3 --> Z2([结束])
%% 审核通过,创建任务
H -- "通过" --> J1["[主管] 确认反馈有效"]
J1 --> J2["[平台] 自动创建结构化任务"]
J2 --> J3["[平台] 更新反馈状态为PROCESSED"]
%% 任务分配
J3 --> K1{"[主管] 选择分配方式"}
K1 -- "手动分配" --> K2["[主管] 选择特定网格员"]
K1 -- "智能推荐" --> K3["[平台] 运行分配算法<br>考虑位置/负载/专长"]
K3 --> K4["[平台] 推荐最佳人选"]
K4 --> K2
K2 --> K5["[平台] 创建任务分配记录<br>更新任务状态为ASSIGNED"]
K5 --> K6["[平台] 通知网格员"]
%% 网格员处理
K6 --> L1["[网格员] 接收任务通知"]
L1 --> L2{"[网格员] 接受任务?"}
L2 -- "拒绝" --> K1
L2 -- "接受" --> L3["[网格员] 更新任务状态为IN_PROGRESS"]
L3 --> L4["[网格员] 查看任务详情<br>获取路径规划"]
L4 --> L5["[网格员] 前往现场处理"]
L5 --> L6["[网格员] 记录处理过程<br>上传证明材料"]
L6 --> L7["[网格员] 提交处理结果<br>更新状态为SUBMITTED"]
%% 主管审核结果
L7 --> M1["[主管] 审核处理结果"]
M1 --> M2{"[主管] 结果是否合格?"}
M2 -- "不合格" --> M3["[主管] 填写原因<br>要求重新处理"]
M3 --> L4
%% 完成流程
M2 -- "合格" --> N1["[主管] 确认任务完成"]
N1 --> N2["[平台] 更新任务状态为APPROVED"]
N2 --> N3["[平台] 更新反馈状态为CLOSED"]
N3 --> N4["[平台] 通知反馈提交者"]
N4 --> N5["[平台] 更新统计数据"]
N5 --> O["[决策层] 查看数据看板<br>分析环境趋势"]
O --> Z3([结束])
%% 为节点添加类别
class A,Z1,Z2,Z3 start_end
class B,C,F2,I3,N4 public
class D,E,F1,I2,J2,J3,K3,K4,K5,K6,N2,N3,N5 platform
class G,H,I1,J1,K1,K2,M1,M2,M3,N1 supervisor
class L1,L2,L3,L4,L5,L6,L7 worker
class O decision
```
## 5. 功能需求详细描述
### 5.1 用户与认证模块需求
| 需求ID | 需求名称 | 需求描述 | 优先级 |
| :--- | :--- | :--- | :--- |
| AUTH-01 | 用户注册 | 系统应允许新用户通过提供基本信息(姓名、手机号、邮箱、密码等)进行注册,并验证信息的有效性和唯一性。 | 高 |
| AUTH-02 | 用户登录 | 系统应支持用户通过邮箱/手机号和密码进行身份验证,登录成功后生成安全令牌用于后续请求。 | 高 |
| AUTH-03 | 密码重置 | 系统应提供安全的密码重置机制,包括通过邮箱或手机验证码验证身份。 | 中 |
| AUTH-04 | 权限控制 | 系统应基于用户角色(公众用户、网格员、主管、管理员、决策者)实施访问控制,确保用户只能访问其权限范围内的功能和数据。 | 高 |
| AUTH-05 | 会话管理 | 系统应维护和管理用户会话状态,包括会话创建、验证和超时处理。 | 中 |
| AUTH-06 | 个人资料管理 | 系统应允许用户查看和更新其个人资料,包括基本信息、联系方式和偏好设置。 | 低 |
| AUTH-07 | 安全日志 | 系统应记录所有关键安全事件(登录尝试、权限变更等),支持安全审计。 | 中 |
**用户与认证流程图**
```mermaid
graph TD
A[用户访问系统] --> B{是否已登录?}
B -- 否 --> C{是否有账号?}
B -- 是 --> D[访问系统功能]
C -- 否 --> E[注册新账号]
C -- 是 --> F[登录系统]
E --> G[填写注册信息]
G --> H[验证邮箱/手机]
H --> I[创建用户账号]
I --> F
F --> J{认证是否成功?}
J -- 否 --> K{是否忘记密码?}
J -- 是 --> L[生成安全令牌]
K -- 是 --> M[密码重置流程]
K -- 否 --> F
M --> N[验证身份]
N --> O[设置新密码]
O --> F
L --> P[加载用户权限]
P --> D
D --> Q[系统记录操作日志]
R[用户请求退出] --> S[清除会话信息]
S --> T[返回登录页面]
```
### 5.2 反馈管理模块需求
| 需求ID | 需求名称 | 需求描述 | 优先级 |
| :--- | :--- | :--- | :--- |
| FEED-01 | 反馈提交 | 系统应允许公众用户提交环境问题反馈,包括问题描述、位置标记、污染类型分类和图片上传。 | 高 |
| FEED-02 | AI内容审核 | 系统应自动分析反馈内容,识别垃圾信息、重复提交,并进行初步分类和紧急程度评估。 | 中 |
| FEED-03 | 人工审核 | 系统应提供主管审核反馈的工作台,支持查看详情、批准或驳回反馈。 | 高 |
| FEED-04 | 状态追踪 | 系统应记录和展示反馈的全生命周期状态变更,允许用户查询处理进度。 | 高 |
| FEED-05 | 反馈查询 | 系统应支持按多种条件(状态、时间、区域、类型等)查询和筛选反馈列表。 | 中 |
| FEED-06 | 反馈统计 | 系统应生成反馈数据的统计分析,包括数量分布、处理效率等指标。 | 低 |
| FEED-07 | 通知提醒 | 系统应在反馈状态变更时通知相关用户,保持信息透明。 | 中 |
**反馈管理流程图**
```mermaid
graph TD
A[公众用户发现环境问题] --> B[打开反馈提交界面]
B --> C[填写问题描述]
C --> D[选择污染类型]
D --> E[评估严重程度]
E --> F[标记地理位置]
F --> G[上传现场照片]
G --> H[提交反馈]
H --> I[系统生成唯一事件ID]
I --> J[AI自动审核内容]
J --> K{AI审核结果}
K -- 明显无效 --> L[标记为AI_REJECTED]
K -- 需人工确认 --> M[进入主管审核队列]
L --> N[通知用户反馈被拒绝]
M --> O[主管查看反馈详情]
O --> P{审核决定}
P -- 驳回 --> Q[填写驳回理由]
P -- 通过 --> R[标记为有效反馈]
Q --> S[更新状态为REJECTED]
S --> T[通知用户反馈被驳回]
R --> U[创建关联任务]
U --> V[更新状态为PROCESSED]
W[用户查询反馈状态] --> X[系统展示处理进度]
Y[管理员查看统计数据] --> Z[系统生成反馈分析报表]
```