|
|
# 保洁相关功能
|
|
|
|
|
|
> 模块编码:cleaning
|
|
|
> 端侧:微信小程序
|
|
|
> 关联文档:01-模块划分.md(v4.0)、02-功能清单-小程序端.md(§4)、03-业务流转逻辑-小程序端.md(§4)、05-接口规范.md(§9)、06-项目技术要求.md
|
|
|
|
|
|
## 功能概览
|
|
|
|
|
|
| 项目 | 说明 |
|
|
|
|------|------|
|
|
|
| 菜单名称 | 保洁管理 |
|
|
|
| 子菜单 | 今日保洁任务 / 保洁执行 / 保洁历史 |
|
|
|
| 功能编号 | MP-CL-01 ~ MP-CL-07 |
|
|
|
| 权限编码 | cleaning:task:*、cleaning:spot-check:*、cleaning:supplement:* |
|
|
|
|
|
|
## 页面清单
|
|
|
|
|
|
### 页面1:今日保洁任务
|
|
|
|
|
|
- **页面路径**:`/pages/cleaning/today`
|
|
|
- **适用角色**:保洁人员
|
|
|
- **页面元素**:
|
|
|
- 日期显示(当天日期)
|
|
|
- 任务统计卡片(待执行/进行中/已完成)
|
|
|
- 任务列表
|
|
|
- **查询条件**:无(自动按当天+本人过滤)
|
|
|
- **列表字段**:
|
|
|
|
|
|
| 字段 | 类型 | 说明 |
|
|
|
|------|------|------|
|
|
|
| 任务名称 | 文本 | 保洁区域+任务类型 |
|
|
|
| 保洁区域 | 标签 | 关联区域名称 |
|
|
|
| 计划时间 | 时间 | 预计开始时间 |
|
|
|
| 状态 | 标签 | 待执行/进行中/已完成/超时 |
|
|
|
| 蓝牙状态 | 图标 | 是否需蓝牙打卡 |
|
|
|
|
|
|
- **界面布局**:
|
|
|
- 顶部:日期 + 统计数字横向排列
|
|
|
- 中部:任务卡片列表,每张卡片显示区域、时间、状态
|
|
|
- 底部:无操作栏
|
|
|
- **操作按钮**:
|
|
|
- 「开始执行」→ 进入保洁执行页(权限:cleaning:task:update)
|
|
|
- 「查看详情」→ 查看任务详情
|
|
|
|
|
|
**需求追溯**:
|
|
|
|
|
|
| 功能点编号 | 功能名称 | 文档来源 | 后续服务 | 关联功能 |
|
|
|
|------------|----------|----------|----------|----------|
|
|
|
| MP-CL-01 | 今日保洁任务 | 02-小程序端 §4 | 蓝牙打卡确认 | 保洁执行 |
|
|
|
|
|
|
---
|
|
|
|
|
|
### 页面2:蓝牙强制打卡确认
|
|
|
|
|
|
- **页面路径**:`/pages/cleaning/check-in`(从今日任务页面跳转)
|
|
|
- **适用角色**:保洁人员
|
|
|
- **页面元素**:
|
|
|
- 蓝牙扫描状态指示器(扫描中/已连接/未检测到)
|
|
|
- 当前打卡点名称
|
|
|
- 蓝牙信号强度显示
|
|
|
- 重试按钮
|
|
|
- 补录入口(蓝牙未连接时显示)
|
|
|
- **查询条件**:无
|
|
|
- **列表字段**:无
|
|
|
- **界面布局**:
|
|
|
- 顶部:打卡点名称 + 蓝牙状态大图标
|
|
|
- 中部:蓝牙连接动画(扫描→连接→成功)
|
|
|
- 底部:操作按钮区
|
|
|
- **操作按钮**:
|
|
|
- 「重新扫描」→ 重新搜索蓝牙Beacon
|
|
|
- 「进入补录模式」→ 跳转补录申请页(蓝牙策略=REQUIRED且扫描失败时显示)
|
|
|
- 「确认打卡」→ 记录蓝牙打卡成功(check_type=BLUETOOTH)
|
|
|
|
|
|
**蓝牙策略判断逻辑**:
|
|
|
- 调用 `GET /system/bluetooth-policy → cleaning_check_in`
|
|
|
- 策略=REQUIRED:必须蓝牙连接后才能打卡
|
|
|
- 策略=OPTIONAL:可选蓝牙或手动打卡
|
|
|
|
|
|
**需求追溯**:
|
|
|
|
|
|
| 功能点编号 | 功能名称 | 文档来源 | 后续服务 | 关联功能 |
|
|
|
|------------|----------|----------|----------|----------|
|
|
|
| MP-CL-02 | 蓝牙强制打卡确认 | 02-小程序端 §4 | 保洁执行 | 保洁补录、系统蓝牙配置 |
|
|
|
|
|
|
---
|
|
|
|
|
|
### 页面3:保洁执行
|
|
|
|
|
|
- **页面路径**:`/pages/cleaning/execute`
|
|
|
- **适用角色**:保洁人员
|
|
|
- **页面元素**:
|
|
|
- 任务信息卡片(区域、类型、时间)
|
|
|
- 保洁清单(逐项检查列表)
|
|
|
- 每项操作按钮(完成/标记异常)
|
|
|
- 完成后照片上传区(≤9张,含水印时间定位)
|
|
|
- 蓝牙拍照提示(策略=REQUIRED时显示)
|
|
|
- **查询条件**:无
|
|
|
- **列表字段**:
|
|
|
|
|
|
| 字段 | 类型 | 说明 |
|
|
|
|------|------|------|
|
|
|
| 检查项名称 | 文本 | 保洁清单项目 |
|
|
|
| 状态 | 标签 | 待完成/已完成/异常 |
|
|
|
| 备注 | 文本 | 异常时填写说明 |
|
|
|
|
|
|
- **界面布局**:
|
|
|
- 顶部:任务信息摘要卡片
|
|
|
- 中部:保洁清单列表(逐项勾选)
|
|
|
- 底部:照片上传区 + 提交按钮
|
|
|
- **操作按钮**:
|
|
|
- 「完成该项」→ 标记该项完成
|
|
|
- 「标记异常」→ 跳转异常反馈页
|
|
|
- 「拍照」→ 调用相机拍照(蓝牙策略=REQUIRED时须在蓝牙连接状态下进行)
|
|
|
- 「提交完成」→ 提交整个保洁任务
|
|
|
|
|
|
**需求追溯**:
|
|
|
|
|
|
| 功能点编号 | 功能名称 | 文档来源 | 后续服务 | 关联功能 |
|
|
|
|------------|----------|----------|----------|----------|
|
|
|
| MP-CL-03 | 保洁执行 | 02-小程序端 §4 | 主管抽查 | 保洁异常反馈 |
|
|
|
|
|
|
---
|
|
|
|
|
|
### 页面4:异常反馈
|
|
|
|
|
|
- **页面路径**:`/pages/cleaning/abnormal`
|
|
|
- **适用角色**:保洁人员
|
|
|
- **页面元素**:
|
|
|
- 异常描述输入框(多行文本)
|
|
|
- 拍照上传区(≤9张,含水印时间定位)
|
|
|
- 严重程度选择(一般/严重/紧急)
|
|
|
- 提交按钮
|
|
|
- **查询条件**:无
|
|
|
- **列表字段**:无
|
|
|
- **界面布局**:
|
|
|
- 顶部:异常类型提示
|
|
|
- 中部:照片上传 + 描述填写
|
|
|
- 底部:提交按钮
|
|
|
- **操作按钮**:
|
|
|
- 「拍照」→ 调用相机
|
|
|
- 「提交反馈」→ 提交异常反馈
|
|
|
|
|
|
**需求追溯**:
|
|
|
|
|
|
| 功能点编号 | 功能名称 | 文档来源 | 后续服务 | 关联功能 |
|
|
|
|------------|----------|----------|----------|----------|
|
|
|
| MP-CL-04 | 异常反馈 | 02-小程序端 §4 | 通知主管 | 保洁管理(Web端) |
|
|
|
|
|
|
---
|
|
|
|
|
|
### 页面5:保洁抽查
|
|
|
|
|
|
- **页面路径**:`/pages/cleaning/spot-check`
|
|
|
- **适用角色**:主管
|
|
|
- **页面元素**:
|
|
|
- 待抽查任务列表
|
|
|
- 任务详情查看
|
|
|
- 抽查结果标记(合格/不合格)
|
|
|
- 不合格原因输入框
|
|
|
- 不合格照片上传
|
|
|
- **查询条件**:
|
|
|
- 日期筛选
|
|
|
- 区域筛选
|
|
|
- 状态筛选(待抽查/合格/不合格)
|
|
|
- **列表字段**:
|
|
|
|
|
|
| 字段 | 类型 | 说明 |
|
|
|
|------|------|------|
|
|
|
| 区域 | 文本 | 保洁区域名称 |
|
|
|
| 执行人 | 文本 | 保洁人员姓名 |
|
|
|
| 完成时间 | 时间 | 实际完成时间 |
|
|
|
| 抽查状态 | 标签 | 待抽查/合格/不合格 |
|
|
|
|
|
|
- **界面布局**:
|
|
|
- 顶部:筛选条件横向滑动
|
|
|
- 中部:任务卡片列表
|
|
|
- 弹窗:抽查结果标记弹窗
|
|
|
- **操作按钮**:
|
|
|
- 「合格」→ 确认完成(权限:cleaning:spot-check:approve)
|
|
|
- 「不合格」→ 填写原因后重新生成任务
|
|
|
|
|
|
**需求追溯**:
|
|
|
|
|
|
| 功能点编号 | 功能名称 | 文档来源 | 后续服务 | 关联功能 |
|
|
|
|------------|----------|----------|----------|----------|
|
|
|
| MP-CL-05 | 保洁抽查 | 02-小程序端 §4 | 不合格时重新生成任务 | 保洁管理(Web端) |
|
|
|
|
|
|
---
|
|
|
|
|
|
### 页面6:保洁历史
|
|
|
|
|
|
- **页面路径**:`/pages/cleaning/history`
|
|
|
- **适用角色**:保洁人员
|
|
|
- **页面元素**:
|
|
|
- 月份选择器
|
|
|
- 历史任务列表
|
|
|
- 任务详情查看
|
|
|
- **查询条件**:
|
|
|
- 月份筛选
|
|
|
- 状态筛选(全部/正常/异常/补录)
|
|
|
- **列表字段**:
|
|
|
|
|
|
| 字段 | 类型 | 说明 |
|
|
|
|------|------|------|
|
|
|
| 日期 | 日期 | 执行日期 |
|
|
|
| 区域 | 文本 | 保洁区域 |
|
|
|
| 状态 | 标签 | 正常/异常/补录 |
|
|
|
| 打卡方式 | 标签 | 蓝牙/手动/补录 |
|
|
|
|
|
|
- **界面布局**:
|
|
|
- 顶部:月份选择器 + 统计数字
|
|
|
- 中部:按日期分组的任务列表
|
|
|
- 底部:无操作栏
|
|
|
- **操作按钮**:
|
|
|
- 「查看详情」→ 查看历史任务详情
|
|
|
|
|
|
**需求追溯**:
|
|
|
|
|
|
| 功能点编号 | 功能名称 | 文档来源 | 后续服务 | 关联功能 |
|
|
|
|------------|----------|----------|----------|----------|
|
|
|
| MP-CL-06 | 保洁历史 | 02-小程序端 §4 | 无 | 保洁执行 |
|
|
|
|
|
|
---
|
|
|
|
|
|
### 页面7:异常数据补录
|
|
|
|
|
|
- **页面路径**:`/pages/cleaning/supplement`
|
|
|
- **适用角色**:保洁人员(蓝牙失灵/定位失败时)
|
|
|
- **页面元素**:
|
|
|
- 补录原因选择(蓝牙故障/手机异常/系统异常/其他)
|
|
|
- 补录说明输入框
|
|
|
- 手动填写保洁记录
|
|
|
- 照片上传区(补录证据)
|
|
|
- 提交按钮
|
|
|
- **查询条件**:无
|
|
|
- **列表字段**:无
|
|
|
- **界面布局**:
|
|
|
- 顶部:补录模式提示(红色警示条)
|
|
|
- 中部:原因选择 + 说明填写 + 保洁记录
|
|
|
- 底部:提交按钮
|
|
|
- **操作按钮**:
|
|
|
- 「提交补录」→ 提交补录申请(需主管审核)
|
|
|
|
|
|
**补录数据标记**:
|
|
|
- 所有补录数据标记 `is_supplement=true`
|
|
|
- `supplement_reason`:补录原因
|
|
|
- `check_type=MANUAL`
|
|
|
|
|
|
**需求追溯**:
|
|
|
|
|
|
| 功能点编号 | 功能名称 | 文档来源 | 后续服务 | 关联功能 |
|
|
|
|------------|----------|----------|----------|----------|
|
|
|
| MP-CL-07 | 异常数据补录 | 02-小程序端 §4 | 主管审核补录 | 操作日志、考勤补录审核 |
|
|
|
|
|
|
---
|
|
|
|
|
|
## 业务规则
|
|
|
|
|
|
1. **蓝牙策略**:保洁打卡和拍照均受蓝牙策略控制(`GET /system/bluetooth-policy → cleaning_check_in` / `cleaning_photo`)
|
|
|
2. **蓝牙强制打卡**:策略=REQUIRED时,必须连接蓝牙Beacon后才可确认完成,拍照也须在蓝牙连接状态下进行
|
|
|
3. **非强制蓝牙**:策略=OPTIONAL时,可选蓝牙打卡(check_type=BLUETOOTH)或手动打卡(check_type=MANUAL)
|
|
|
4. **补录审核**:所有蓝牙失灵的补录数据需主管在Web端或小程序端审核
|
|
|
5. **补录标记**:补录数据必须标记 `is_supplement=true`,并在操作日志中记录
|
|
|
6. **照片水印**:所有照片自动添加时间+位置水印,蓝牙场景标记 `bluetooth_connected`
|
|
|
7. **抽查不合格**:主管标记不合格后,系统自动重新生成保洁任务
|
|
|
8. **照片数量**:单次上传最多9张照片
|
|
|
|
|
|
## 状态流转
|
|
|
|
|
|
### 保洁任务状态
|
|
|
|
|
|
```
|
|
|
待执行 → 进行中 → 待抽查 → 已完成
|
|
|
↓
|
|
|
异常反馈 → 待处理
|
|
|
↓
|
|
|
主管抽查 → 合格 → 已完成
|
|
|
→ 不合格 → 重新生成任务
|
|
|
```
|
|
|
|
|
|
### 补录流程
|
|
|
|
|
|
```
|
|
|
蓝牙失灵/定位失败
|
|
|
│
|
|
|
进入补录模式
|
|
|
│
|
|
|
选择补录原因 + 手动填写记录
|
|
|
│
|
|
|
提交补录申请(is_supplement=true)
|
|
|
│
|
|
|
主管审核(Web/小程序均可)
|
|
|
│
|
|
|
┌─审核通过─┐ ┌─审核驳回─┐
|
|
|
补录生效 通知员工
|
|
|
记录审核日志 记录审核日志
|
|
|
```
|