Files
OnebotCatalog/_start_all.bat
wangruiguo e94d2aebc9 v2.2: 桌面版同步 DESTACO 风格选型 + 网页预览后台启动
桌面版 (仅网页版 v2.1 已做的部分, 本次补齐桌面端, 两端语义一致)
- 新增 OptionTile 控件类: 三态选项块 (可选/已选/不可选), 替代 ComboBox 下拉
  不可选取值置灰+删除线但保留占位 (让用户看到选项存在, 而非从列表消失);
  悬停青色高亮, 再点一次取消选择
- 新增零件号实时条: 复用与网页版同一套「候选型号最长公共前缀」算法,
  已确定片段深青实心 + 待定位数虚化 + 进度条, 选满唯一命中时整块转青色实心
- 维度标题后回显当前已选值
- range 参数 (连续域) 保留可编辑下拉, 无法枚举成卡片
- 参数联动仍复用 Configurator.AllowedOptions, 规则引擎未改动

网页预览后台启动 (无 PowerShell 窗口)
- 新增 tools/serve-web-bg.ps1: Start-Process -WindowStyle Hidden 启动,
  带 -Stop / -Status; 用命令行匹配定位进程 (比只看 PID 文件可靠)
- _start_web.bat / _start_all.bat 改用之, 不再弹窗口

工具
- ui-diagnose.ps1 增强: 原只检查 _boxes (下拉), 现同时检查选项块数量、
  每维度是否有可选值、零件号条输出 —— 可自动发现"某维度全被置灰无从下手"
- 新增 assess-combo-risk.py: 用量化口径评估生成候选的风险
  (以同缸径真实数据值域为官方值域的代理)
- 新增 make-pending-list.py: 重写待补清单, 增加 nearest_real / diff_from_nearest
  列, 每个候选与其最近的真实型号并列, 便于逐个核实

文档
- 新增 工作总结-2026-09.md: 两阶段工作回顾、发现的问题、踩坑经验

验证
- 编译首次通过; UI 诊断 40/40 系列 0 问题
- 零件号条实测: KC0032-10 / ULP32020AEK0 / UAGP075OK120WS0 / LAE140NN31 均完整;
  UCBP 正确提示"该组合对应 2 个型号" (暴露已知数据问题)

踩坑记录
- PowerShell 变量名大小写不敏感: $root 与 $Root 是同一变量, 互相覆盖导致
  启动脚本指向错误目录 (改用 $projRoot)
- .ps1 必须带 UTF-8 BOM, 否则 PS 5.1 按 ANSI 读, 中文注释破坏解析

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-15 18:27:11 +08:00

52 lines
1.6 KiB
Batchfile

@echo off
setlocal
cd /d "%~dp0"
echo.
echo ============================================================
echo ONEBOT one-click start: web + GenServer + NX worker
echo ============================================================
echo.
echo [1/6] stop old processes ...
taskkill /F /IM GenServer.exe >nul 2>nul
taskkill /F /IM run_journal.exe >nul 2>nul
ping -n 2 127.0.0.1 >nul
echo [2/6] build GenServer ...
powershell -NoProfile -ExecutionPolicy Bypass -File "%~dp0tools\build-genserver.ps1"
if not %errorlevel%==0 (
echo.
echo [FAIL] GenServer build failed. Check error above.
pause
exit /b 1
)
echo [3/6] start GenServer ...
start "GenServer" /min "%~dp0bin\GenServer.exe" "%~dp0genserver-local\genserver-config.json"
ping -n 3 127.0.0.1 >nul
echo [4/6] start NX worker ...
start "NXworker" /min "C:\Program Files\Siemens\NX2506\NXBIN\run_journal.exe" "%~dp0sample-data\tools\worker_journal.vb"
ping -n 3 127.0.0.1 >nul
echo [5/6] start web server (port 8080, 后台无窗口) ...
powershell -NoProfile -ExecutionPolicy Bypass -File "%~dp0tools\serve-web-bg.ps1"
ping -n 2 127.0.0.1 >nul
echo [6/6] health check ...
curl.exe -s http://localhost:8899/health
echo.
curl.exe -s -o nul -w "web 8080 : %%{http_code}" http://localhost:8080/index.html
echo.
echo.
echo ============================================================
echo done. Open browser: http://localhost:8080
echo admin: http://localhost:8899/admin (password: onebot888)
echo keep the GenServer / NXworker / OnebotWeb windows open
echo ============================================================
echo.
pause
endlocal