⚙️ 业务逻辑
📝 举报流程
🚨 举报完整流程
🔵 开始/结束
🟢 用户操作
🟡 条件判断
🟣 系统处理
flowchart TD
A["👤 用户选择举报类型"] --> B{"类型"}
B -->|电话| C["📞 填写电话号码+通话截图"]
B -->|短信| D["💬 填写短信内容+截图"]
B -->|社交账号| E["👥 填写账号+头像校图+截图"]
B -->|其他| F["📋 填写描述+图片项"]
C --> G["📎 上传证据图片/语音/视频"]
D --> G
E --> G
F --> G
G --> H["✅ 提交举报"]
H --> I["🔢 生成流水号 SN"]
I --> J["💾 存储举报记录"]
J --> K{"工信部同步?"}
K -->|预留| L["📨 工信部反馈展示"]
J --> M["📱 返回结果含流水号"]
L --> M
M --> N["🔍 举报进度查询"]
N --> O["📊 后台审核处理"]
O --> P{"审核结果"}
P -->|通过| Q["✅ 已解决 resolved"]
P -->|拒绝| R["❌ 已关闭 closed"]
🚨 报案助手流程
📌 报案助手完整流程
flowchart TD
A["📱 进入报案助手"] --> B["📋 选择报案类型"]
B --> C{"选择"}
C -->|快速止付| D["💳 选择止付类型"]
C -->|案件上报| E["📄 填写报案信息"]
D --> F{"止付类型"}
F -->|银行卡| G["🏦 银行卡止付信息"]
F -->|第三方| H["💰 第三方止付信息"]
F -->|数字人民币| I["💴 数字人民币信息"]
G --> J["🌐 对接国反平台止付接口"]
H --> J
I --> J
J --> K{"返回"}
K -->|成功| L["✅ 止付成功"]
K -->|失败| M["❌ 记录错误"]
E --> N["📝 填写国反APP信息"]
N --> O{"是否有损失资金?"}
O -->|损失>0| P["📌 标记案件 has_loss=true"]
O -->|损失=0| Q["🔍 标记线索 has_loss=false"]
P --> R["🔄 OCR自动识别?"]
Q --> R
R -->|身份证| S["🪪 识别姓名+身份证号"]
R -->|银行卡| T["💳 识别银行卡+开户行"]
S --> U["📱 采集设备信息"]
T --> U
U --> V["📤 提交报案"]
V --> W["🆔 生成报案ID"]
L --> X["🔍 报案进度查询"]
W --> X
W --> Y["🌐 上报国反平台"]
⚖️ 案件 / 线索区分规则
🔀 has_loss 双分支判断
flowchart LR
A["📝 报案人填写信息"] --> B{"是否有损失资金?"}
B -->|损失>0| C["📌 has_loss = true"]
B -->|损失=0| D["🔍 has_loss = false"]
C --> E["📋 案件 Case"]
D --> F["🔎 线索 Clue"]
E --> G["✅ 完整报案流程+国反案件上报"]
F --> H["📝 线索登记+国反线索上报"]
style E fill:#e74c3c,color:#fff
style F fill:#27ae60,color:#fff
🔁 举报状态机
🚦 举报生命周期
stateDiagram-v2
[*] --> pending : 提交举报
pending --> processing : 系统受理
processing --> resolved : 审核通过
processing --> closed : 审核拒绝
resolved --> closed : 归档
closed --> [*]
pending : 待提交\n表单校验
processing : 处理中\n审核/流转
resolved : 已解决\n结果通知用户
closed : 已关闭\n归档
🏦 止付状态机
💳 止付生命周期
stateDiagram-v2
[*] --> pending : 提交止付
pending --> submitting : 开始推送
submitting --> success : 国反成功
submitting --> failed : 国反失败
failed --> submitting : 重试
failed --> closed : 终止
success --> [*]
pending : 待提交\n表单校验
submitting : 推送中\n调用国反接口
success : 止付成功\n更新本地状态
failed : 止付失败\n记录日志
closed : 已终止
🔐 RBAC 权限模型
🛡️ 权限层级架构
flowchart TB
subgraph 组织
O1["🏢 顶层组织"]
O2["📍 区县组织"]
O3["📍 街道/社区"]
end
O1 --> O2 --> O3
subgraph 角色权限
R1["👑 超级管理员\n全系统"]
R2["🏛️ 部门管理员\n本级+下级"]
R3["📌 基层工作人员\n本人数据"]
R4["👤 普通用户\n本人数据"]
end
subgraph 权限项
P1["举报管理"] P2["止付管理"] P3["报案查看"] P4["数据统计"] P5["系统配置"] P6["内容管理"]
end
R1 --> P1; R1 --> P2; R1 --> P3; R1 --> P4; R1 --> P5; R1 --> P6
R2 --> P1; R2 --> P2; R2 --> P3; R2 --> P4
R3 --> P1; R3 --> P3
R4 --> P1
📋 核心业务规则
🚨 举报规则
- 举报类型:
phone(电话)、sms(短信)、social(社交账号)、other(其他)
- 社交账号举报需上传头像截图,记录头像校图结果
- 短信/电话举报需增加图片项字段
- 流水号格式:
SN + 日期 + 6位序号
- 匿名举报不记录用户信息
💳 止付规则
- 银行卡止付:
is_suspect 默认 true(默认嫌疑人)
- 第三方止付:支持支付宝/微信/云闪付,机构名需与国反平台枚举一致
- 数字人民币:钱包ID格式 = 前缀 + 16位数字,开户行为数字人民币运营银行
- 止付状态:
pending → submitting → success / failed
🔍 OCR 识别规则
- 支持:身份证(正面)、银行卡 OCR 自动识别
- 识别结果需用户确认后才填入表单
- 原始识别结果 JSON 存储备查
📱 设备信息采集
- 采集内容:手机品牌、型号、系统版本、IP地址、网络类型
- 地理位置由用户授权或IP反查获取