liu
2026-10-19 99818446c00a5b435e41debe8918f3ded237ce7b
fix(mes): 补录工作站编码规则 MD_WORKSTATION_CODE

新增幂等修复脚本,主表补 MD_WORKSTATION_CODE 规则,
分段配置 WKS 固定前缀 + 6 位流水号,解决工作站设置
点击“生成”报“编码规则不存在”的问题。

Co-Authored-By: Claude <noreply@anthropic.com>
已添加1个文件
35 ■■■■■ 文件已修改
sql/mysql/mes_auto_code_rule_workstation_fix.sql 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sql/mysql/mes_auto_code_rule_workstation_fix.sql
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,35 @@
-- =============================================
-- ä¿®å¤ï¼šå·¥ä½œç«™è®¾ç½® -> å·¥ä½œç«™ç¼–码 -> ç”Ÿæˆï¼ŒæŠ¥â€œç¼–码规则不存在”
-- åŽŸå› ï¼šmes_md_auto_code_rule ä¸­ç¼ºå°‘ code = 'MD_WORKSTATION_CODE' çš„规则数据
-- è¯´æ˜Žï¼šæœ¬è„šæœ¬å¯é‡å¤æ‰§è¡Œï¼Œä¸ä¼šåˆ é™¤/覆盖已有规则
-- ç”Ÿæˆæ ¼å¼ï¼šWKS + 6 ä½æµæ°´å·ï¼Œä¾‹å¦‚ WKS000001
-- =============================================
-- 1. å·¥ä½œç«™ç¼–码规则主表
INSERT INTO mes_md_auto_code_rule
    (code, name, description, max_length, padded, padded_char, padded_method, status, remark, creator, updater)
SELECT 'MD_WORKSTATION_CODE', '工作站编码', '用于生成工作站编码', 12, b'0', NULL, NULL, 0, NULL, '1', '1'
FROM DUAL
WHERE NOT EXISTS (
    SELECT 1 FROM mes_md_auto_code_rule WHERE code = 'MD_WORKSTATION_CODE'
);
-- 2. å›ºå®šå‰ç¼€ WKS
INSERT INTO mes_md_auto_code_part
    (rule_id, sort, type, length, fix_character, serial_start_no, serial_step, cycle_flag, remark, creator, updater)
SELECT r.id, 1, 3, 3, 'WKS', NULL, NULL, NULL, '固定前缀', '1', '1'
FROM mes_md_auto_code_rule r
WHERE r.code = 'MD_WORKSTATION_CODE'
  AND NOT EXISTS (
      SELECT 1 FROM mes_md_auto_code_part p WHERE p.rule_id = r.id AND p.sort = 1
  );
-- 3. 6 ä½æµæ°´å·ï¼ˆä»Ž 1 å¼€å§‹ï¼Œæ­¥é•¿ 1,不循环)
INSERT INTO mes_md_auto_code_part
    (rule_id, sort, type, length, fix_character, serial_start_no, serial_step, cycle_flag, remark, creator, updater)
SELECT r.id, 2, 4, 6, NULL, 1, 1, b'0', '流水号', '1', '1'
FROM mes_md_auto_code_rule r
WHERE r.code = 'MD_WORKSTATION_CODE'
  AND NOT EXISTS (
      SELECT 1 FROM mes_md_auto_code_part p WHERE p.rule_id = r.id AND p.sort = 2
  );