From 125ce27a5f4f85800c0564b515be153b88adeaca Mon Sep 17 00:00:00 2001
From: liu <2021943741@qq.com>
Date: 星期三, 30 九月 2026 15:57:32 +0800
Subject: [PATCH] feat(wxcp): 默认角色补首页数据权限,修一进首页就报没有权限

---
 docs/sql/wxcp_menu.sql                  |   24 ++++++++++++++++++++++++
 docs/sql/config_export_all_20260929.sql |   24 ++++++++++++++++++++++++
 docs/wxcp_login_integration.md          |    2 +-
 3 files changed, 49 insertions(+), 1 deletions(-)

diff --git a/docs/sql/config_export_all_20260929.sql b/docs/sql/config_export_all_20260929.sql
index 4dc2aa7..3c81419 100644
--- a/docs/sql/config_export_all_20260929.sql
+++ b/docs/sql/config_export_all_20260929.sql
@@ -11703,4 +11703,28 @@
                          AND `deleted` = b'0') `t`
         WHERE `t`.`user_id` = `u`.`id`);
 
+-- 5) 棣栭〉鏁版嵁鏉冮檺
+--
+-- 棣栭〉锛�/analytics锛夋湰韬槸鍓嶇闈欐�佽矾鐢便�佷汉浜哄彲瑙侊紝浣嗗畠鍐呴儴浼氳皟 4 涓悗绔帴鍙f媺鏁版嵁锛�
+-- 杩欎簺鎺ュ彛閮藉甫 @PreAuthorize锛岃鑹茬己鏉冮檺鏃朵竴杩涢椤靛氨鎶ャ�屾病鏈夋潈闄愩�嶏細
+--   bpm/task/todo-page          鈫� bpm:task:query
+--   finance/reimbursement/page  鈫� finance:reimbursement:query
+--   research/application/page   鈫� research:application:query
+--   research/guideline/page     鈫� research:guideline:query
+--
+-- 鎸� permission 涓叉煡銆佷笉鍐欐鑿滃崟缂栧彿锛氱紪鍙峰湪鍚勫簱涓嶄竴鑷达紝鍐欐鎹㈠簱灏卞け鏁堛��
+-- 鍙巿鎸夐挳锛坱ype=3锛夈�佷笉鎺堝叾涓婄骇鑿滃崟锛屾墍浠ヤ笉浼氬線渚ц竟鏍忓 BPM / 璐㈠姟 / 绉戠爺鐨勫叆鍙c��
+INSERT INTO `system_role_menu` (`role_id`, `menu_id`, `creator`, `updater`)
+SELECT @wxcp_role_id, `m`.`id`, 'admin', 'admin'
+FROM `system_menu` `m`
+WHERE `m`.`deleted` = b'0'
+  AND `m`.`permission` IN ('bpm:task:query', 'finance:reimbursement:query',
+                           'research:application:query', 'research:guideline:query')
+  AND @wxcp_role_id IS NOT NULL
+  AND NOT EXISTS (
+        SELECT 1 FROM (SELECT `menu_id` FROM `system_role_menu`
+                       WHERE `role_id` = @wxcp_role_id
+                         AND `deleted` = b'0') `t`
+        WHERE `t`.`menu_id` = `m`.`id`);
+
 SET FOREIGN_KEY_CHECKS = 1;
diff --git a/docs/sql/wxcp_menu.sql b/docs/sql/wxcp_menu.sql
index 13c4a52..451d084 100644
--- a/docs/sql/wxcp_menu.sql
+++ b/docs/sql/wxcp_menu.sql
@@ -158,3 +158,27 @@
                        WHERE `role_id` = @wxcp_role_id
                          AND `deleted` = b'0') `t`
         WHERE `t`.`user_id` = `u`.`id`);
