仓库管理系统WMS的标签打印解决方案

简介: 在仓库管理的业务场景中,实现标签打印。

需求分析

  1. 多端:发起标签打印的终端有 App 和 Web
  2. 批量:除了单个打印,还需要支持后台自动批量打印
  3. 便携:仓库人员能随身携带打印机,出标签后直接贴到对应库位或物品上

调研标签机

  1. 云打印机如飞鹅云都是需要插电的,没有电池,无法在仓库随身携带;
  2. 汉印蓝牙标签打印机,无法支持Web端发起打印请求
  3. 最后选定 优博讯 UROVO K329 WIFI版。

Web触发打印方案分析

标签打印机有2种调用方式:

  • 驱动模式:在Windows上安装驱动,发送要打印的数据到打印机
  • 指令模式:将 tspl,cpcl或esc 指令通过蓝牙或者WIFI方式发送到打印机

使用驱动模式的话,App端无法发送数据,Web端也必须先生成图片或PDF,无法跳过浏览器的文件存储逻辑,也就无法实现后台静默自动打印。

使用指令模式,由于蓝牙距离限制,PC和打印机通过蓝牙通信是不稳定的,所以采用 WIFI 连接发送数据。

其实也可以主要用App蓝牙交互的逻辑,Web把数据推到队列,App轮询接口或者websockt连接,和前端同事讨论对App性能有影响。

另外考虑到工期和前端工作量问题,App端的打印调API来还是走Web转发打印的逻辑,后期可以实现App通过蓝牙发指令到打印机,这样会更稳定,毕竟WiFi信号离路由器远了也会变弱。

流程确认

  1. App和Web向队列写数据
  2. PC上运行一个打印数据转发程序 Printer.exe,向服务器请求打印数据
  3. PC程序 Printer.exe 向打印机发送打印指令数据

考虑到将 Rabbitmq 的配置写到exe程序里会有安全问题,所以还是才用接口轮询的方法,让 Printer.exe 每隔一秒去请求打印数据。

基于 Python 实现打印数据转发程序

主要实现以下几个功能:

  • 请求数据接口
  • 向标签机 IP:PORT 发送打印指令
  • 定时重复请求
  • 记录日志,清理7天前的日志文件
  • 使用 pyinstaller -F .\printer.py 打包成exe程序
目录
相关文章
|
存储 网络协议 安全
部署打印服务(一)
部署打印服务(一)
830 0
|
7月前
|
人工智能 监控 大数据
大数据未来五大趋势,这些变化你真的准备好了吗?
大数据未来五大趋势,这些变化你真的准备好了吗?
517 90
|
9月前
|
监控 JavaScript 数据可视化
建筑施工一体化信息管理平台源码,支持微服务架构,采用Java、Spring Cloud、Vue等技术开发。
智慧工地云平台是专为建筑施工领域打造的一体化信息管理平台,利用大数据、云计算、物联网等技术,实现施工区域各系统数据汇总与可视化管理。平台涵盖人员、设备、物料、环境等关键因素的实时监控与数据分析,提供远程指挥、决策支持等功能,提升工作效率,促进产业信息化发展。系统由PC端、APP移动端及项目、监管、数据屏三大平台组成,支持微服务架构,采用Java、Spring Cloud、Vue等技术开发。
339 7
|
11月前
|
机器学习/深度学习 编解码 搜索推荐
实测13个类Sora视频生成模型,8000多个案例,一次看个够
SORA-like模型是一类基于OpenAI的SORA模型发展而来的视频生成技术,以其在生成高质量视频上的卓越表现受到关注。该模型不仅提升了视频的分辨率、自然度和视觉语言对齐,还增强了对长视频序列的可控性。适用于内容创作、世界模拟等多种场景,展现出广泛的应用潜力。然而,模型在自动化评估、与人类偏好匹配及处理复杂运动上仍面临挑战。未来研究将聚焦于多模态、连续、交互式及个性化视频生成等领域。
712 2
|
人工智能 决策智能 数据安全/隐私保护
新加坡AI监管政策
【1月更文挑战第19天】新加坡AI监管政策
647 1
新加坡AI监管政策
|
JavaScript Java Spring
springboot+vue 实现校园二手商城(毕业设计一)
这篇文章介绍了一个使用Spring Boot和Vue实现的校园二手商城系统的毕业设计,包括用户和商家的功能需求,如登录注册、订单管理、商品评价、联系客服等,以及项目依赖项的安装过程。
springboot+vue 实现校园二手商城(毕业设计一)
|
前端开发
什么是 Mock 测试?
Mock 是在前后端分离开发中,用于模拟后端数据的工具,让前端能提前开发而无需等待真实接口。它的重要性在于加速协同开发,避免因数据延迟导致的阻塞。通过工具如 Apifox,可以创建请求,设定 Mock 参数和测试脚本,进行 Mock 测试以确保数据符合预期。了解 Mock.js 语法有助于更好地进行 Mock 测试。
549 1
|
存储 缓存 前端开发
综合性练习(验证码案例)
综合性练习(验证码案例)
179 6
|
JSON API 数据格式
curl 使用:命令行中的 HTTP 客户端
`curl` 是命令行神器,用于与服务器交互,支持HTTP、HTTPS、FTP等协议。本文教你如何用它做POST请求(-d/--data)、GET请求(-G/-d)、JSON请求(-H 'Content-Type: application/json')和文件上传(-F)。学会这些,轻松测试API、自动化任务。现在就动手试试吧!
317 0
|
弹性计算 物联网 Serverless
如何获得ICP备案服务码?
如何获得ICP备案服务码?