网页版选型改版 (仅网页版, 桌面版待同步)
- 新增零件号实时条: 边选边拼, 已确定片段实心高亮, 未定片段虚化, 进度条随选推进;
浅色配色 (初版深色块与页面不协调, 已改); 选满且唯一命中时整块转青色实心
- 技术方案: 40 系列中仅 KC 有编码模板 → 改用「当前候选型号的最长公共前缀」,
已验证 40/40 系列前缀单调增长(不回退)
- 参数选择由下拉菜单改为可视化选项块: 悬停抬升+青色投影, 选中青色填充+✓,
不可选取值置灰(虚线+划线, 不消失, 让用户看到选项存在但当前组合不适用),
再点一次取消; 有说明的显示代号+说明, 纯数值用紧凑文字块
- 参数联动仍复用 allowedOptions 规则引擎, 语义未变, 只改渲染
参数组合补全
- 原逻辑: 必须有真实数模才能生成型号 → 库里没有的组合选不出来也出不了号
- infer-sku-template.py 从已有型号反推编码模板, 得 23 个系列 100% 可复现
- verify-templates.py 作为门禁: 用模板重渲染每个已有型号必须逐字一致 ——
该检查抓出 ULM/ULP 行程补零位数写错(2位写3位), 否则会生成 3000 个不存在的零件号
- gen-missing-combos.py 补全 8 个系列共 3157 个型号 (全库 54136 → 57293)
- 占位数模: 3157 个型号共用 1 个 PLACEHOLDER.step(4.5KB), 构建器按路径打包只存一份,
数据包仅 2.10GB → 2.14GB (中途用硬链接方案踩坑: NTFS 上限 1024, 超出退化为拷贝白占 500MB)
- _pending_models.csv 输出待补数模清单, 供 AI 补完后替换 step_file
新增脚本: infer-sku-template / verify-templates / quantify-combo-gap /
gen-missing-combos / gen-placeholder-step / check-combo-unique
新增文档: docs/更改说明-v2.1.md
发现未处理 (已记录在更改说明):
- 夹紧缸 9 系列一组参数对应多型号 (310 个型号, 编码含参数外尾缀, 旧码/新码混用)
- UAGP/LAGP 参数顺序与官方编码结构不符 (传感器应在转角之前)
- 17 个系列因模板不干净未补全 (宁可少补, 不生成可能不存在的零件号)
Co-Authored-By: Claude Code <noreply@anthropic.com>
202 lines
8.3 KiB
CSV
202 lines
8.3 KiB
CSV
model_code,size,stroke,rod,orient,sensor,step_file
|
|
ULM50015AEK0,50,15,A,E,K,ULM50015AEK0.step
|
|
ULM50015ANK0,50,15,A,N,K,ULM50015ANK0.step
|
|
ULM50015AOK0,50,15,A,O,K,ULM50015AOK0.step
|
|
ULM50015ASK0,50,15,A,S,K,ULM50015ASK0.step
|
|
ULM50015BXK0,50,15,B,X,K,ULM50015BXK0.step
|
|
ULM50015CXK0,50,15,C,X,K,ULM50015CXK0.step
|
|
ULM50015DEK0,50,15,D,E,K,ULM50015DEK0.step
|
|
ULM50015DNK0,50,15,D,N,K,ULM50015DNK0.step
|
|
ULM50015DOK0,50,15,D,O,K,ULM50015DOK0.step
|
|
ULM50015DSK0,50,15,D,S,K,ULM50015DSK0.step
|
|
ULM50015EXK0,50,15,E,X,K,ULM50015EXK0.step
|
|
ULM50015FXK0,50,15,F,X,K,ULM50015FXK0.step
|
|
ULM50015HXK0,50,15,H,X,K,ULM50015HXK0.step
|
|
ULM50015IXK0,50,15,I,X,K,ULM50015IXK0.step
|
|
ULM50025AEK0,50,25,A,E,K,ULM50025AEK0.step
|
|
ULM50025ANK0,50,25,A,N,K,ULM50025ANK0.step
|
|
ULM50025AOK0,50,25,A,O,K,ULM50025AOK0.step
|
|
ULM50025ASK0,50,25,A,S,K,ULM50025ASK0.step
|
|
ULM50025BXK0,50,25,B,X,K,ULM50025BXK0.step
|
|
ULM50025CXK0,50,25,C,X,K,ULM50025CXK0.step
|
|
ULM50025DEK0,50,25,D,E,K,ULM50025DEK0.step
|
|
ULM50025DNK0,50,25,D,N,K,ULM50025DNK0.step
|
|
ULM50025DOK0,50,25,D,O,K,ULM50025DOK0.step
|
|
ULM50025DSK0,50,25,D,S,K,ULM50025DSK0.step
|
|
ULM50025EXK0,50,25,E,X,K,ULM50025EXK0.step
|
|
ULM50025FXK0,50,25,F,X,K,ULM50025FXK0.step
|
|
ULM50025HXK0,50,25,H,X,K,ULM50025HXK0.step
|
|
ULM50025IXK0,50,25,I,X,K,ULM50025IXK0.step
|
|
ULM50040AEK0,50,40,A,E,K,ULM50040AEK0.step
|
|
ULM50040ANK0,50,40,A,N,K,ULM50040ANK0.step
|
|
ULM50040AOK0,50,40,A,O,K,ULM50040AOK0.step
|
|
ULM50040ASK0,50,40,A,S,K,ULM50040ASK0.step
|
|
ULM50040BXK0,50,40,B,X,K,ULM50040BXK0.step
|
|
ULM50040CXK0,50,40,C,X,K,ULM50040CXK0.step
|
|
ULM50040DEK0,50,40,D,E,K,ULM50040DEK0.step
|
|
ULM50040DNK0,50,40,D,N,K,ULM50040DNK0.step
|
|
ULM50040DOK0,50,40,D,O,K,ULM50040DOK0.step
|
|
ULM50040DSK0,50,40,D,S,K,ULM50040DSK0.step
|
|
ULM50040EXK0,50,40,E,X,K,ULM50040EXK0.step
|
|
ULM50040FXK0,50,40,F,X,K,ULM50040FXK0.step
|
|
ULM50040HXK0,50,40,H,X,K,ULM50040HXK0.step
|
|
ULM50040IXK0,50,40,I,X,K,ULM50040IXK0.step
|
|
ULM50050AEK0,50,50,A,E,K,ULM50050AEK0.step
|
|
ULM50050ANK0,50,50,A,N,K,ULM50050ANK0.step
|
|
ULM50050AOK0,50,50,A,O,K,ULM50050AOK0.step
|
|
ULM50050ASK0,50,50,A,S,K,ULM50050ASK0.step
|
|
ULM50050BXK0,50,50,B,X,K,ULM50050BXK0.step
|
|
ULM50050CXK0,50,50,C,X,K,ULM50050CXK0.step
|
|
ULM50050DEK0,50,50,D,E,K,ULM50050DEK0.step
|
|
ULM50050DNK0,50,50,D,N,K,ULM50050DNK0.step
|
|
ULM50050DOK0,50,50,D,O,K,ULM50050DOK0.step
|
|
ULM50050DSK0,50,50,D,S,K,ULM50050DSK0.step
|
|
ULM50050EXK0,50,50,E,X,K,ULM50050EXK0.step
|
|
ULM50050FXK0,50,50,F,X,K,ULM50050FXK0.step
|
|
ULM50050HXK0,50,50,H,X,K,ULM50050HXK0.step
|
|
ULM50050IXK0,50,50,I,X,K,ULM50050IXK0.step
|
|
ULM50060AEK0,50,60,A,E,K,ULM50060AEK0.step
|
|
ULM50060ANK0,50,60,A,N,K,ULM50060ANK0.step
|
|
ULM50060AOK0,50,60,A,O,K,ULM50060AOK0.step
|
|
ULM50060ASK0,50,60,A,S,K,ULM50060ASK0.step
|
|
ULM50060BXK0,50,60,B,X,K,ULM50060BXK0.step
|
|
ULM50060CXK0,50,60,C,X,K,ULM50060CXK0.step
|
|
ULM50060DEK0,50,60,D,E,K,ULM50060DEK0.step
|
|
ULM50060DNK0,50,60,D,N,K,ULM50060DNK0.step
|
|
ULM50060DOK0,50,60,D,O,K,ULM50060DOK0.step
|
|
ULM50060DSK0,50,60,D,S,K,ULM50060DSK0.step
|
|
ULM50060EXK0,50,60,E,X,K,ULM50060EXK0.step
|
|
ULM50060FXK0,50,60,F,X,K,ULM50060FXK0.step
|
|
ULM50060HXK0,50,60,H,X,K,ULM50060HXK0.step
|
|
ULM50060IXK0,50,60,I,X,K,ULM50060IXK0.step
|
|
ULM50015AXK0,50,15,A,X,K,PLACEHOLDER.step
|
|
ULM50015BEK0,50,15,B,E,K,PLACEHOLDER.step
|
|
ULM50015BNK0,50,15,B,N,K,PLACEHOLDER.step
|
|
ULM50015BOK0,50,15,B,O,K,PLACEHOLDER.step
|
|
ULM50015BSK0,50,15,B,S,K,PLACEHOLDER.step
|
|
ULM50015CEK0,50,15,C,E,K,PLACEHOLDER.step
|
|
ULM50015CNK0,50,15,C,N,K,PLACEHOLDER.step
|
|
ULM50015COK0,50,15,C,O,K,PLACEHOLDER.step
|
|
ULM50015CSK0,50,15,C,S,K,PLACEHOLDER.step
|
|
ULM50015DXK0,50,15,D,X,K,PLACEHOLDER.step
|
|
ULM50015EEK0,50,15,E,E,K,PLACEHOLDER.step
|
|
ULM50015ENK0,50,15,E,N,K,PLACEHOLDER.step
|
|
ULM50015EOK0,50,15,E,O,K,PLACEHOLDER.step
|
|
ULM50015ESK0,50,15,E,S,K,PLACEHOLDER.step
|
|
ULM50015FEK0,50,15,F,E,K,PLACEHOLDER.step
|
|
ULM50015FNK0,50,15,F,N,K,PLACEHOLDER.step
|
|
ULM50015FOK0,50,15,F,O,K,PLACEHOLDER.step
|
|
ULM50015FSK0,50,15,F,S,K,PLACEHOLDER.step
|
|
ULM50015HEK0,50,15,H,E,K,PLACEHOLDER.step
|
|
ULM50015HNK0,50,15,H,N,K,PLACEHOLDER.step
|
|
ULM50015HOK0,50,15,H,O,K,PLACEHOLDER.step
|
|
ULM50015HSK0,50,15,H,S,K,PLACEHOLDER.step
|
|
ULM50015IEK0,50,15,I,E,K,PLACEHOLDER.step
|
|
ULM50015INK0,50,15,I,N,K,PLACEHOLDER.step
|
|
ULM50015IOK0,50,15,I,O,K,PLACEHOLDER.step
|
|
ULM50015ISK0,50,15,I,S,K,PLACEHOLDER.step
|
|
ULM50025AXK0,50,25,A,X,K,PLACEHOLDER.step
|
|
ULM50025BEK0,50,25,B,E,K,PLACEHOLDER.step
|
|
ULM50025BNK0,50,25,B,N,K,PLACEHOLDER.step
|
|
ULM50025BOK0,50,25,B,O,K,PLACEHOLDER.step
|
|
ULM50025BSK0,50,25,B,S,K,PLACEHOLDER.step
|
|
ULM50025CEK0,50,25,C,E,K,PLACEHOLDER.step
|
|
ULM50025CNK0,50,25,C,N,K,PLACEHOLDER.step
|
|
ULM50025COK0,50,25,C,O,K,PLACEHOLDER.step
|
|
ULM50025CSK0,50,25,C,S,K,PLACEHOLDER.step
|
|
ULM50025DXK0,50,25,D,X,K,PLACEHOLDER.step
|
|
ULM50025EEK0,50,25,E,E,K,PLACEHOLDER.step
|
|
ULM50025ENK0,50,25,E,N,K,PLACEHOLDER.step
|
|
ULM50025EOK0,50,25,E,O,K,PLACEHOLDER.step
|
|
ULM50025ESK0,50,25,E,S,K,PLACEHOLDER.step
|
|
ULM50025FEK0,50,25,F,E,K,PLACEHOLDER.step
|
|
ULM50025FNK0,50,25,F,N,K,PLACEHOLDER.step
|
|
ULM50025FOK0,50,25,F,O,K,PLACEHOLDER.step
|
|
ULM50025FSK0,50,25,F,S,K,PLACEHOLDER.step
|
|
ULM50025HEK0,50,25,H,E,K,PLACEHOLDER.step
|
|
ULM50025HNK0,50,25,H,N,K,PLACEHOLDER.step
|
|
ULM50025HOK0,50,25,H,O,K,PLACEHOLDER.step
|
|
ULM50025HSK0,50,25,H,S,K,PLACEHOLDER.step
|
|
ULM50025IEK0,50,25,I,E,K,PLACEHOLDER.step
|
|
ULM50025INK0,50,25,I,N,K,PLACEHOLDER.step
|
|
ULM50025IOK0,50,25,I,O,K,PLACEHOLDER.step
|
|
ULM50025ISK0,50,25,I,S,K,PLACEHOLDER.step
|
|
ULM50040AXK0,50,40,A,X,K,PLACEHOLDER.step
|
|
ULM50040BEK0,50,40,B,E,K,PLACEHOLDER.step
|
|
ULM50040BNK0,50,40,B,N,K,PLACEHOLDER.step
|
|
ULM50040BOK0,50,40,B,O,K,PLACEHOLDER.step
|
|
ULM50040BSK0,50,40,B,S,K,PLACEHOLDER.step
|
|
ULM50040CEK0,50,40,C,E,K,PLACEHOLDER.step
|
|
ULM50040CNK0,50,40,C,N,K,PLACEHOLDER.step
|
|
ULM50040COK0,50,40,C,O,K,PLACEHOLDER.step
|
|
ULM50040CSK0,50,40,C,S,K,PLACEHOLDER.step
|
|
ULM50040DXK0,50,40,D,X,K,PLACEHOLDER.step
|
|
ULM50040EEK0,50,40,E,E,K,PLACEHOLDER.step
|
|
ULM50040ENK0,50,40,E,N,K,PLACEHOLDER.step
|
|
ULM50040EOK0,50,40,E,O,K,PLACEHOLDER.step
|
|
ULM50040ESK0,50,40,E,S,K,PLACEHOLDER.step
|
|
ULM50040FEK0,50,40,F,E,K,PLACEHOLDER.step
|
|
ULM50040FNK0,50,40,F,N,K,PLACEHOLDER.step
|
|
ULM50040FOK0,50,40,F,O,K,PLACEHOLDER.step
|
|
ULM50040FSK0,50,40,F,S,K,PLACEHOLDER.step
|
|
ULM50040HEK0,50,40,H,E,K,PLACEHOLDER.step
|
|
ULM50040HNK0,50,40,H,N,K,PLACEHOLDER.step
|
|
ULM50040HOK0,50,40,H,O,K,PLACEHOLDER.step
|
|
ULM50040HSK0,50,40,H,S,K,PLACEHOLDER.step
|
|
ULM50040IEK0,50,40,I,E,K,PLACEHOLDER.step
|
|
ULM50040INK0,50,40,I,N,K,PLACEHOLDER.step
|
|
ULM50040IOK0,50,40,I,O,K,PLACEHOLDER.step
|
|
ULM50040ISK0,50,40,I,S,K,PLACEHOLDER.step
|
|
ULM50050AXK0,50,50,A,X,K,PLACEHOLDER.step
|
|
ULM50050BEK0,50,50,B,E,K,PLACEHOLDER.step
|
|
ULM50050BNK0,50,50,B,N,K,PLACEHOLDER.step
|
|
ULM50050BOK0,50,50,B,O,K,PLACEHOLDER.step
|
|
ULM50050BSK0,50,50,B,S,K,PLACEHOLDER.step
|
|
ULM50050CEK0,50,50,C,E,K,PLACEHOLDER.step
|
|
ULM50050CNK0,50,50,C,N,K,PLACEHOLDER.step
|
|
ULM50050COK0,50,50,C,O,K,PLACEHOLDER.step
|
|
ULM50050CSK0,50,50,C,S,K,PLACEHOLDER.step
|
|
ULM50050DXK0,50,50,D,X,K,PLACEHOLDER.step
|
|
ULM50050EEK0,50,50,E,E,K,PLACEHOLDER.step
|
|
ULM50050ENK0,50,50,E,N,K,PLACEHOLDER.step
|
|
ULM50050EOK0,50,50,E,O,K,PLACEHOLDER.step
|
|
ULM50050ESK0,50,50,E,S,K,PLACEHOLDER.step
|
|
ULM50050FEK0,50,50,F,E,K,PLACEHOLDER.step
|
|
ULM50050FNK0,50,50,F,N,K,PLACEHOLDER.step
|
|
ULM50050FOK0,50,50,F,O,K,PLACEHOLDER.step
|
|
ULM50050FSK0,50,50,F,S,K,PLACEHOLDER.step
|
|
ULM50050HEK0,50,50,H,E,K,PLACEHOLDER.step
|
|
ULM50050HNK0,50,50,H,N,K,PLACEHOLDER.step
|
|
ULM50050HOK0,50,50,H,O,K,PLACEHOLDER.step
|
|
ULM50050HSK0,50,50,H,S,K,PLACEHOLDER.step
|
|
ULM50050IEK0,50,50,I,E,K,PLACEHOLDER.step
|
|
ULM50050INK0,50,50,I,N,K,PLACEHOLDER.step
|
|
ULM50050IOK0,50,50,I,O,K,PLACEHOLDER.step
|
|
ULM50050ISK0,50,50,I,S,K,PLACEHOLDER.step
|
|
ULM50060AXK0,50,60,A,X,K,PLACEHOLDER.step
|
|
ULM50060BEK0,50,60,B,E,K,PLACEHOLDER.step
|
|
ULM50060BNK0,50,60,B,N,K,PLACEHOLDER.step
|
|
ULM50060BOK0,50,60,B,O,K,PLACEHOLDER.step
|
|
ULM50060BSK0,50,60,B,S,K,PLACEHOLDER.step
|
|
ULM50060CEK0,50,60,C,E,K,PLACEHOLDER.step
|
|
ULM50060CNK0,50,60,C,N,K,PLACEHOLDER.step
|
|
ULM50060COK0,50,60,C,O,K,PLACEHOLDER.step
|
|
ULM50060CSK0,50,60,C,S,K,PLACEHOLDER.step
|
|
ULM50060DXK0,50,60,D,X,K,PLACEHOLDER.step
|
|
ULM50060EEK0,50,60,E,E,K,PLACEHOLDER.step
|
|
ULM50060ENK0,50,60,E,N,K,PLACEHOLDER.step
|
|
ULM50060EOK0,50,60,E,O,K,PLACEHOLDER.step
|
|
ULM50060ESK0,50,60,E,S,K,PLACEHOLDER.step
|
|
ULM50060FEK0,50,60,F,E,K,PLACEHOLDER.step
|
|
ULM50060FNK0,50,60,F,N,K,PLACEHOLDER.step
|
|
ULM50060FOK0,50,60,F,O,K,PLACEHOLDER.step
|
|
ULM50060FSK0,50,60,F,S,K,PLACEHOLDER.step
|
|
ULM50060HEK0,50,60,H,E,K,PLACEHOLDER.step
|
|
ULM50060HNK0,50,60,H,N,K,PLACEHOLDER.step
|
|
ULM50060HOK0,50,60,H,O,K,PLACEHOLDER.step
|
|
ULM50060HSK0,50,60,H,S,K,PLACEHOLDER.step
|
|
ULM50060IEK0,50,60,I,E,K,PLACEHOLDER.step
|
|
ULM50060INK0,50,60,I,N,K,PLACEHOLDER.step
|
|
ULM50060IOK0,50,60,I,O,K,PLACEHOLDER.step
|
|
ULM50060ISK0,50,60,I,S,K,PLACEHOLDER.step
|