+
+-- 5) 棣栭〉鏁版嵁鏉冮檺
+--
+-- 棣栭〉锛�/analytics锛夋湰韬槸鍓嶇闈欐�佽矾鐢便�佷汉浜哄彲瑙侊紝浣嗗畠鍐呴儴浼氳皟 4 涓悗绔帴鍙f媺鏁版嵁锛�
+-- 杩欎簺鎺ュ彛閮藉甫 @PreAuthorize锛岃鑹茬己鏉冮檺鏃朵竴杩涢椤靛氨鎶ャ�屾病鏈夋潈闄愩�嶏細
+--   bpm/task/todo-page          鈫� bpm:task:query
+--   finance/reimbursement/page  鈫� finance:reimbursement:query
+--   research/application/page   鈫� research:application:query
+--   research/guideline/page     鈫� research:guideline:query
+--
+-- 鎸� permission 涓叉煡銆佷笉鍐欐鑿滃崟缂栧彿锛氱紪鍙峰湪鍚勫簱涓嶄竴鑷达紝鍐欐鎹㈠簱灏卞け鏁堛��
+-- 鍙巿鎸夐挳锛坱ype=3锛夈�佷笉鎺堝叾涓婄骇鑿滃崟锛屾墍浠ヤ笉浼氬線渚ц竟鏍忓 BPM / 璐㈠姟 / 绉戠爺鐨勫叆鍙c��
+INSERT INTO `system_role_menu` (`role_id`, `menu_id`, `creator`, `updater`)
+SELECT @wxcp_role_id, `m`.`id`, 'admin', 'admin'
+FROM `system_menu` `m`
+WHERE `m`.`deleted` = b'0'
+  AND `m`.`permission` IN ('bpm:task:query', 'finance:reimbursement:query',
+                           'research:application:query', 'research:guideline:query')
+  AND @wxcp_role_id IS NOT NULL
+  AND NOT EXISTS (
+        SELECT 1 FROM (SELECT `menu_id` FROM `system_role_menu`
+                       WHERE `role_id` = @wxcp_role_id
+                         AND `deleted` = b'0') `t`
+        WHERE `t`.`menu_id` = `m`.`id`);
diff --git a/docs/wxcp_login_integration.md b/docs/wxcp_login_integration.md
index 5054d2a..22edc46 100644
--- a/docs/wxcp_login_integration.md
+++ b/docs/wxcp_login_integration.md
@@ -93,7 +93,7 @@
 | 鍦烘櫙 | 瑙勫垯 |
 |------|------|
 | 浼佷笟寰俊棣栨鎵爜锛堟湭缁戝畾锛� | 鑷姩鍒涘缓绯荤粺鐢ㄦ埛锛岀敤鎴峰悕涓� `wx_` + 8 浣嶉殢鏈哄崄鍏繘鍒讹紝鏄电О鍙栦紒涓氬井淇℃樀绉帮紝璐﹀彿鐘舵�佷负鍚敤锛岄殢鏈虹敓鎴愬瘑鐮侊紙鐢ㄦ埛鏃犻渶鐭ユ檽锛屼粎鐢ㄤ簬鍗犱綅锛� |
