From 7bd10d34e8a8dc2437ec8551eb511e37634d7306 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期一, 02 十一月 2026 16:51:52 +0800
Subject: [PATCH] feat(mes): 生产计划审批改走协同办公,修复工单领料与产成品入库校验
---
sql/mysql/pro_mps_audit_20261030.sql | 52 +++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 39 insertions(+), 13 deletions(-)
diff --git a/sql/mysql/pro_mps_audit_20261030.sql b/sql/mysql/pro_mps_audit_20261030.sql
index b44cf09..9f78637 100644
--- a/sql/mysql/pro_mps_audit_20261030.sql
+++ b/sql/mysql/pro_mps_audit_20261030.sql
@@ -1,8 +1,9 @@
-- =============================================
-- 璁″垝鎺掔▼锛圡PS锛夊鏍告祦 + 杈呮枡閲囪喘 鍗囩骇鑴氭湰
--- 1) mes_pro_mps 澧炲姞锛氳鍒掑紑濮嬫棩鏈熴�佸鏍镐俊鎭�侀噰璐敵璇峰崟鍏宠仈
+-- 1) mes_pro_mps 澧炲姞锛氳鍒掑紑濮嬫棩鏈熴�佸鏍镐俊鎭�侀噰璐敵璇峰崟鍏宠仈銆佸鎵规祦绋嬪疄渚嬬紪鍙�
-- 2) 瀛楀吀 mes_pro_mps_status 澧炲姞锛�4-瀹℃牳涓��5-宸插鏍�
--- 3) 鑿滃崟/鎸夐挳锛氭彁浜ゅ鏍搞�佸鏍搞�佺敓鎴愰噰璐敵璇峰崟
+-- 3) 鑿滃崟/鎸夐挳锛氭彁浜ゅ鏍搞�佺敓鎴愰噰璐敵璇峰崟锛堥〉闈㈠唴銆屽鏍搞�嶆寜閽凡搴熷純锛屽鎵圭粺涓�鍦ㄥ崗鍚屽姙鍏畬鎴愶級
+-- 4) 瀹℃壒娴佺▼锛氶渶閮ㄧ讲娴佺▼瀹氫箟 mes-pro-mps-audit锛堣 docs/sql/mes_pro_mps_audit_20261102.bpmn锛�
-- 鍙噸澶嶆墽琛岋紝涓嶅寘鍚� tenant_id锛堥」鐩笉浣跨敤澶氱鎴凤級
-- =============================================
START TRANSACTION;
@@ -45,6 +46,14 @@
'SELECT 1');
PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;
+-- 瀹℃壒娴佺▼瀹炰緥缂栧彿锛氭彁浜ゅ鏍稿悗杩涘叆鍗忓悓鍔炲叕瀹℃壒锛屽鎵圭粨鏋滃洖鍐欐湰琛�
+SET @exists = (SELECT COUNT(*) FROM information_schema.columns
+ WHERE table_schema = DATABASE() AND table_name = 'mes_pro_mps' AND column_name = 'process_instance_id');
+SET @sql = IF(@exists = 0,
+ 'ALTER TABLE mes_pro_mps ADD COLUMN process_instance_id varchar(64) DEFAULT NULL COMMENT ''BPM 娴佺▼瀹炰緥缂栧彿'' AFTER purchase_request_id',
+ 'SELECT 1');
+PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;
+
-- =============================================
-- 2. 瀛楀吀鏁版嵁锛歁PS 鐘舵�佸鍔� 瀹℃牳涓�(4)銆佸凡瀹℃牳(5)
-- =============================================
@@ -63,9 +72,14 @@
WHERE NOT EXISTS (SELECT 1 FROM system_dict_data WHERE dict_type = 'mes_pro_mps_status' AND value = '5' AND deleted = b'0');
-- =============================================
--- 3. 鎸夐挳鏉冮檺锛氭彁浜ゅ鏍� / 瀹℃牳 / 鐢熸垚閲囪喘鐢宠鍗�
+-- 3. 鎸夐挳鏉冮檺锛氭彁浜ゅ鏍� / 鐢熸垚閲囪喘鐢宠鍗�
-- =============================================
SET @mps_page = (SELECT id FROM system_menu WHERE deleted = b'0' AND permission = 'mes:pro-mps:query' ORDER BY id LIMIT 1);
+
+-- 3.0 娓呯悊鏃х増椤甸潰鍐呫�屽鏍搞�嶆寜閽紙瀹℃壒宸叉敼涓哄湪鍗忓悓鍔炲叕瀹屾垚锛�
+DELETE FROM system_role_menu
+WHERE menu_id IN (SELECT id FROM (SELECT id FROM system_menu WHERE permission = 'mes:pro-mps:audit' AND deleted = b'0') t);
+DELETE FROM system_menu WHERE permission = 'mes:pro-mps:audit' AND deleted = b'0';
-- 3.1 鎻愪氦瀹℃牳
SET @btn = (SELECT id FROM system_menu WHERE deleted = b'0' AND permission = 'mes:pro-mps:submit' ORDER BY id LIMIT 1);
@@ -74,14 +88,7 @@
SELECT @next, '鐢熶骇璁″垝-鎻愪氦瀹℃牳', 'mes:pro-mps:submit', 3, 20, @mps_page, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'
FROM DUAL WHERE @btn IS NULL AND @mps_page IS NOT NULL;
--- 3.2 瀹℃牳
-SET @btn = (SELECT id FROM system_menu WHERE deleted = b'0' AND permission = 'mes:pro-mps:audit' ORDER BY id LIMIT 1);
-SET @next = (SELECT IFNULL(MAX(id), 0) + 1 FROM system_menu);
-INSERT INTO system_menu(id, name, permission, type, sort, parent_id, path, icon, component, component_name, status, visible, keep_alive, always_show, creator, create_time, updater, update_time, deleted)
-SELECT @next, '鐢熶骇璁″垝-瀹℃牳', 'mes:pro-mps:audit', 3, 21, @mps_page, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'
-FROM DUAL WHERE @btn IS NULL AND @mps_page IS NOT NULL;
-
--- 3.3 鐢熸垚閲囪喘鐢宠鍗�
+-- 3.2 鐢熸垚閲囪喘鐢宠鍗�
SET @btn = (SELECT id FROM system_menu WHERE deleted = b'0' AND permission = 'mes:pro-mps:generate-purchase' ORDER BY id LIMIT 1);
SET @next = (SELECT IFNULL(MAX(id), 0) + 1 FROM system_menu);
INSERT INTO system_menu(id, name, permission, type, sort, parent_id, path, icon, component, component_name, status, visible, keep_alive, always_show, creator, create_time, updater, update_time, deleted)
@@ -89,12 +96,31 @@
FROM DUAL WHERE @btn IS NULL AND @mps_page IS NOT NULL;
-- =============================================
--- 4. 鎺堟潈锛氳秴绾х鐞嗗憳鐩存帴鎷ユ湁鍏ㄩ儴鑿滃崟锛屾澶勪粎琛ユ櫘閫氳鑹叉寜闇�鎺堟潈锛堢ず渚嬶細鐢熶骇璁″垝宸叉湁鏌ヨ鏉冮檺鐨勮鑹诧級
+-- 4. 鍗忓悓鍔炲叕娴佺▼鍒嗙被锛氱敓浜ц鍒掑鎵癸紙娴佺▼瀹氫箟 mes-pro-mps-audit 閮ㄧ讲鍚庡綊灞炶鍒嗙被锛�
+-- =============================================
+INSERT INTO bpm_category(name, code, description, status, sort, creator, create_time, updater, update_time, deleted)
+SELECT '鐢熶骇璁″垝瀹℃壒', 'mes_pro_mps_approve', 'MES 鐢熶骇璁″垝瀹℃壒', 0, 72, '1', NOW(), '1', NOW(), b'0'
+FROM DUAL
+WHERE NOT EXISTS (SELECT 1 FROM bpm_category WHERE code = 'mes_pro_mps_approve' AND deleted = b'0');
+
+-- =============================================
+-- 5. 鍗忓悓鍔炲叕瀹℃壒璇︽儏锛氱粦瀹氱敓浜ц鍒掍笟鍔¤鎯呯粍浠讹紝瀹℃壒浜哄彲鏌ョ湅璁″垝鏁版嵁
+-- =============================================
+INSERT INTO bpm_business_attach(process_definition_key, business_type, component_path, status, remark,
+ creator, create_time, updater, update_time, deleted)
+SELECT 'mes-pro-mps-audit', 'mes_pro_mps', '/mes/pro/mps/detail/approve/index.vue', 0,
+ '鐢熶骇璁″垝瀹℃壒灞曠ず鐢熶骇璁″垝璇︽儏', '1', NOW(), '1', NOW(), b'0'
+FROM DUAL
+WHERE NOT EXISTS (SELECT 1 FROM bpm_business_attach
+ WHERE process_definition_key = 'mes-pro-mps-audit' AND deleted = b'0');
+
+-- =============================================
+-- 6. 鎺堟潈锛氳秴绾х鐞嗗憳鐩存帴鎷ユ湁鍏ㄩ儴鑿滃崟锛屾澶勪粎琛ユ櫘閫氳鑹叉寜闇�鎺堟潈锛堢ず渚嬶細鐢熶骇璁″垝宸叉湁鏌ヨ鏉冮檺鐨勮鑹诧級
-- =============================================
INSERT INTO system_role_menu(role_id, menu_id, creator, create_time, updater, update_time, deleted)
SELECT DISTINCT rm.role_id, m.id, '1', NOW(), '1', NOW(), b'0'
FROM system_role_menu rm
-JOIN system_menu m ON m.permission IN ('mes:pro-mps:submit', 'mes:pro-mps:audit', 'mes:pro-mps:generate-purchase')
+JOIN system_menu m ON m.permission IN ('mes:pro-mps:submit', 'mes:pro-mps:generate-purchase')
AND m.deleted = b'0'
JOIN system_menu parent ON parent.id = rm.menu_id AND parent.permission = 'mes:pro-mps:query' AND parent.deleted = b'0'
WHERE rm.deleted = b'0'
--
Gitblit v1.9.3