Commit Graph

5 Commits

Author SHA1 Message Date
caoqianming 2b3aaf8879 feat: 写指令也短读0.3s捕获机器的ERR回包
之前 expect_reply=False 直接关 socket, 机器若回 ERR 完全感知不到,
表现就是"接口200但实际没动作"。改为写完后短读最多一行, 拿到
ERR/'!' 开头直接报错; 超时则照旧视为成功放行。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-18 15:16:27 +08:00
caoqianming 3304371560 fix: 1880 无参查询指令(GST/GFT/GJD)去掉多余的 '|'
PDF 标题里的 'GST|<CR>' 是排版分隔, 实际帧是 'GST<CR>'。
之前多发了一个 '|' 导致机器回 'ERR\r'。
CQI 之前已是正确写法, 有参指令(JDA/SLA/JDI/SST)不变。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-18 15:15:04 +08:00
caoqianming f8b6f084d4 feat: 重写喷码通讯为伟迪捷1880 ASCII协议, 配置改由前端传入
- 原 CoderClient 用的是 Domino 1000 系列 STX/ETX 二进制帧, 不适用于 1880
- 改为 ASCII '|' 分隔 + <CR> 结尾, 实现 SLA/JDA/CQI/JDI/SST/GST 等指令
- send_to_coder 把多条 commands 合并成单帧 JDA 一次下发
- 配合模型字段移除, IP/端口/用户区由请求 body 提供, 不再走模板回退

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-18 13:48:52 +08:00
caoqianming dadfd9669a feat: 标签模板增加打码器用户区配置, 支持同一信息内切换码型
LabelTemplate 新增 coder_field 字段(默认"1"), 喷码机一条信息里插入多个不同
码型的用户区时, 不同模板填不同用户区名即可打不同码型(条码/二维码/文本),
无需走 T 指令。coder.py 通讯编码放宽到 latin-1 并校验帧内控制字符。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-15 15:08:54 +08:00
caoqianming 9c220dbc1d feat: cm 新增 1000 系列喷码机网口下发接口
- LabelTemplate 增加 coder_ip/coder_port 字段, 模板即指定目标喷头
- 新增 CoderClient 封装 STX/ETX 帧, 支持更新用户区/选择信息/查状态
- LabelTemplateViewSet 新增 send_to_coder action, 复用 gen_commands 拼内容下发, 用户区名默认 1, 可在 body 临时覆盖

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-08 11:24:00 +08:00