-| 棣栨娉ㄥ唽鍚庣殑榛樿鏉冮檺 | 缁戝畾瑙掕壊 `wxcp_user`锛�**浠呮巿浜堛�屼細鍛樼鐞嗐�嶆暣妫靛瓙鏍�**锛堟牴鐩綍 1075490 + 3 涓彍鍗� + 10 涓寜閽紝鍏� **14 鏉�**锛汼QL 瑙� `docs/sql/wxcp_menu.sql` 鏈熬锛夈�傞椤典笉鍙楄彍鍗曡〃鎺у埗锛氬畠鏄墠绔潤鎬佽矾鐢憋紙`src/router/routes/modules/dashboard.ts` 閲岀殑 `/analytics`锛夛紝backend 妯″紡涓嬬敱 `generateRoutesByBackend` 鏈熬鐨� `return [...options.routes, ...routes]` 濮嬬粓鍚堝苟杩涙潵锛屼换浣曠櫥褰曠敤鎴烽兘鍙銆佷篃鏃犻渶鎺堟潈鈥斺�旀墍浠ャ�岃鑹茬鐞嗐�嶇殑鑿滃崟鏍戦噷**鏍规湰鎵句笉鍒般�岄椤点��**锛岃繖鏄甯哥殑锛屼笉鏄紡閰嶃�傝鑹茬己澶辨椂浠g爜鍙 warn 鏃ュ織銆佷笉闃绘柇鐧诲綍锛岃〃鐜颁负銆岃兘杩涚郴缁熶絾鑿滃崟鍏ㄧ┖銆� |
+| 棣栨娉ㄥ唽鍚庣殑榛樿鏉冮檺 | 缁戝畾瑙掕壊 `wxcp_user`锛�**浠呮巿浜堛�屼細鍛樼鐞嗐�嶆暣妫靛瓙鏍�**锛堟牴鐩綍 1075490 + 3 涓彍鍗� + 10 涓寜閽紝鍏� **14 鏉�**锛汼QL 瑙� `docs/sql/wxcp_menu.sql` 鏈熬锛夈�傞椤典笉鍙楄彍鍗曡〃鎺у埗锛氬畠鏄墠绔潤鎬佽矾鐢憋紙`src/router/routes/modules/dashboard.ts` 閲岀殑 `/analytics`锛夛紝backend 妯″紡涓嬬敱 `generateRoutesByBackend` 鏈熬鐨� `return [...options.routes, ...routes]` 濮嬬粓鍚堝苟杩涙潵锛屼换浣曠櫥褰曠敤鎴烽兘鍙銆佷篃鏃犻渶鎺堟潈鈥斺�旀墍浠ャ�岃鑹茬鐞嗐�嶇殑鑿滃崟鏍戦噷**鏍规湰鎵句笉鍒般�岄椤点��**锛岃繖鏄甯哥殑锛屼笉鏄紡閰嶃�傝鑹茬己澶辨椂浠g爜鍙 warn 鏃ュ織銆佷笉闃绘柇鐧诲綍锛岃〃鐜颁负銆岃兘杩涚郴缁熶絾鑿滃崟鍏ㄧ┖銆嶃��**鍙﹀杩樿鎺� 4 涓椤垫寜閽潈闄�**锛坄wxcp_menu.sql` 绗� 5 娈碉級锛氶椤佃櫧鐒舵槸闈欐�佽矾鐢变汉浜哄彲瑙侊紝浣嗗畠鍐呴儴浼氳皟 `bpm/task/todo-page`銆乣finance/reimbursement/page`銆乣research/application/page`銆乣research/guideline/page` 杩� 4 涓甫 `@PreAuthorize` 鐨勬帴鍙f媺鏁版嵁锛屼笉鎺堝氨涓�杩涢椤垫姤銆屾病鏈夋潈闄愩�嶃�傚彧鎺堟寜閽�佷笉鎺堜笂绾ц彍鍗曪紝涓嶄細寰�渚ц竟鏍忓 BPM / 璐㈠姟 / 绉戠爺鍏ュ彛 |
 | 浼佷笟寰俊鍐嶆鎵爜锛堝凡缁戝畾锛� | 鐩存帴鐧诲綍锛屼笉鍒涘缓鏂扮敤鎴� |
 | 闈炰紒涓氬井淇$殑绀句氦骞冲彴棣栨鐧诲綍 | 浠嶈繑鍥� `1_002_000_005`銆屾湭缁戝畾璐﹀彿锛岄渶瑕佽繘琛岀粦瀹氥�嶏紝闇�寮曞鐢ㄦ埛璧拌处鍙峰瘑鐮佺櫥褰曞苟缁戝畾 |
 | 璐﹀彿瀵嗙爜鐧诲綍鏃舵惡甯︾ぞ浜ゅ弬鏁� | 璧板師鏈夌粦瀹氶�昏緫锛岀櫥褰曟垚鍔熷悗璇ョぞ浜よ处鍙蜂笌璐﹀彿缁戝畾 |

--
Gitblit v1.9.3