Files
OnebotCatalog/onebot-data/catalog/csv/ULA.csv
wangruiguo fc5ee1dd36 v2.1: DESTACO 风格选型界面 + 参数组合补全(缺组合也能出零件号)
网页版选型改版 (仅网页版, 桌面版待同步)
- 新增零件号实时条: 边选边拼, 已确定片段实心高亮, 未定片段虚化, 进度条随选推进;
  浅色配色 (初版深色块与页面不协调, 已改); 选满且唯一命中时整块转青色实心
- 技术方案: 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>
2026-09-15 02:14:55 +08:00

7.8 KiB

1model_codesizestrokerodmountsensorstep_file
2ULA40020ASD04020ASDULA40020ASD0.step
3ULA40020ASK04020ASKULA40020ASK0.step
4ULA40020GSK04020GSKULA40020GSK0.step
5ULA40020NSK04020NSKULA40020NSK0.step
6ULA40020PSK04020PSKULA40020PSK0.step
7ULA40040ASD04040ASDULA40040ASD0.step
8ULA40040ASK04040ASKULA40040ASK0.step
9ULA40040GSD04040GSDULA40040GSD0.step
10ULA40040GSK04040GSKULA40040GSK0.step
11ULA40040NSD04040NSDULA40040NSD0.step
12ULA40040NSK04040NSKULA40040NSK0.step
13ULA40040PSD04040PSDULA40040PSD0.step
14ULA40040PSK04040PSKULA40040PSK0.step
15ULA63015AK06315AKULA63015AK0.step
16ULA63025AK06325AKULA63025AK0.step
17ULA63040AD06340ADULA63040AD0.step
18ULA63040AK06340AKULA63040AK0.step
19ULA63050AK06350AKULA63050AK0.step
20ULA63060AK06360AKULA63060AK0.step
21ULA40020AD04020ADPLACEHOLDER.step
22ULA40020AK04020AKPLACEHOLDER.step
23ULA40020GSD04020GSDPLACEHOLDER.step
24ULA40020GD04020GDPLACEHOLDER.step
25ULA40020GK04020GKPLACEHOLDER.step
26ULA40020NSD04020NSDPLACEHOLDER.step
27ULA40020ND04020NDPLACEHOLDER.step
28ULA40020NK04020NKPLACEHOLDER.step
29ULA40020PSD04020PSDPLACEHOLDER.step
30ULA40020PD04020PDPLACEHOLDER.step
31ULA40020PK04020PKPLACEHOLDER.step
32ULA40040AD04040ADPLACEHOLDER.step
33ULA40040AK04040AKPLACEHOLDER.step
34ULA40040GD04040GDPLACEHOLDER.step
35ULA40040GK04040GKPLACEHOLDER.step
36ULA40040ND04040NDPLACEHOLDER.step
37ULA40040NK04040NKPLACEHOLDER.step
38ULA40040PD04040PDPLACEHOLDER.step
39ULA40040PK04040PKPLACEHOLDER.step
40ULA40015ASD04015ASDPLACEHOLDER.step
41ULA40015ASK04015ASKPLACEHOLDER.step
42ULA40015AD04015ADPLACEHOLDER.step
43ULA40015AK04015AKPLACEHOLDER.step
44ULA40015GSD04015GSDPLACEHOLDER.step
45ULA40015GSK04015GSKPLACEHOLDER.step
46ULA40015GD04015GDPLACEHOLDER.step
47ULA40015GK04015GKPLACEHOLDER.step
48ULA40015NSD04015NSDPLACEHOLDER.step
49ULA40015NSK04015NSKPLACEHOLDER.step
50ULA40015ND04015NDPLACEHOLDER.step
51ULA40015NK04015NKPLACEHOLDER.step
52ULA40015PSD04015PSDPLACEHOLDER.step
53ULA40015PSK04015PSKPLACEHOLDER.step
54ULA40015PD04015PDPLACEHOLDER.step
55ULA40015PK04015PKPLACEHOLDER.step
56ULA40025ASD04025ASDPLACEHOLDER.step
57ULA40025ASK04025ASKPLACEHOLDER.step
58ULA40025AD04025ADPLACEHOLDER.step
59ULA40025AK04025AKPLACEHOLDER.step
60ULA40025GSD04025GSDPLACEHOLDER.step
61ULA40025GSK04025GSKPLACEHOLDER.step
62ULA40025GD04025GDPLACEHOLDER.step
63ULA40025GK04025GKPLACEHOLDER.step
64ULA40025NSD04025NSDPLACEHOLDER.step
65ULA40025NSK04025NSKPLACEHOLDER.step
66ULA40025ND04025NDPLACEHOLDER.step
67ULA40025NK04025NKPLACEHOLDER.step
68ULA40025PSD04025PSDPLACEHOLDER.step
69ULA40025PSK04025PSKPLACEHOLDER.step
70ULA40025PD04025PDPLACEHOLDER.step
71ULA40025PK04025PKPLACEHOLDER.step
72ULA40050ASD04050ASDPLACEHOLDER.step
73ULA40050ASK04050ASKPLACEHOLDER.step
74ULA40050AD04050ADPLACEHOLDER.step
75ULA40050AK04050AKPLACEHOLDER.step
76ULA40050GSD04050GSDPLACEHOLDER.step
77ULA40050GSK04050GSKPLACEHOLDER.step
78ULA40050GD04050GDPLACEHOLDER.step
79ULA40050GK04050GKPLACEHOLDER.step
80ULA40050NSD04050NSDPLACEHOLDER.step
81ULA40050NSK04050NSKPLACEHOLDER.step
82ULA40050ND04050NDPLACEHOLDER.step
83ULA40050NK04050NKPLACEHOLDER.step
84ULA40050PSD04050PSDPLACEHOLDER.step
85ULA40050PSK04050PSKPLACEHOLDER.step
86ULA40050PD04050PDPLACEHOLDER.step
87ULA40050PK04050PKPLACEHOLDER.step
88ULA40060ASD04060ASDPLACEHOLDER.step
89ULA40060ASK04060ASKPLACEHOLDER.step
90ULA40060AD04060ADPLACEHOLDER.step
91ULA40060AK04060AKPLACEHOLDER.step
92ULA40060GSD04060GSDPLACEHOLDER.step
93ULA40060GSK04060GSKPLACEHOLDER.step
94ULA40060GD04060GDPLACEHOLDER.step
95ULA40060GK04060GKPLACEHOLDER.step
96ULA40060NSD04060NSDPLACEHOLDER.step
97ULA40060NSK04060NSKPLACEHOLDER.step
98ULA40060ND04060NDPLACEHOLDER.step
99ULA40060NK04060NKPLACEHOLDER.step
100ULA40060PSD04060PSDPLACEHOLDER.step
101ULA40060PSK04060PSKPLACEHOLDER.step
102ULA40060PD04060PDPLACEHOLDER.step
103ULA40060PK04060PKPLACEHOLDER.step
104ULA63020ASD06320ASDPLACEHOLDER.step
105ULA63020ASK06320ASKPLACEHOLDER.step
106ULA63020AD06320ADPLACEHOLDER.step
107ULA63020AK06320AKPLACEHOLDER.step
108ULA63020GSD06320GSDPLACEHOLDER.step
109ULA63020GSK06320GSKPLACEHOLDER.step
110ULA63020GD06320GDPLACEHOLDER.step
111ULA63020GK06320GKPLACEHOLDER.step
112ULA63020NSD06320NSDPLACEHOLDER.step
113ULA63020NSK06320NSKPLACEHOLDER.step
114ULA63020ND06320NDPLACEHOLDER.step
115ULA63020NK06320NKPLACEHOLDER.step
116ULA63020PSD06320PSDPLACEHOLDER.step
117ULA63020PSK06320PSKPLACEHOLDER.step
118ULA63020PD06320PDPLACEHOLDER.step
119ULA63020PK06320PKPLACEHOLDER.step
120ULA63040ASD06340ASDPLACEHOLDER.step
121ULA63040ASK06340ASKPLACEHOLDER.step
122ULA63040GSD06340GSDPLACEHOLDER.step
123ULA63040GSK06340GSKPLACEHOLDER.step
124ULA63040GD06340GDPLACEHOLDER.step
125ULA63040GK06340GKPLACEHOLDER.step
126ULA63040NSD06340NSDPLACEHOLDER.step
127ULA63040NSK06340NSKPLACEHOLDER.step
128ULA63040ND06340NDPLACEHOLDER.step
129ULA63040NK06340NKPLACEHOLDER.step
130ULA63040PSD06340PSDPLACEHOLDER.step
131ULA63040PSK06340PSKPLACEHOLDER.step
132ULA63040PD06340PDPLACEHOLDER.step
133ULA63040PK06340PKPLACEHOLDER.step
134ULA63015ASD06315ASDPLACEHOLDER.step
135ULA63015ASK06315ASKPLACEHOLDER.step
136ULA63015AD06315ADPLACEHOLDER.step
137ULA63015GSD06315GSDPLACEHOLDER.step
138ULA63015GSK06315GSKPLACEHOLDER.step
139ULA63015GD06315GDPLACEHOLDER.step
140ULA63015GK06315GKPLACEHOLDER.step
141ULA63015NSD06315NSDPLACEHOLDER.step
142ULA63015NSK06315NSKPLACEHOLDER.step
143ULA63015ND06315NDPLACEHOLDER.step
144ULA63015NK06315NKPLACEHOLDER.step
145ULA63015PSD06315PSDPLACEHOLDER.step
146ULA63015PSK06315PSKPLACEHOLDER.step
147ULA63015PD06315PDPLACEHOLDER.step
148ULA63015PK06315PKPLACEHOLDER.step
149ULA63025ASD06325ASDPLACEHOLDER.step
150ULA63025ASK06325ASKPLACEHOLDER.step
151ULA63025AD06325ADPLACEHOLDER.step
152ULA63025GSD06325GSDPLACEHOLDER.step
153ULA63025GSK06325GSKPLACEHOLDER.step
154ULA63025GD06325GDPLACEHOLDER.step
155ULA63025GK06325GKPLACEHOLDER.step
156ULA63025NSD06325NSDPLACEHOLDER.step
157ULA63025NSK06325NSKPLACEHOLDER.step
158ULA63025ND06325NDPLACEHOLDER.step
159ULA63025NK06325NKPLACEHOLDER.step
160ULA63025PSD06325PSDPLACEHOLDER.step
161ULA63025PSK06325PSKPLACEHOLDER.step
162ULA63025PD06325PDPLACEHOLDER.step
163ULA63025PK06325PKPLACEHOLDER.step
164ULA63050ASD06350ASDPLACEHOLDER.step
165ULA63050ASK06350ASKPLACEHOLDER.step
166ULA63050AD06350ADPLACEHOLDER.step
167ULA63050GSD06350GSDPLACEHOLDER.step
168ULA63050GSK06350GSKPLACEHOLDER.step
169ULA63050GD06350GDPLACEHOLDER.step
170ULA63050GK06350GKPLACEHOLDER.step
171ULA63050NSD06350NSDPLACEHOLDER.step
172ULA63050NSK06350NSKPLACEHOLDER.step
173ULA63050ND06350NDPLACEHOLDER.step
174ULA63050NK06350NKPLACEHOLDER.step
175ULA63050PSD06350PSDPLACEHOLDER.step
176ULA63050PSK06350PSKPLACEHOLDER.step
177ULA63050PD06350PDPLACEHOLDER.step
178ULA63050PK06350PKPLACEHOLDER.step
179ULA63060ASD06360ASDPLACEHOLDER.step
180ULA63060ASK06360ASKPLACEHOLDER.step
181ULA63060AD06360ADPLACEHOLDER.step
182ULA63060GSD06360GSDPLACEHOLDER.step
183ULA63060GSK06360GSKPLACEHOLDER.step
184ULA63060GD06360GDPLACEHOLDER.step
185ULA63060GK06360GKPLACEHOLDER.step
186ULA63060NSD06360NSDPLACEHOLDER.step
187ULA63060NSK06360NSKPLACEHOLDER.step
188ULA63060ND06360NDPLACEHOLDER.step
189ULA63060NK06360NKPLACEHOLDER.step
190ULA63060PSD06360PSDPLACEHOLDER.step
191ULA63060PSK06360PSKPLACEHOLDER.step
192ULA63060PD06360PDPLACEHOLDER.step
193ULA63060PK06360PKPLACEHOLDER.step