方案设计:房产交房验房快速处理
← 返回场景概览 | 上一阶段:需求探索 → | 下一阶段:开发资产 →
方案概览
本方案设计了一套高效的房产交房验房快速处理系统,通过扫码/语音快速报单、热敏自动打印、优先级智能派单,解决交房时段打印量大、问题优先级不清、报单效率低等痛点。
1. 快速报单流程
1.1 报单方式
方式一:扫码报单
方式二:语音报单
1.2 问题分类规则
| 问题类型 | 严重程度 | 处理优先级 | 要求处理时间 |
|---|---|---|---|
| 漏水、漏电 | 严重 | P0(最高) | 2 小时内 |
| 门窗无法开关 | 严重 | P0 | 2 小时内 |
| 墙面大面积裂缝 | 一般 | P1 | 24 小时内 |
| 墙面小裂缝 | 小瑕疵 | P2 | 3 天内 |
| 开关不灵敏 | 小瑕疵 | P2 | 3 天内 |
1.3 严重程度自动判断
判断规则:
typescript
function judgeSeverity(problemType: string, description: string): Severity {
// 严重问题关键词
const criticalKeywords = ['漏水', '漏电', '无法', '不能', '严重'];
// 一般问题关键词
const normalKeywords = ['裂缝', '不平', '松动'];
// 小瑕疵关键词
const minorKeywords = ['小', '轻微', '一点点'];
const desc = description.toLowerCase();
// 检查严重问题
if (criticalKeywords.some(kw => desc.includes(kw))) {
return 'critical';
}
// 检查一般问题
if (normalKeywords.some(kw => desc.includes(kw))) {
return 'normal';
}
// 默认小瑕疵
return 'minor';
}2. 自动打印流程
2.1 打印队列管理
2.2 打印规则
规则一:优先级排序
- P0(严重):立即打印,插入队列最前
- P1(一般):按时间顺序,插入队列中间
- P2(小瑕疵):按时间顺序,插入队列末尾
规则二:批量打印控制
- 同一房间的多个问题,合并打印在一张工单上
- 打印队列最多保留 50 张工单,超出部分延后打印
- 打印间隔:每张工单间隔 2 秒,避免打印拥堵
规则三:打印失败处理
- 打印失败自动重试(最多 3 次)
- 连续失败 3 次,通知管理员处理
- 打印失败不影响报单,工单状态标记为"待打印"
2.3 热敏打印优势
- 无需换墨盒:热敏打印不需要墨盒,适合大批量打印
- 打印速度快:热敏打印速度快,适合集中打印
- 自动切断:自动切断纸张,无需手工操作
- 成本低:热敏纸成本低,适合大批量使用
3. 优先级派单规则
3.1 派单流程
3.2 智能派单规则
规则优先级:
- 问题类型匹配:根据问题类型(水电、门窗、墙面等)匹配有相应技能的工程师
- 地理位置就近:优先派给距离最近的工程师
- 工作量均衡:优先派给当前工作量较少的工程师
- 紧急程度:严重问题优先派给在线且有时间的工程师
派单算法:
评分 = 类型匹配度 × 0.3 + 距离得分 × 0.3 + 工作量得分 × 0.2 + 响应速度 × 0.2
选择评分最高的工程师3.3 处理时间要求
| 优先级 | 要求处理时间 | 超时处理 |
|---|---|---|
| P0(严重) | 2 小时内 | 超时自动升级,通知项目经理 |
| P1(一般) | 24 小时内 | 超时提醒工程师 |
| P2(小瑕疵) | 3 天内 | 超时提醒工程师 |
4. 数据模型设计
4.1 验房工单(InspectionOrder)
typescript
interface InspectionOrder {
id: string;
orderNo: string; // 工单编号
roomId: string; // 房间ID
roomNo: string; // 房间号
problemType: string; // 问题类型
description: string; // 问题描述
severity: 'critical' | 'normal' | 'minor'; // 严重程度
priority: 'P0' | 'P1' | 'P2'; // 优先级
images: string[]; // 现场照片
reportedBy: string; // 报单人
reportedTime: Date; // 报单时间
printedTime?: Date; // 打印时间
assignedEngineerId?: string; // 分配的工程师
assignedTime?: Date; // 派单时间
startTime?: Date; // 开始处理时间
completeTime?: Date; // 完成时间
status: 'reported' | 'printed' | 'assigned' | 'in-progress' | 'completed';
createdAt: Date;
updatedAt: Date;
}4.2 打印队列(PrintQueue)
typescript
interface PrintQueue {
id: string;
orderId: string; // 工单ID
priority: 'P0' | 'P1' | 'P2'; // 优先级
queuePosition: number; // 队列位置
status: 'pending' | 'printing' | 'completed' | 'failed';
printTime?: Date; // 打印时间
retryCount: number; // 重试次数
createdAt: Date;
}5. 权限设计
5.1 角色定义
| 角色 | 权限 |
|---|---|
| 超级管理员 | 所有权限 |
| 项目经理 | 查看所有数据、统计数据、人员管理 |
| 陪同人员 | 报单、查看报单进度 |
| 打印中心 | 打印管理、打印队列管理 |
| 工程师 | 查看自己的工单、接单、完成工单 |
5.2 数据权限
- 项目隔离:不同项目的数据相互隔离
- 角色权限:不同角色只能查看和操作权限范围内的数据
- 数据脱敏:敏感信息(如业主联系方式)按权限脱敏显示
6. 技术架构
6.1 前端
- 陪同人员端:微信小程序(扫码报单、语音报单)
- 打印中心端:Web 后台(打印队列管理)
- 工程师端:移动 App(接单、完成工单)
- 管理端:Web 后台(数据统计、人员管理)
6.2 后端
- API 服务:RESTful API
- 消息推送:工单状态变更、打印完成通知
- 打印服务:热敏打印机驱动、打印队列管理
- 语音识别:集成语音识别服务(如百度、讯飞)
6.3 硬件
- 热敏打印机:支持自动切断的热敏打印机
- 打印服务器:管理打印队列的服务器
7. 关键业务规则总结
7.1 报单规则
- 支持扫码/语音两种报单方式
- 自动识别问题类型和严重程度
- 自动生成工单,无需手工填写
7.2 打印规则
- 按优先级排序打印队列
- 严重问题优先打印
- 热敏打印,无需换墨盒
7.3 派单规则
- 严重问题优先派单
- 智能派单:类型匹配 → 距离优先 → 工作量均衡
- 处理时间要求:严重 2 小时,一般 24 小时,小瑕疵 3 天
下一步:开发资产
在开发资产阶段,我们将:
- 创建 Cursor Skills(业务规则、数据模型)
- 创建 PROMPT 模板(需求调研、方案设计)
- 创建代码模板(API 接口、前端组件)

