From fbaeeeff5704f210bc6347454c0f16d255001822 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期三, 04 十一月 2026 16:32:09 +0800
Subject: [PATCH] refactor(srm): 重构供应商采购域,新增询价比价与保证金管理

---
 sql/mysql/finance_menu_init.sql |   95 ++++++++++++++++++++++++++++++-----------------
 1 files changed, 60 insertions(+), 35 deletions(-)

diff --git a/sql/mysql/finance_menu_init.sql b/sql/mysql/finance_menu_init.sql
index fafc754..a1cb1ce 100644
--- a/sql/mysql/finance_menu_init.sql
+++ b/sql/mysql/finance_menu_init.sql
@@ -7,66 +7,68 @@
 -- 鍚庣鏉冮檺鐮侊細瑙佸悇 Controller 鐨� @PreAuthorize
 --
 -- 璇存槑锛�
---   1. 鏂板缓涓�绾ц彍鍗曘�岃储鍔℃牳绠椼��(/finance-core)锛屼笉瑙︾鍘熸湁 ERP 涓嬬殑銆岃储鍔$鐞嗐��(id=2645)
---      鍙婂叾 缁撶畻璐︽埛/浠樻鍗�/鏀舵鍗� 涓変釜鑿滃崟銆�
+--   1. 鏂板缓涓�绾ц彍鍗曘�岃储鍔℃牳绠椼��(/finance-core)銆傚師 ERP 涓嬬殑銆岃储鍔$鐞嗐��(id=2645)
+--      鍥犲叾鐖惰彍鍗曘�孍RP 绯荤粺銆�(id=2563) 宸插仠鐢ㄨ�屼笉鍙锛屾湰鑴氭湰鎶婂畠鎸傚埌銆岃储鍔℃牳绠椼�嶄笅锛�
+--      鎭㈠ 缁撶畻璐︽埛/浠樻鍗�/鏀舵鍗� 涓変釜鑿滃崟锛堝師 role_menu 鎺堟潈淇濈暀锛夈��
 --   2. 椤甸潰鑿滃崟(type=2) 鍚勮嚜鎼哄甫 :query 鏉冮檺锛涘鍒犳敼/瀵煎嚭/鎶樻棫鎽婇攢绛夋搷浣滄潈闄愬缓鎴愭寜閽�(type=3)銆�
 --   3. 鎬昏处涓庢槑缁嗚处鍏辩敤 finance:ledger:query銆乫inance:ledger:export 涓や釜鏉冮檺鐮侊紝
 --      鍥犳銆屽鍑鸿处绨裤�嶆寜閽彧鎸傚湪銆屾�昏处銆嶄笅 鈥斺�� 鍚屼竴鏉冮檺鐮佸湪瑙掕壊鎺堟潈鏍戦噷鍑虹幇涓�娆″嵆鍙紝
 --      鎺堜簣鍚庛�屾槑缁嗚处銆嶇殑瀵煎嚭鎸夐挳鍚屾牱鐢熸晥銆�
---   4. 骞傜瓑锛氬厛鍒犻櫎鏈剼鏈崰鐢ㄧ殑 id 鍖洪棿 (1075500~1075549) 鍐嶆彃鍏ワ紝鍙噸澶嶆墽琛屻��
+--   4. 骞傜瓑锛氬厛鍒犻櫎鏈剼鏈崰鐢ㄧ殑 id 鍖洪棿 (1075600~1075649) 鍙婂搴旇鑹叉巿鏉冨啀鎻掑叆锛屽彲閲嶅鎵ц銆�
 --      娉ㄦ剰锛氳嫢涔嬪悗宸插湪銆岃鑹茬鐞嗐�嶉噷缁欒繖浜涜彍鍗曟巿鏉冿紝閲嶈窇鏈剼鏈細涓㈠け瀵瑰簲 system_role_menu 璁板綍銆�
 --   5. 涓嶅惈 tenant_id锛堟湰椤圭洰闈炲绉熸埛锛夈��
 -- =============================================
 
