|
|
# 巡检相关功能
|
|
|
|
|
|
> 模块编码:inspection
|
|
|
> 端侧:小程序
|
|
|
> 关联文档:01-模块划分.md §3.2、02-功能清单-小程序端.md §3、03-业务流转逻辑-小程序端.md §3、05-接口规范.md §9.2、06-项目技术要求.md §4.4&5.4
|
|
|
|
|
|
## 功能概览
|
|
|
|
|
|
| 项目 | 说明 |
|
|
|
|------|------|
|
|
|
| 菜单名称 | 巡检相关功能 |
|
|
|
| 子菜单 | 今日巡检任务、蓝牙强制打卡、巡检执行、异常上报、巡检历史、异常数据补录 |
|
|
|
| 功能编号 | MP-I-01 ~ MP-I-06 |
|
|
|
| 权限编码 | inspection:plan:* / inspection:task:* 等 |
|
|
|
|
|
|
## 页面清单
|
|
|
|
|
|
### 页面1:今日巡检任务列表
|
|
|
|
|
|
- **页面路径**:`/pages/inspection/today-tasks`
|
|
|
- **页面元素**:
|
|
|
- 今日任务统计(待执行/已完成/异常)
|
|
|
- 任务列表
|
|
|
- 下拉刷新
|
|
|
- **查询条件**:无(自动加载当日任务)
|
|
|
- **列表字段**:
|
|
|
| 字段 | 说明 |
|
|
|
|------|------|
|
|
|
| 任务名称 | 巡检计划名称 |
|
|
|
| 巡检区域 | 区域名称 |
|
|
|
| 计划时间 | 开始~结束时间 |
|
|
|
| 任务状态 | 待执行/进行中/已完成/异常 |
|
|
|
| 蓝牙打卡状态 | 未打卡/已打卡 |
|
|
|
| 异常数量 | 异常项数量(红色标记) |
|
|
|
- **界面布局**:
|
|
|
- 顶部:统计卡片(待执行/已完成/异常 三列数字)
|
|
|
- 中部:任务卡片列表
|
|
|
- 卡片顶部:任务名称 + 状态标签
|
|
|
- 卡片中部:巡检区域 + 计划时间
|
|
|
- 卡片底部:蓝牙打卡状态 + 异常数量
|
|
|
- 底部:无更多数据提示
|
|
|
- **操作按钮**:
|
|
|
| 按钮 | 权限 | 说明 |
|
|
|
|------|------|------|
|
|
|
| 开始巡检 | inspection:task:view | 跳转巡检执行页 |
|
|
|
| 查看详情 | inspection:task:view | 已完成的任务查看详情 |
|
|
|
|
|
|
### 页面2:蓝牙打卡页
|
|
|
|
|
|
- **页面路径**:`/pages/inspection/bluetooth-checkin`
|
|
|
- **页面元素**:
|
|
|
- 蓝牙扫描动画
|
|
|
- 当前扫描状态提示
|
|
|
- 检测到的Beacon列表(如多个)
|
|
|
- 打卡结果提示
|
|
|
- 补录入口
|
|
|
- **界面布局**:
|
|
|
- 顶部:蓝牙扫描状态(扫描动画 + 文字提示)
|
|
|
- 中部:Beacon信息展示
|
|
|
- Beacon名称
|
|
|
- UUID
|
|
|
- 信号强度(RSSI)
|
|
|
- 连接状态
|
|
|
- 底部:打卡结果 + 重试/补录按钮
|
|
|
- **操作按钮**:
|
|
|
| 按钮 | 权限 | 说明 |
|
|
|
|------|------|------|
|
|
|
| 重新扫描 | — | 蓝牙扫描超时后可重试(最多3次) |
|
|
|
| 进入补录模式 | — | 蓝牙无法连接时,进入补录模式 |
|
|
|
|
|
|
### 页面3:巡检执行页
|
|
|
|
|
|
- **页面路径**:`/pages/inspection/execute`
|
|
|
- **页面元素**:
|
|
|
- 巡检清单列表(逐项检查)
|
|
|
- 每项检查项:正常/异常选择
|
|
|
- 异常项附加信息(拍照+严重等级+描述)
|
|
|
- 打卡状态指示
|
|
|
- 进度指示(已检查/总数)
|
|
|
- **查询条件**:无
|
|
|
- **列表字段**:
|
|
|
| 字段 | 说明 |
|
|
|
|------|------|
|
|
|
| 检查项序号 | 序号标识 |
|
|
|
| 检查项名称 | 巡检清单项 |
|
|
|
| 检查结果 | 正常(绿)/异常(红)/未检查(灰) |
|
|
|
| 严重等级 | 异常时显示:一般/较重/严重 |
|
|
|
- **界面布局**:
|
|
|
- 顶部:进度条(已检查/总数)+ 蓝牙连接状态指示
|
|
|
- 中部:检查项列表
|
|
|
- 每项:序号 + 名称 + 正常/异常切换
|
|
|
- 异常项展开:严重等级选择 + 描述输入 + 拍照上传
|
|
|
- 底部:提交巡检结果按钮
|
|
|
- **操作按钮**:
|
|
|
| 按钮 | 权限 | 说明 |
|
|
|
|------|------|------|
|
|
|
| 标记正常 | — | 当前项标记为正常 |
|
|
|
| 标记异常 | — | 当前项标记为异常,展开附加信息 |
|
|
|
| 拍照上传 | — | 异常项拍照(蓝牙策略=REQUIRED时须在蓝牙连接下拍照) |
|
|
|
| 一键生成报修 | — | 异常项可直接生成报修工单(数据写入报修模块) |
|
|
|
| 提交巡检结果 | inspection:task:view | 提交巡检记录 |
|
|
|
|
|
|
### 页面4:异常上报页
|
|
|
|
|
|
- **页面路径**:`/pages/inspection/report-abnormal`
|
|
|
- **页面元素**:
|
|
|
- 异常描述(多行文本,必填)
|
|
|
- 严重等级选择(一般/较重/严重)
|
|
|
- 照片上传(最多9张,含水印时间定位)
|
|
|
- 是否生成报修工单(开关)
|
|
|
- 报修类型选择(生成工单时)
|
|
|
- **界面布局**:
|
|
|
- 顶部:严重等级选择(三档按钮)
|
|
|
- 中部:异常描述输入 + 照片上传网格
|
|
|
- 下部:生成报修工单开关 + 报修类型选择
|
|
|
- 底部:提交上报按钮
|
|
|
- **操作按钮**:
|
|
|
| 按钮 | 权限 | 说明 |
|
|
|
|------|------|------|
|
|
|
| 拍照上传 | — | 拍摄异常照片 |
|
|
|
| 提交上报 | — | 上报异常,如选择生成工单则同时创建报修工单 |
|
|
|
|
|
|
### 页面5:巡检历史列表
|
|
|
|
|
|
- **页面路径**:`/pages/inspection/history`
|
|
|
- **页面元素**:
|
|
|
- 日期选择器(按月切换)
|
|
|
- 巡检记录列表
|
|
|
- 下拉刷新 + 上拉加载
|
|
|
- **查询条件**:
|
|
|
| 条件 | 类型 | 说明 |
|
|
|
|------|------|------|
|
|
|
| 月份 | 月份选择器 | 按月筛选巡检记录 |
|
|
|
- **列表字段**:
|
|
|
| 字段 | 说明 |
|
|
|
|------|------|
|
|
|
| 巡检日期 | 日期时间 |
|
|
|
| 巡检区域 | 区域名称 |
|
|
|
| 打卡方式 | 蓝牙/手动/补录 |
|
|
|
| 检查项总数 | 总计 |
|
|
|
| 异常数 | 异常项数量 |
|
|
|
| 状态 | 正常/异常 |
|
|
|
- **界面布局**:
|
|
|
- 顶部:月份选择器
|
|
|
- 中部:巡检记录卡片列表
|
|
|
- 卡片顶部:日期 + 状态标签
|
|
|
- 卡片中部:区域 + 打卡方式
|
|
|
- 卡片底部:检查项总数 + 异常数
|
|
|
- **操作按钮**:
|
|
|
| 按钮 | 权限 | 说明 |
|
|
|
|------|------|------|
|
|
|
| 查看详情 | inspection:task:view | 查看巡检记录详情 |
|
|
|
|
|
|
### 页面6:异常数据补录页
|
|
|
|
|
|
- **页面路径**:`/pages/inspection/supplement`
|
|
|
- **页面元素**:
|
|
|
- 补录原因选择(下拉:蓝牙失灵/定位失败/系统异常/其他)
|
|
|
- 补录说明(多行文本,必填)
|
|
|
- 证明材料上传(照片,最多3张)
|
|
|
- 巡检记录补录表单
|
|
|
- 巡检时间(手动选择)
|
|
|
- 巡检区域
|
|
|
- 检查项结果(逐项填写)
|
|
|
- **界面布局**:
|
|
|
- 顶部:补录原因选择 + 说明
|
|
|
- 中部:证明材料上传
|
|
|
- 下部:巡检记录补录表单
|
|
|
- 底部:提交补录申请按钮
|
|
|
- **操作按钮**:
|
|
|
| 按钮 | 权限 | 说明 |
|
|
|
|------|------|------|
|
|
|
| 提交补录申请 | — | 提交后等待主管审核 |
|
|
|
|
|
|
## 需求追溯
|
|
|
|
|
|
| 功能点编号 | 功能名称 | 文档来源 | 后续服务 | 关联功能 |
|
|
|
|------------|----------|----------|----------|----------|
|
|
|
| MP-I-01 | 今日巡检任务 | 02-小程序端 §3 | 查看任务→开始巡检→蓝牙打卡 | 巡检计划(Web端) |
|
|
|
| MP-I-02 | 蓝牙强制打卡 | 02-小程序端 §3 | 打卡成功→记录check_type=BLUETOOTH→开始巡检 | 蓝牙策略配置 |
|
|
|
| MP-I-03 | 巡检执行 | 02-小程序端 §3 | 逐项检查→记录正常/异常→提交 | 巡检计划清单 |
|
|
|
| MP-I-04 | 异常上报 | 02-小程序端 §3 | 上报→可一键生成报修工单→通知主管 | 在线报修(报修工单) |
|
|
|
| MP-I-05 | 巡检历史 | 02-小程序端 §3 | 查看个人历史巡检记录 | 统计报表 |
|
|
|
| MP-I-06 | 异常数据补录 | 02-小程序端 §3 | 提交补录→主管审核→审核通过后数据生效 | 补录审核(Web+小程序) |
|
|
|
|
|
|
## 业务规则
|
|
|
|
|
|
1. **蓝牙策略规则**(06-项目技术要求.md §4.4):
|
|
|
- 策略=REQUIRED(强制蓝牙):
|
|
|
- 必须连接蓝牙Beacon后才可打卡
|
|
|
- 拍照也须在蓝牙连接状态下进行
|
|
|
- 蓝牙扫描超时3秒,重试3次
|
|
|
- 未检测到蓝牙 → 提示"未检测到蓝牙信号" → 可重试或进入补录模式
|
|
|
- 打卡记录 `check_type=BLUETOOTH`
|
|
|
- 策略=OPTIONAL(非强制蓝牙):
|
|
|
- 用户选择打卡方式:蓝牙打卡或手动打卡
|
|
|
- 手动打卡:`check_type=MANUAL`
|
|
|
|
|
|
2. **蓝牙连接判定**(06-项目技术要求.md §5.4):
|
|
|
- **不判断距离,只要成功连接蓝牙设备即可打卡**
|
|
|
- 信号阈值:RSSI > -70dBm(可配置,仅用于判定是否能建立连接)
|
|
|
- 扫描超时:3秒
|
|
|
- 重试次数:3次
|
|
|
|
|
|
3. **蓝牙策略查询**(03-业务流转逻辑-小程序端 §3):
|
|
|
- 数据来源:`GET /system/bluetooth-policy → inspection_check_in`(打卡策略)
|
|
|
- 数据来源:`GET /system/bluetooth-policy → inspection_photo`(拍照策略)
|
|
|
|
|
|
4. **异常上报关联报修**(03-业务流转逻辑-小程序端 §3):
|
|
|
- 异常上报时可一键生成报修工单
|
|
|
- 数据写入报修模块(INSPECTION_ABNORMAL事件 → repair模块消费)
|
|
|
|
|
|
5. **补录数据规则**(06-项目技术要求.md §4.5):
|
|
|
- 补录数据必须标记 `is_supplement=true`
|
|
|
- 补录原因必填
|
|
|
- 需主管审核(Web+小程序均可审核)
|
|
|
|
|
|
6. **数据权限**(01-模块划分.md §1.3):
|
|
|
- 巡检人员:仅本人巡检数据
|
|
|
- 主管:本班组巡检数据
|
|
|
|
|
|
## 状态流转
|
|
|
|
|
|
### 巡检任务状态流转
|
|
|
|
|
|
```
|
|
|
待执行 ──[蓝牙打卡]──▶ 进行中 ──[逐项检查]──▶ 已完成
|
|
|
│ │
|
|
|
│ └──[发现异常]──▶ 异常(可一键报修)
|
|
|
│
|
|
|
└──[蓝牙失败]──▶ 补录模式 ──[手动填写]──▶ 待审核 ──[主管通过]──▶ 已完成
|
|
|
└──[主管驳回]──▶ 已驳回
|
|
|
```
|
|
|
|
|
|
### 蓝牙打卡流程
|
|
|
|
|
|
```
|
|
|
开始打卡
|
|
|
│
|
|
|
查询蓝牙策略(inspection_check_in)
|
|
|
│
|
|
|
┌───策略=REQUIRED───┐
|
|
|
│ 自动扫描蓝牙Beacon │
|
|
|
│ │ │
|
|
|
│ ┌──检测到Beacon──┐ ┌──未检测到──┐
|
|
|
│ │ 连接蓝牙 │ │ 提示未检测 │
|
|
|
│ │ 连接成功→打卡 │ │ 重试/补录 │
|
|
|
│ │ check_type= │ └────────────┘
|
|
|
│ │ BLUETOOTH │
|
|
|
│ └────────────────┘
|
|
|
└────────────────────┘
|
|
|
│
|
|
|
┌───策略=OPTIONAL───┐
|
|
|
│ 选择打卡方式 │
|
|
|
│ ┌蓝牙打卡─手动打卡┐│
|
|
|
│ │BLUETOOTH MANUAL││
|
|
|
│ └────────────────┘│
|
|
|
└────────────────────┘
|
|
|
```
|