-- ===================================================================== -- CZ060/CZ061 工艺路线对齐脚本(幂等可重复执行) -- 依据:《鑫政CZ060&061现场布线说明表 - 副本.xlsx》 + PDA图标 cz060_icon_100~119 的工序号 -- 内容: -- 1) CZ060 工位名称对齐(060表 OP100/OP105 等 20 处名称互换修正,主码+A同步,不动 quality/repeat) -- 2) CZ060 人工清洁 OP155 → OP166(PDA图标105指向 OP166) -- 3) CZ060 新增 OP176 TIG手工焊(060表第二处TIG,位于抽芯拉铆OP175与支架安装OP180之间)、OP270 出货 -- 4) CZ061 新增 OP160 支架安装(061表 OP180 重复行修正,位于OP155与OP170之间) -- 5) 生产模板同步 -- 6) 跳站配置:CZ060/CZ061 非 PDA 工位(含A变体)允许跳过,PDA工位之间保持防流出 -- 说明:工位/模板数据即时生效;sys_config 直插数据库需重启服务或后台"系统配置"页面重新保存一次触发缓存刷新 -- ===================================================================== -- ---------- 1. CZ060 工位名称对齐(line_id=2102288813172203520) ---------- UPDATE mes_line_process SET title='前膨胀梁打码', update_by='system', update_date=NOW() WHERE line_id='2102288813172203520' AND oprno IN ('OP100','OP100A'); UPDATE mes_line_process SET title='预拼锁付', update_by='system', update_date=NOW() WHERE line_id='2102288813172203520' AND oprno IN ('OP105','OP105A'); UPDATE mes_line_process SET title='拉铆', update_by='system', update_date=NOW() WHERE line_id='2102288813172203520' AND oprno IN ('OP150','OP150A'); UPDATE mes_line_process SET title='箱体气密一序', update_by='system', update_date=NOW() WHERE line_id='2102288813172203520' AND oprno IN ('OP160','OP160A'); UPDATE mes_line_process SET title='水道气密一序', update_by='system', update_date=NOW() WHERE line_id='2102288813172203520' AND oprno IN ('OP165','OP165A'); UPDATE mes_line_process SET title='抽芯拉铆', update_by='system', update_date=NOW() WHERE line_id='2102288813172203520' AND oprno IN ('OP175','OP175A'); UPDATE mes_line_process SET title='支架安装', update_by='system', update_date=NOW() WHERE line_id='2102288813172203520' AND oprno IN ('OP180','OP180A'); UPDATE mes_line_process SET title='白件GP12', update_by='system', update_date=NOW() WHERE line_id='2102288813172203520' AND oprno IN ('OP185','OP185A'); UPDATE mes_line_process SET title='检具', update_by='system', update_date=NOW() WHERE line_id='2102288813172203520' AND oprno IN ('OP190','OP190A'); UPDATE mes_line_process SET title='氦检', update_by='system', update_date=NOW() WHERE line_id='2102288813172203520' AND oprno IN ('OP205','OP205A'); UPDATE mes_line_process SET title='箱体气密二序', update_by='system', update_date=NOW() WHERE line_id='2102288813172203520' AND oprno IN ('OP210','OP210A'); UPDATE mes_line_process SET title='水道气密二序', update_by='system', update_date=NOW() WHERE line_id='2102288813172203520' AND oprno IN ('OP215','OP215A'); UPDATE mes_line_process SET title='贴pc条', update_by='system', update_date=NOW() WHERE line_id='2102288813172203520' AND oprno IN ('OP230','OP230A'); UPDATE mes_line_process SET title='涂胶', update_by='system', update_date=NOW() WHERE line_id='2102288813172203520' AND oprno IN ('OP235','OP235A'); UPDATE mes_line_process SET title='全检', update_by='system', update_date=NOW() WHERE line_id='2102288813172203520' AND oprno IN ('OP240','OP240A'); UPDATE mes_line_process SET title='GP12成品检验', update_by='system', update_date=NOW() WHERE line_id='2102288813172203520' AND oprno IN ('OP245','OP245A'); UPDATE mes_line_process SET title='CCD检测', update_by='system', update_date=NOW() WHERE line_id='2102288813172203520' AND oprno IN ('OP250','OP250A'); UPDATE mes_line_process SET title='绝缘耐压测试', update_by='system', update_date=NOW() WHERE line_id='2102288813172203520' AND oprno IN ('OP255','OP255A'); UPDATE mes_line_process SET title='成品打包', update_by='system', update_date=NOW() WHERE line_id='2102288813172203520' AND oprno IN ('OP260','OP260A'); UPDATE mes_line_process SET title='入库', update_by='system', update_date=NOW() WHERE line_id='2102288813172203520' AND oprno IN ('OP265','OP265A'); -- ---------- 2. CZ060 人工清洁 OP155 → OP166 ---------- UPDATE mes_line_process SET oprno='OP166', sorts=166, update_by='system', update_date=NOW() WHERE line_id='2102288813172203520' AND oprno='OP155'; UPDATE mes_line_process SET oprno='OP166A', update_by='system', update_date=NOW() WHERE line_id='2102288813172203520' AND oprno='OP155A'; UPDATE mes_template_items SET oprno='OP166', `rank`=166, update_by='system', update_date=NOW() WHERE template_id='2102266346164490240' AND oprno='OP155'; -- ---------- 3. CZ060 新增 OP176 TIG手工焊、OP270 出货(幂等) ---------- DELETE FROM mes_line_process WHERE id IN ('2026101517000001','2026101517000002','2026101517000003','2026101517000004'); INSERT INTO mes_line_process (id, line_id, oprno, title, status, sorts, pid, quality, `repeat`, create_by, create_date, update_by, update_date) VALUES ('2026101517000001','2102288813172203520','OP176', 'TIG手工焊','0',176, NULL, '1','0','system',NOW(),'system',NOW()), ('2026101517000002','2102288813172203520','OP176A','TIG手工焊','0',176, '2026101517000001','0','0','system',NOW(),'system',NOW()), ('2026101517000003','2102288813172203520','OP270', '出货', '0',270, NULL, '1','0','system',NOW(),'system',NOW()), ('2026101517000004','2102288813172203520','OP270A','出货', '0',270, '2026101517000003','0','0','system',NOW(),'system',NOW()); DELETE FROM mes_template_items WHERE id IN ('2026101517000011','2026101517000012'); INSERT INTO mes_template_items (id, template_id, oprno, craft, title, status, `rank`, create_by, create_date, update_by, update_date) VALUES ('2026101517000011','2102266346164490240','OP176','100000','工位结果','0',176,'system',NOW(),'system',NOW()), ('2026101517000012','2102266346164490240','OP270','100000','工位结果','0',270,'system',NOW(),'system',NOW()); -- ---------- 4. CZ061 新增 OP160 支架安装(幂等) ---------- DELETE FROM mes_line_process WHERE id IN ('2026101517000005','2026101517000006'); INSERT INTO mes_line_process (id, line_id, oprno, title, status, sorts, pid, quality, `repeat`, create_by, create_date, update_by, update_date) VALUES ('2026101517000005','2102288695354204160','OP160', '支架安装','0',160, NULL, '1','0','system',NOW(),'system',NOW()), ('2026101517000006','2102288695354204160','OP160A','支架安装','0',160, '2026101517000005','0','0','system',NOW(),'system',NOW()); DELETE FROM mes_template_items WHERE id='2026101517000013'; INSERT INTO mes_template_items (id, template_id, oprno, craft, title, status, `rank`, create_by, create_date, update_by, update_date) VALUES ('2026101517000013','2102266410110849024','OP160','100000','工位结果','0',160,'system',NOW(),'system',NOW()); -- ---------- 5. 跳站配置(幂等):非 PDA 工位允许跳过,PDA 工位之间保持防流出 ---------- -- CZ060 PDA工位(不在清单内,保持拦截):OP065,OP090,OP100,OP125,OP140,OP166,OP175,OP180,OP185,OP190, -- OP195,OP220,OP225,OP230,OP235,OP240,OP245,OP260,OP265,OP270 -- CZ061 PDA工位(不在清单内):OP125,OP140,OP155,OP160,OP190,OP195,OP225,OP230,OP235,OP240,OP245,OP260,OP265,OP270,OP275 DELETE FROM js_sys_config WHERE config_key IN ('mes.pass.oprno.cz060','mes.pass.oprno.cz061'); INSERT INTO js_sys_config (id, config_name, config_key, config_value, is_sys, create_by, create_date, update_by, update_date, remarks) VALUES ('2026101517000021','CZ060跳过的工站','mes.pass.oprno.cz060', 'OP035,OP035A,OP040,OP040A,OP045,OP045A,OP050,OP050A,OP055,OP055A,OP060,OP060A,OP070,OP070A,OP075,OP075A,OP080,OP080A,OP085,OP085A,OP095,OP095A,OP105,OP105A,OP110,OP110A,OP115,OP115A,OP120,OP120A,OP130,OP130A,OP135,OP135A,OP145,OP145A,OP150,OP150A,OP160,OP160A,OP165,OP165A,OP170,OP170A,OP176,OP176A,OP200,OP200A,OP205,OP205A,OP210,OP210A,OP215,OP215A,OP250,OP250A', '0','system',NOW(),'system',NOW(),'非PDA工位允许跳过(设备未到位),设备联网后从清单移除'), ('2026101517000022','CZ061跳过的工站','mes.pass.oprno.cz061', 'OP035,OP035A,OP040,OP040A,OP045,OP045A,OP050,OP050A,OP055,OP055A,OP060,OP060A,OP065,OP065A,OP070,OP070A,OP075,OP075A,OP080,OP080A,OP085,OP085A,OP090,OP090A,OP095,OP095A,OP100,OP100A,OP105,OP105A,OP110,OP110A,OP115,OP115A,OP120,OP120A,OP130,OP130A,OP135,OP135A,OP145,OP145A,OP150,OP150A,OP165,OP165A,OP170,OP170A,OP175,OP175A,OP180,OP180A,OP185,OP185A,OP200,OP200A,OP205,OP205A,OP210,OP210A,OP215,OP215A,OP220,OP220A,OP250,OP250A,OP255,OP255A', '0','system',NOW(),'system',NOW(),'非PDA工位允许跳过(设备未到位),设备联网后从清单移除'); -- ---------- 6. 验证 ---------- SELECT p.oprno, p.title, p.quality, p.`repeat` FROM mes_line_process p JOIN mes_line l ON p.line_id=l.id WHERE l.sn='CZ060' ORDER BY CAST(SUBSTRING(p.oprno,3) AS UNSIGNED); SELECT p.oprno, p.title FROM mes_line_process p JOIN mes_line l ON p.line_id=l.id WHERE l.sn='CZ061' AND p.oprno LIKE 'OP160%'; SELECT config_key, CHAR_LENGTH(config_value) AS len FROM js_sys_config WHERE config_key IN ('mes.pass.oprno.cz060','mes.pass.oprno.cz061'); SELECT template_id, COUNT(*) AS items FROM mes_template_items WHERE template_id IN ('2102266346164490240','2102266410110849024') GROUP BY template_id; -- ---------- 7. 测试期开关:CZ060/CZ061 防呆全部=否,重复工作全部=是(主码+A变体,XT线不受影响) ---------- UPDATE mes_line_process SET quality='0', `repeat`='1', update_by='system', update_date=NOW() WHERE line_id IN ('2102288813172203520','2102288695354204160'); SELECT l.sn, p.quality, p.`repeat`, COUNT(*) AS cnt FROM mes_line_process p JOIN mes_line l ON p.line_id=l.id WHERE l.sn IN ('CZ060','CZ061') GROUP BY l.sn, p.quality, p.`repeat`;