# 盘点系统业务对接文档 ## 项目概述 ### 项目背景 盘点系统是用于实现仓库库存自动盘点的系统,通过RFID设备自动采集货品信息,并与系统库存数据进行比对,以实现库存的精确管理。 ### 项目目标 - 实现盘点任务的创建和管理 - 通过RFID设备自动采集货品标签信息 - 与系统库存数据进行比对分析 - 生成盘点结果报告 ## 盘点系统业务流程 ### 1. 任务创建阶段 - **业务内容**:在系统中创建盘点任务,指定盘点范围(仓库、区域、货品类别等) - **数据准备**:系统获取当前库存数据作为基准数据 - **任务分配**:将盘点任务分配给指定的RFID设备 ### 2. 设备执行阶段 - **设备连接**:RFID设备连接到系统 - **任务下发**:系统将盘点任务下发到RFID设备 - **标签采集**:RFID设备在指定区域扫描,采集货品标签信息 - **数据传输**:将采集到的标签数据实时传输回系统 ### 3. 结果采集阶段 - **数据收集**:系统收集从RFID设备传回的标签数据 - **数据验证**:验证数据完整性和准确性 - **暂存处理**:将采集到的数据暂存到临时表 ### 4. 结果匹配阶段 - **数据比对**:将采集到的标签数据与系统库存数据进行比对 - **状态标识**: - 正常:系统中有记录,且实物存在(标签被扫描到) - 盘亏:系统中有记录,但实物不存在(标签未被扫描到) - 盘盈:系统中无记录,但实物存在(标签被扫描到但无对应库存) - **差异分析**:统计盘点差异情况 ### 5. 结果输出阶段 - **报告生成**:生成盘点结果报告,包括正常、盘亏、盘盈等统计 - **结果展示**:通过图表和列表展示盘点结果 - **异常处理**:对盘点异常情况进行标注和处理 - **任务完成**:标记盘点任务为完成状态 ## 合作方需要提供的信息 ### 1. RFID设备技术信息 - 设备型号和规格 - 网络连接方式(IP地址、端口) - 通信协议类型 - 设备API接口文档 - 设备认证和安全机制 ### 2. 设备集成接口 - 设备连接接口(TCP/UDP/HTTP等) - 标签数据获取接口 - 设备状态查询接口 - 设备控制接口(开始/停止扫描等) ### 3. 数据格式规范 - 标签数据格式 - 数据传输格式(JSON/XML等) - 字符编码方式 - 数据字段定义 ## 我方执行流程 ### 1. 接口对接阶段 - **技术对接**:根据合作方提供的API文档,开发与RFID设备的接口 - **连接测试**:测试设备连接功能,确保能够正常建立连接 - **数据传输测试**:测试标签数据的获取和传输功能 ### 2. 任务管理实现 - **任务创建**:开发盘点任务管理模块,支持任务的创建、分配、状态管理 - **设备绑定**:实现盘点任务与RFID设备的绑定关系 - **权限控制**:确保任务的安全性和完整性 ### 3. 数据处理实现 - **实时接收**:实现标签数据的实时接收和处理机制 - **WebSocket通信**:通过WebSocket将采集到的标签数据实时推送到前端 - **数据存储**:将采集到的数据存储到系统中 ### 4. 匹配算法实现 - **数据比对**:开发扫描数据与库存数据的匹配算法 - **差异计算**:计算盘点差异,标识盘盈、盘亏、正常等状态 - **统计分析**:生成盘点统计报告和图表 ### 5. 结果展示实现 - **结果展示**:开发盘点结果的展示界面 - **报表生成**:实现盘点报告的生成和导出功能 - **异常处理**:处理盘点过程中的异常情况 ## 对外接口规范 ### 1. 设备连接接口(/AutoInventory/connect) #### 接口说明 建立RFID设备连接 #### 请求方式 POST #### 请求参数 | 参数名 | 类型 | 必填 | 说明 | |--------|------|------|------| | deviceId | String | 是 | 设备ID | | ip | String | 是 | 设备IP地址 | | port | Integer | 是 | 设备端口号 | #### 响应参数 | 参数名 | 类型 | 说明 | |--------|------|------| | code | Integer | 响应码(200表示成功) | | msg | String | 响应消息 | ### 2. 开始盘点接口(/AutoInventory/scan) #### 接口说明 启动RFID设备进行标签扫描 #### 请求方式 GET #### 请求参数 | 参数名 | 类型 | 必填 | 说明 | |--------|------|------|------| | deviceId | String | 是 | 设备ID | #### 响应参数 | 参数名 | 类型 | 说明 | |--------|------|------| | code | Integer | 响应码(200表示成功) | | msg | String | 响应消息 | ### 3. 停止盘点接口(/AutoInventory/stop) #### 接口说明 停止RFID设备扫描 #### 请求方式 GET #### 请求参数 | 参数名 | 类型 | 必填 | 说明 | |--------|------|------|------| | deviceId | String | 是 | 设备ID | #### 响应参数 | 参数名 | 类型 | 说明 | |--------|------|------| | code | Integer | 响应码(200表示成功) | | msg | String | 响应消息 | ### 4. 断开连接接口(/AutoInventory/disconnect) #### 接口说明 断开RFID设备连接 #### 请求方式 GET #### 请求参数 | 参数名 | 类型 | 必填 | 说明 | |--------|------|------|------| | deviceId | String | 是 | 设备ID | #### 响应参数 | 参数名 | 类型 | 说明 | |--------|------|------| | code | Integer | 响应码(200表示成功) | | msg | String | 响应消息 | ### 5. 设备状态查询接口(/AutoInventory/status) #### 接口说明 查询RFID设备连接状态 #### 请求方式 GET #### 请求参数 | 参数名 | 类型 | 必填 | 说明 | |--------|------|------|------| | deviceId | String | 是 | 设备ID | #### 响应参数 | 参数名 | 类型 | 说明 | |--------|------|------| | code | Integer | 响应码(200表示成功) | | msg | String | 响应消息(包含设备连接状态) | ### 6. 开始匹配接口(/AutoInventory/match) #### 接口说明 将扫描数据与系统库存数据进行匹配 #### 请求方式 POST #### 请求参数 | 参数名 | 类型 | 必填 | 说明 | |--------|------|------|------| | taskId | String | 是 | 盘点任务ID | | deviceId | String | 是 | 设备ID | | scanType | Integer | 是 | 扫描类型(0=手动盘点,1=自动盘点) | #### 响应参数 | 参数名 | 类型 | 说明 | |--------|------|------| | code | Integer | 响应码(200表示成功) | | msg | String | 响应消息 | ### 7. 盘点任务管理接口(/Inventory/task) #### 接口说明 管理盘点任务的增删改查 #### 请求方式 POST/GET/PUT/DELETE #### 主要功能 - 新增盘点任务 - 查询盘点任务列表 - 修改盘点任务 - 删除盘点任务 - 导出盘点任务 ## 系统工作流程 ```mermaid graph TD A[创建盘点任务] --> B[RFID设备连接] B --> C[下发盘点任务到设备] C --> D[设备开始标签扫描] D --> E[实时收集标签数据] E --> F{是否完成扫描?} F -->|是| G[停止扫描] F -->|否| D G --> H[数据比对分析] H --> I[生成盘点结果] I --> J[输出盘点报告] J --> K[任务完成] ``` ## 系统开发工作内容 ### 1. 设备接口开发工作 #### 1.1 RFID设备连接接口开发 - **工作内容**:开发RFID设备连接、断开、状态查询接口 - **技术实现**: - TCP连接管理 - 设备状态跟踪 - 连接池管理 - 异常处理机制 - **预计工时**:24小时 #### 1.2 盘点控制接口开发 - **工作内容**:开发开始盘点、停止盘点等控制接口 - **技术实现**: - 设备控制指令发送 - 扫描状态管理 - 线程安全控制 - **预计工时**:16小时 ### 2. 数据处理开发工作 #### 2.1 扫描数据处理开发 - **工作内容**:处理RFID设备扫描的标签数据 - **技术实现**: - 实时数据接收 - WebSocket通信 - 数据格式化处理 - 数据存储 - **预计工时**:28小时 #### 2.2 数据匹配算法开发 - **工作内容**:开发扫描数据与库存数据的匹配算法 - **技术实现**: - 匹配算法设计 - 数据对比逻辑 - 状态标识处理 - 统计计算 - **预计工时**:32小时 ### 3. 任务管理开发工作 #### 3.1 盘点任务管理开发 - **工作内容**:开发盘点任务的增删改查功能 - **技术实现**: - 任务数据模型设计 - 任务状态管理 - 任务分配逻辑 - 任务进度跟踪 - **预计工时**:24小时 #### 3.2 报告生成开发 - **工作内容**:开发盘点报告生成和统计功能 - **技术实现**: - 数据统计算法 - 图表生成 - 报告导出功能 - 历史数据查询 - **预计工时**:20小时 ### 4. 系统集成开发工作 #### 4.1 WebSocket通信开发 - **工作内容**:实现实时数据传输功能 - **技术实现**: - WebSocket服务端开发 - 设备标识管理 - 消息推送机制 - **预计工时**:20小时 ## 项目交付物 1. **技术文档** - 盘点系统接口规范文档 - 部署手册 - 运维手册 - 用户操作手册 2. **软件系统** - 盘点系统核心程序 - 数据库脚本 - 配置文件 3. **测试报告** - 单元测试报告 - 集成测试报告 - 性能测试报告 - 用户验收测试报告 ## 服务收费标准 ### 盘点系统开发服务 #### 1. 设备接口开发(40小时) - RFID设备连接接口:24小时 - 盘点控制接口:16小时 #### 2. 数据处理开发(60小时) - 扫描数据处理:28小时 - 数据匹配算法:32小时 #### 3. 任务管理开发(44小时) - 盘点任务管理:24小时 - 报告生成:20小时 #### 4. 系统集成开发(20小时) - WebSocket通信:20小时 **总计开发工时:164小时**