6030c62e2ac9ccb18f725e637a06dc7fdfa439aa
xk-hy-transit-go
外网 Windows 中转:从云端 xk-api 拉取监管组包 → 本机 MySQL 落库 → AES 签名 → 经内网 xk-hy-forward-go 双通道上报政务云(28212 业务数据 + 28211 处方 PDF)→ 批量回调云端状态。
前置
- 云端配置
HY_TRANSIT_API_TOKEN(与 GoXK_API_TOKEN一致),可选HY_TRANSIT_PAYLOAD_ENCRYPT=true(默认开启 result 传输加密),部署routes/hy.php与xk_hy_transit_cloud.sql。 - 本机执行
sql/hy_transit_schema.sql。 - 内网部署
xk-hy-forward-go。
环境配置
cp .env.example .env
# 编辑 .env 填写 XK_API_TOKEN、HY_*、FORWARD_BASE_URL、FILE_UPLOAD_VIA_FORWARD、MYSQL_DSN
# XK_API_TOKEN 同时用于鉴权 Header 与解密云端 result(SHA256 派生 AES-128 密钥)
程序启动时自动 godotenv.Load() 读取 .env。
运行
运营推荐:直接双击或运行 transit.exe(无参数)。交互菜单 10 秒内无操作 将自动进入「定时执行(常驻)」;也可用菜单手动选「单次执行」或「定时执行」。超时秒数:MENU_AUTO_SERVE_TIMEOUT_SEC(默认 10)。
完整命令说明(单次 / 定时 / 计划任务 / 排错):见 docs/COMMANDS.md。
# 交互菜单(无参数)
go run ./cmd/transit
# 单次同步
go run ./cmd/transit sync --step=all --date=2026-05-18
# 定时常驻(默认每天 22:00)
go run ./cmd/transit serve
步骤:consult | referral | recipe | verification | all
应用日志默认目录:log/transit/(pull / push / app 按日滚动;控制台仅开始/结束/错误),详见 docs/COMMANDS.md。
Web 控制台
transit serve 启动后自动打开 暗色 Web 控制台(默认 http://127.0.0.1:8765/):
- 文件日志:app / pull / push 按日全文
- 同步流水:本机三表关联,JSON 详情(拉取 payload → 推送明文 → 请求头/密文 → 政务云响应 → 推断回调)
- 测试执行:页面触发一次
sync(与 CLI 相同,需LOG_WEB_ALLOW_TEST=true)
无参数菜单选 3) 查看日志 可仅启动 Web(不跑 Cron)。环境变量:LOG_WEB_ADDR、LOG_WEB_ALLOW_TEST(见 .env.example)。
已有 MySQL 库需执行 sql/hy_push_log_plain_migration.sql 后,新同步记录才会落库推送明文。
接口文档
云端 API 说明:xk-api/docs/hy-transit-api.md(WSL 路径以实际仓库为准)。
Windows 部署
- 推荐:
transit.exe无参数 → 菜单选「定时执行」,或transit.exe serve注册为服务。 - 计划任务单次:见
docs/COMMANDS.md中schtasks示例。
Description
Languages
Go
78.6%
HTML
17.6%
CSS
2.2%
JavaScript
1.6%