-DELETE FROM system_menu WHERE id BETWEEN 1075500 AND 1075549;
+DELETE FROM system_role_menu WHERE menu_id BETWEEN 1075600 AND 1075649;
+DELETE FROM system_menu WHERE id BETWEEN 1075600 AND 1075649;
 
 -- ---------------------------------------------------------------
 -- 涓�绾ц彍鍗�
 -- ---------------------------------------------------------------
 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) VALUES
-(1075500, '璐㈠姟鏍哥畻', '', 1, 4, 0, '/finance-core', 'ep:money', '', '', 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0');
+(1075600, '璐㈠姟鏍哥畻', '', 1, 4, 0, '/finance-core', 'ep:money', '', '', 0, b'1', b'1', b'1', '1', NOW(), '1', NOW(), b'0');
 
 -- ---------------------------------------------------------------
 -- 椤甸潰鑿滃崟 (type=2)
 -- ---------------------------------------------------------------
 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) VALUES
-(1075501, '璁拌处鍑瘉', 'finance:voucher:query',           2, 1, 1075500, 'voucher',         'ep:document',        'erp/finance/voucher/index',           'FinVoucher',         0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
-(1075502, '鎬昏处',     'finance:ledger:query',            2, 2, 1075500, 'general-ledger',  'ep:notebook',        'erp/finance/ledger/general/index',    'FinGeneralLedger',   0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
-(1075503, '鏄庣粏璐�',   'finance:ledger:query',            2, 3, 1075500, 'detail-ledger',   'ep:list',            'erp/finance/ledger/detail/index',     'FinDetailLedger',    0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
-(1075504, '浼氳绉戠洰', 'finance:account-subject:query',   2, 4, 1075500, 'subject',         'ep:collection-tag',  'erp/finance/subject/index',           'FinAccountSubject',  0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
-(1075505, '鍥哄畾璧勪骇', 'finance:fixed-asset:query',       2, 5, 1075500, 'fixed-asset',     'ep:office-building', 'erp/finance/fixed-asset/index',       'FinFixedAsset',      0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
-(1075506, '鏃犲舰璧勪骇', 'finance:intangible-asset:query',  2, 6, 1075500, 'intangible-asset','ep:medal',           'erp/finance/intangible-asset/index',  'FinIntangibleAsset', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
-(1075507, '璐㈠姟鎶ヨ〃', 'finance:statistics:query',        2, 7, 1075500, 'statistics',      'ep:data-line',       'erp/finance/statistics/index',        'FinStatistics',      0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0');
+(1075601, '璁拌处鍑瘉', 'finance:voucher:query',           2, 1, 1075600, 'voucher',         'ep:document',        'erp/finance/voucher/index',           'FinVoucher',         0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075602, '鎬昏处',     'finance:ledger:query',            2, 2, 1075600, 'general-ledger',  'ep:notebook',        'erp/finance/ledger/general/index',    'FinGeneralLedger',   0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075603, '鏄庣粏璐�',   'finance:ledger:query',            2, 3, 1075600, 'detail-ledger',   'ep:list',            'erp/finance/ledger/detail/index',     'FinDetailLedger',    0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075604, '浼氳绉戠洰', 'finance:account-subject:query',   2, 4, 1075600, 'subject',         'ep:collection-tag',  'erp/finance/subject/index',           'FinAccountSubject',  0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075605, '鍥哄畾璧勪骇', 'finance:fixed-asset:query',       2, 5, 1075600, 'fixed-asset',     'ep:office-building', 'erp/finance/fixed-asset/index',       'FinFixedAsset',      0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075606, '鏃犲舰璧勪骇', 'finance:intangible-asset:query',  2, 6, 1075600, 'intangible-asset','ep:medal',           'erp/finance/intangible-asset/index',  'FinIntangibleAsset', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075607, '璐㈠姟鎶ヨ〃', 'finance:statistics:query',        2, 7, 1075600, 'statistics',      'ep:data-line',       'erp/finance/statistics/index',        'FinStatistics',      0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0');
 
 -- ---------------------------------------------------------------
 -- 鎸夐挳鏉冮檺 (type=3)
 -- ---------------------------------------------------------------
 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) VALUES
 -- 璁拌处鍑瘉
-(1075510, '鍑瘉鏂板',     'finance:voucher:create',        3, 1, 1075501, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
-(1075511, '鍑瘉淇敼',     'finance:voucher:update',        3, 2, 1075501, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
-(1075512, '鍑瘉鍒犻櫎',     'finance:voucher:delete',        3, 3, 1075501, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
-(1075513, '鍑瘉鐘舵�佸彉鏇�', 'finance:voucher:update-status', 3, 4, 1075501, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
-(1075514, '鍑瘉瀵煎嚭',     'finance:voucher:export',        3, 5, 1075501, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075610, '鍑瘉鏂板',     'finance:voucher:create',        3, 1, 1075601, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075611, '鍑瘉淇敼',     'finance:voucher:update',        3, 2, 1075601, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075612, '鍑瘉鍒犻櫎',     'finance:voucher:delete',        3, 3, 1075601, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075613, '鍑瘉鐘舵�佸彉鏇�', 'finance:voucher:update-status', 3, 4, 1075601, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075614, '鍑瘉瀵煎嚭',     'finance:voucher:export',        3, 5, 1075601, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
 -- 鎬昏处 / 鏄庣粏璐︼紙涓ら〉鍏辩敤 finance:ledger:query锛屽鍑烘潈闄愬彧鍦ㄦ澶勬寕涓�娆★紝瑙佹枃浠跺ご璇存槑 3锛�
-(1075520, '璐︾翱瀵煎嚭',     'finance:ledger:export',         3, 1, 1075502, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075620, '璐︾翱瀵煎嚭',     'finance:ledger:export',         3, 1, 1075602, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
 -- 浼氳绉戠洰
-(1075521, '绉戠洰鏂板',     'finance:account-subject:create',3, 1, 1075504, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
-(1075522, '绉戠洰淇敼',     'finance:account-subject:update',3, 2, 1075504, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
-(1075523, '绉戠洰鍒犻櫎',     'finance:account-subject:delete',3, 3, 1075504, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
-(1075524, '绉戠洰瀵煎嚭',     'finance:account-subject:export',3, 4, 1075504, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075621, '绉戠洰鏂板',     'finance:account-subject:create',3, 1, 1075604, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075622, '绉戠洰淇敼',     'finance:account-subject:update',3, 2, 1075604, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075623, '绉戠洰鍒犻櫎',     'finance:account-subject:delete',3, 3, 1075604, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075624, '绉戠洰瀵煎嚭',     'finance:account-subject:export',3, 4, 1075604, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
 -- 鍥哄畾璧勪骇
-(1075530, '璧勪骇鏂板',     'finance:fixed-asset:create',    3, 1, 1075505, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
-(1075531, '璧勪骇淇敼',     'finance:fixed-asset:update',    3, 2, 1075505, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
-(1075532, '璧勪骇鍒犻櫎',     'finance:fixed-asset:delete',    3, 3, 1075505, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
-(1075533, '璁℃彁鎶樻棫',     'finance:fixed-asset:depreciate',3, 4, 1075505, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
-(1075534, '璧勪骇瀵煎嚭',     'finance:fixed-asset:export',    3, 5, 1075505, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075630, '璧勪骇鏂板',     'finance:fixed-asset:create',    3, 1, 1075605, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075631, '璧勪骇淇敼',     'finance:fixed-asset:update',    3, 2, 1075605, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075632, '璧勪骇鍒犻櫎',     'finance:fixed-asset:delete',    3, 3, 1075605, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075633, '璁℃彁鎶樻棫',     'finance:fixed-asset:depreciate',3, 4, 1075605, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075634, '璧勪骇瀵煎嚭',     'finance:fixed-asset:export',    3, 5, 1075605, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
 -- 鏃犲舰璧勪骇
-(1075540, '璧勪骇鏂板',     'finance:intangible-asset:create',   3, 1, 1075506, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
-(1075541, '璧勪骇淇敼',     'finance:intangible-asset:update',   3, 2, 1075506, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
-(1075542, '璧勪骇鍒犻櫎',     'finance:intangible-asset:delete',   3, 3, 1075506, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
-(1075543, '鏃犲舰璧勪骇鎽婇攢', 'finance:intangible-asset:amortize', 3, 4, 1075506, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
-(1075544, '璧勪骇瀵煎嚭',     'finance:intangible-asset:export',   3, 5, 1075506, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0');
+(1075640, '璧勪骇鏂板',     'finance:intangible-asset:create',   3, 1, 1075606, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075641, '璧勪骇淇敼',     'finance:intangible-asset:update',   3, 2, 1075606, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075642, '璧勪骇鍒犻櫎',     'finance:intangible-asset:delete',   3, 3, 1075606, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075643, '鏃犲舰璧勪骇鎽婇攢', 'finance:intangible-asset:amortize', 3, 4, 1075606, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0'),
+(1075644, '璧勪骇瀵煎嚭',     'finance:intangible-asset:export',   3, 5, 1075606, '', '', '', '', 0, b'1', b'0', b'1', '1', NOW(), '1', NOW(), b'0');
 
 -- ---------------------------------------------------------------
 -- 瑙掕壊鎺堟潈锛堝彲閫夛級
@@ -75,11 +77,34 @@
 -- 涔熷彲鐢ㄤ笅闈㈢殑璇彞鐩存帴鎺堟潈锛堟妸 <roleId> 鎹㈡垚鐩爣瑙掕壊 id锛屽弬鑰冿細163 璁惧 / 164 璐ㄩ噺 / 165 閿�鍞級锛�
 --
 -- INSERT INTO system_role_menu (role_id, menu_id, creator, create_time, updater, update_time, deleted)
--- SELECT 165, id, '1', NOW(), '1', NOW(), b'0' FROM system_menu WHERE id BETWEEN 1075500 AND 1075549;
+-- SELECT 165, id, '1', NOW(), '1', NOW(), b'0' FROM system_menu WHERE id BETWEEN 1075600 AND 1075649;
 -- ---------------------------------------------------------------
 
 -- ---------------------------------------------------------------
+-- 鎭㈠鍘熸湁 ERP銆岃储鍔$鐞嗐��(id=2645) 瀛愭爲
+-- 鍏剁埗鑿滃崟銆孍RP 绯荤粺銆�(id=2563) 宸插仠鐢紝瀵艰嚧 缁撶畻璐︽埛/浠樻鍗�/鏀舵鍗� 鏃犳硶鏄剧ず锛�
+-- 鐜版寕鍒般�岃储鍔℃牳绠椼�嶄笅浣滀负浜岀骇鐩綍锛堟帓搴� 8锛屾帓鍦ㄨ储鍔℃姤琛ㄤ箣鍚庯級銆�
+-- ---------------------------------------------------------------
+UPDATE system_menu SET parent_id = 1075600, sort = 8 WHERE id = 2645;
+
+-- ---------------------------------------------------------------
+-- 缁欏師鏈嫢鏈夈�岃储鍔$鐞嗐��(2645) 鐨勮鑹茶ˉ鎺堟柊澧炵殑璐㈠姟鏍哥畻鑿滃崟
+-- 锛堣秴绠$敱浠g爜鐩存帴杩斿洖鍏ㄩ儴鑿滃崟锛屼笉鍙楀奖鍝嶏級
+-- ---------------------------------------------------------------
+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_menu m
+JOIN system_role_menu rm ON rm.menu_id = 2645 AND rm.deleted = b'0'
+WHERE m.id BETWEEN 1075600 AND 1075649
+  AND NOT EXISTS (SELECT 1
+                  FROM system_role_menu x
+                  WHERE x.role_id = rm.role_id
+                    AND x.menu_id = m.id
+                    AND x.deleted = b'0');
+
+-- ---------------------------------------------------------------
 -- 鍥炴粴鑴氭湰
--- DELETE FROM system_menu WHERE id BETWEEN 1075500 AND 1075549;
--- DELETE FROM system_role_menu WHERE menu_id BETWEEN 1075500 AND 1075549;
+-- UPDATE system_menu SET parent_id = 2563, sort = 50 WHERE id = 2645;
+-- DELETE FROM system_menu WHERE id BETWEEN 1075600 AND 1075649;
+-- DELETE FROM system_role_menu WHERE menu_id BETWEEN 1075600 AND 1075649;
 -- ---------------------------------------------------------------

--
Gitblit v1.9.3