# 采购订单处理工作台

本地化工具，版本 `2026.08.04-lan-firewall-port-fix`。本机版默认监听 `127.0.0.1:8766`，局域网共享版默认监听 `0.0.0.0:8766`，端口任一地址被其他程序占用时都会自动顺延。

启动方式：

- `PurchaseOrderTool.exe`（或 `双击打开采购订单处理工具.vbs` / `Start-Local.vbs`）：本机版，只允许当前电脑访问，启动后自动打开浏览器，全程不弹出命令行窗口。
- `PurchaseOrderTool-LAN.exe`（或 `双击开启局域网共享.vbs` / `Start-LAN-Host.vbs`）：局域网共享版，一台电脑作为主机，同 WiFi 其他设备通过页面显示的网址访问，全程不弹出命令行窗口。
- `Start-Local.bat` / `Start-LAN-Host.bat`：备用入口，只有在 `.vbs` 被电脑策略拦截时再使用。

业务人员不要直接运行 `runtime` 目录内的程序；该目录是内部运行组件，统一从解压目录第一层的 `PurchaseOrderTool.exe` 或 `PurchaseOrderTool-LAN.exe` 启动。
启动过程不会显示命令行窗口；若启动失败，技术人员可查看 `purchase_tool_data/runtime.log`、`purchase_tool_data/startup-error.log` 和 `purchase_tool_data/launcher-operation.jsonl`，业务操作日志仍在页面内查看。

局域网共享版首次启动会说明并请求一次 Windows 管理员授权。授权只放行本工具使用的 `8766-8795/TCP`，且只允许同一局域网子网访问；规则不绑定解压目录，所以下载新版或换目录后仍然有效。本机版不会申请或使用这条防火墙规则。若取消 Windows 权限确认，局域网共享版会停止启动并明确提示，不会出现主机能开、其他电脑静默连接失败的情况。

本机版和局域网共享版都使用中文姓名登录。首次打开工具时直接创建主账号和本地工具密码；其他同 WiFi 设备第一次使用时，输入主机密码授权后，再建立本人独立的本地工具账号。注册、登录和改密都不连接线上点货台，账号密码只保存在主机电脑本地，密码使用哈希保存，不记录明文。

只有点击提交点货单时，工具才会向点货台实时核对当前中文姓名是否为已启用的秘书处账号；未审批、已停用或线上服务不可用时，仅阻止本次提交，不影响本地登录、改密和文件处理。旧版账号和历史批次不会被自动删除，但非中文或与点货台不一致的账号不能作为线上提交人。

如果主机电脑曾经开过旧版本，启动新版时会扫描 `8766-8795` 范围内全部采购工具实例；确认后先正常关闭，未退出时仅对身份已核实的采购工具进程强制结束。全部旧 PID 退出后才启动并验证当前版本，最后打开浏览器。占用端口的其他程序不会被结束；点击“否”会保留旧服务并取消本次启动。
选择新端口时还会检查 `127.0.0.1`、局域网地址和全部接口上的现有监听者；发现无关程序占用时不会关闭它，而是自动改用下一个空闲端口，避免浏览器打开到错误的旧页面。

主要能力：

- 识别采购订单中一个 sheet 多张表的情况。
- 自动读取物料大表的真实有效物料数，优先选择记录最多的有效大表；空白“物料导入模板”会被拦截，不再把全部采购明细误判为未匹配。
- 处理结果直接显示已匹配行、需新建物料和物料大表有效条数，便于业务当场核对匹配是否正常。
- 局域网共享版支持其他电脑用主机密码授权自建本地账号；登录后可直接上传 Excel 并生成处理结果，提交线上点货单时再校验同名点货台秘书处账号。
- 支持拖拽、点击选择、复制 Excel 文件后按字段单独粘贴；选择文件会立即上传到主机共享区，主机和同 WiFi 登录设备不用点击“生成处理结果”也能看到。
- 一键重置会清空本页已选文件并移除主机共享选择，不会删除历史批次和历史输出文件。
- 数据导入和导入后的明细列表在同一工作区展示，导入后可直接筛选核对。
- 生成采购订单导入模板、新建物料导入表、点货单和完整明细核对表；存在未匹配物料时，额外生成 ERP 可直接导入的 `公共信息导入表.xlsx`。每个唯一新建物料一行，只替换模板黄色的物料编码、物料名称两列，其余字段、隐藏页和下拉规则原样保留。
- 点货单模板支持内置模板下拉选择，也支持临时上传自定义模板。
- 生成结果在工具内展示：主机电脑可调用本机默认表格程序；同 WiFi 设备可直接只读预览 Excel，并通过带进度反馈的下载按钮保存 Excel 或 ZIP。
- 本机 `purchase_tool_data/state.json` 保留上传批次、历史上传、共享上传选择和操作日志，登录、自建账号、共享上传、下载、改密和被拦截的操作也会记录；页面上会把日志翻译成业务可读的动作、对象、说明和处理建议，原始记录仍可展开查看。
- 打包后的 `dist/purchase-order-tool-release-manifest.json` 保留各版本文件名、大小、SHA256、构建时间和源码提交；版本 ZIP 不被“最新版”覆盖，可按清单回溯或回退。
- 可把点货明细上传到线上点货台，提交账号从当前登录会话读取且不可修改，账号编码、账号名称和提交人均写入同一个中文姓名。上传前可修改点货单名称，点击上传后会显示独立进度条；处理结果区也可点击“前往点货台”直接打开线上工作台。默认导入接口为 `https://chaojimiaomiao.cn/api/pick-orders/import`，账号接口可通过 `WAREHOUSE_PICK_ACCOUNTS_URL` 单独配置。
