From 6774e2d2a4442cc8485d60ff34f76fcf1496f5c7 Mon Sep 17 00:00:00 2001 From: liu <2021943741@qq.com> Date: 星期三, 30 九月 2026 15:26:17 +0800 Subject: [PATCH] docs(wxcp): 补 wxcp_user 默认角色的建角色/授权 SQL 与部署说明 --- docs/sql/wxcp_menu.sql | 64 +++++++++++++++++++++ docs/sql/config_export_all_20260929.sql | 65 +++++++++++++++++++++ docs/wxcp_login_integration.md | 2 3 files changed, 131 insertions(+), 0 deletions(-) diff --git a/docs/sql/config_export_all_20260929.sql b/docs/sql/config_export_all_20260929.sql index 7f1cc1e..921f8a9 100644 --- a/docs/sql/config_export_all_20260929.sql +++ b/docs/sql/config_export_all_20260929.sql @@ -11634,4 +11634,69 @@ -- WHERE `r`.`id` IN (1, 160, 2) -- 杩藉姞缁欍�屾櫘閫氳鑹层�� -- ============================================================ +-- ============================================================ +-- 浼佷笟寰俊鎵爜鑷姩娉ㄥ唽璐﹀彿鐨勯粯璁よ鑹诧細wxcp_user +-- 锛堜笌 docs/sql/wxcp_menu.sql 鏈熬鍚屼竴娈碉紝淇濇寔鍚屾锛� +-- +-- 蹇呴』鏀惧湪鏈枃浠堕樁娈典簩鐨� `DELETE FROM system_role` 涔嬪悗鎵ц锛� +-- 鍚﹀垯瑙掕壊浼氳闃舵浜屼粠婧愬簱閲嶆嫹鏃舵竻鎺� 鈥斺�� 杩欎篃鏄畠钀藉湪闃舵涓夋湯灏剧殑鍘熷洜銆� +-- +-- 鑳屾櫙锛氫紒涓氬井淇¢娆℃壂鐮佽蛋銆岃嚜鍔ㄦ敞鍐屻�嶅缓鍙凤紝寤哄畬鎸夈�岃鑹茬紪鐮併�嶆煡鏈寤哄嚭鏉ョ殑 +-- 杩欎釜瑙掕壊骞剁粦瀹氥�備唬鐮佸父閲忚 AdminAuthServiceImpl.WXCP_DEFAULT_ROLE_CODE銆� +-- 瑙掕壊涓嶅瓨鍦ㄦ椂浠g爜鍙墦 warn 鏃ュ織銆佷笉闃绘柇鐧诲綍 鈥斺�� 璐﹀彿鑳借繘浣嗕竴涓彍鍗曢兘娌℃湁锛� +-- 灞炰簬銆岃兘鐧诲綍鍗翠粈涔堥兘鐪嬩笉鍒般�嶇殑闈欓粯鏁呴殰銆� +-- +-- 鎺堜簣鑼冨洿锛氫粎銆屼細鍛樼鐞嗐�嶆暣妫靛瓙鏍戯紙鏍硅彍鍗曠紪鍙� 1075490锛屽畾涔夎 ums_module.sql锛夈�� +-- 棣栭〉鏄墠绔潤鎬佽矾鐢便�佷笉渚濊禆鑿滃崟琛紝浠讳綍璐﹀彿閮界湅寰楀埌锛屾棤闇�鎺堟潈銆� +-- +-- 骞傜瓑锛氳鑹插厛鏌ュ悗鎻掞紱瑙掕壊鑿滃崟鍏宠仈鍏堝垹鍚庢彃锛屽彲閲嶅鎵ц銆� +-- ============================================================ + +-- 1) 寤鸿鑹� +INSERT INTO `system_role` + (`name`, `code`, `sort`, `data_scope`, `data_scope_dept_ids`, `status`, `type`, `remark`, `creator`, `updater`) +SELECT '浼佷笟寰俊鎵爜鐢ㄦ埛', 'wxcp_user', 100, 1, '', 0, 2, + '浼佷笟寰俊棣栨鎵爜鑷姩娉ㄥ唽鐨勮处鍙烽粯璁よ鑹诧紝浠呮巿浜堛�屼細鍛樼鐞嗐�嶆ā鍧�', + 'admin', 'admin' +FROM DUAL +WHERE NOT EXISTS ( + SELECT 1 FROM (SELECT `id` FROM `system_role` + WHERE `code` = 'wxcp_user' AND `deleted` = b'0') `t`); + +-- 2) 鍙栬鑹茬紪鍙凤紙鏂板缓鐨勪笌宸插瓨鍦ㄧ殑閮藉彇寰楀埌锛涘彇涓嶅埌鏃朵负 NULL锛屼笅闈袱鍙ヨ嚜鐒朵笉鐢熸晥锛� +SET @wxcp_role_id = (SELECT `id` FROM `system_role` + WHERE `code` = 'wxcp_user' AND `deleted` = b'0' LIMIT 1); + +-- 3) 鎺堟潈锛氫細鍛樼鐞嗘牴鑿滃崟(1075490) + 瀛愯彍鍗� + 瀛欒彍鍗曪紝涓夌骇瑕嗙洊鏁存5瀛愭爲 +DELETE FROM `system_role_menu` WHERE `role_id` = @wxcp_role_id; + +INSERT INTO `system_role_menu` (`role_id`, `menu_id`, `creator`, `updater`) +SELECT @wxcp_role_id, `m`.`id`, 'admin', 'admin' +FROM `system_menu` `m` +LEFT JOIN `system_menu` `p1` ON `p1`.`id` = `m`.`parent_id` +LEFT JOIN `system_menu` `p2` ON `p2`.`id` = `p1`.`parent_id` +WHERE `m`.`deleted` = b'0' + AND (`m`.`id` = 1075490 OR `p1`.`id` = 1075490 OR `p2`.`id` = 1075490) + AND @wxcp_role_id IS NOT NULL; + +-- 4) 鍥炲~锛氱粰鏈鎵ц鍓嶅氨宸插瓨鍦ㄧ殑鑷姩娉ㄥ唽璐﹀彿琛ヤ笂榛樿瑙掕壊 +-- +-- 涓轰粈涔堝繀椤绘湁杩欎竴姝ワ細璐﹀彿涓�鏃﹀啓杩� system_social_user_bind锛屽啀娆℃壂鐮佽蛋鐨勬槸 +-- 銆屽凡缁戝畾銆嶅垎鏀紝涓嶄細鍐嶈繘鑷姩娉ㄥ唽閫昏緫 鈥斺�� 涓嶈ˉ鐨勮瘽杩欐壒鑰佽处鍙锋案杩滄病鏈夎彍鍗曘�� +-- +-- 鍙鑷姩娉ㄥ唽鐨勭敤鎴峰悕鍓嶇紑锛坵x_ + 8 浣嶅崄鍏繘鍒讹紝涓� AdminAuthServiceImpl 鐢熸垚瑙勫垯涓�鑷达級锛� +-- 鐢� ESCAPE 鏄惧紡澹版槑杞箟绗︼紝閬垮厤 `_` 琚� LIKE 褰撴垚鍗曞瓧绗﹂�氶厤銆� +-- system_user_role 娌℃湁 (user_id, role_id) 鍞竴绾︽潫锛屾墍浠ョ敤 NOT EXISTS 鍏滃箓绛夈�� +INSERT INTO `system_user_role` (`user_id`, `role_id`, `creator`, `updater`) +SELECT `u`.`id`, @wxcp_role_id, 'admin', 'admin' +FROM `system_users` `u` +WHERE `u`.`deleted` = b'0' + AND `u`.`username` LIKE 'wx!_%' ESCAPE '!' + AND @wxcp_role_id IS NOT NULL + AND NOT EXISTS ( + SELECT 1 FROM (SELECT `user_id` FROM `system_user_role` + WHERE `role_id` = @wxcp_role_id + AND `deleted` = b'0') `t` + WHERE `t`.`user_id` = `u`.`id`); + SET FOREIGN_KEY_CHECKS = 1; diff --git a/docs/sql/wxcp_menu.sql b/docs/sql/wxcp_menu.sql index 2961a18..694651c 100644 --- a/docs/sql/wxcp_menu.sql +++ b/docs/sql/wxcp_menu.sql @@ -90,3 +90,67 @@ -- 鎹㈡垚鐩爣瑙掕壊缂栧彿鍗冲彲锛屼緥濡傦細 -- WHERE `r`.`id` IN (1, 160, 2) -- 杩藉姞缁欍�屾櫘閫氳鑹层�� -- ============================================================ + +-- ============================================================ +-- 浼佷笟寰俊鎵爜鑷姩娉ㄥ唽璐﹀彿鐨勯粯璁よ鑹诧細wxcp_user +-- +-- 鑳屾櫙锛氫紒涓氬井淇¢娆℃壂鐮佽蛋銆岃嚜鍔ㄦ敞鍐屻�嶅缓鍙凤紝寤哄畬鎸夈�岃鑹茬紪鐮併�嶆煡鏈寤哄嚭鏉ョ殑 +-- 杩欎釜瑙掕壊骞剁粦瀹氥�備唬鐮佸父閲忚 AdminAuthServiceImpl.WXCP_DEFAULT_ROLE_CODE锛� +-- 鏀圭紪鐮佽涓よ竟涓�璧锋敼銆� +-- 瑙掕壊涓嶅瓨鍦ㄦ椂浠g爜鍙墦 warn 鏃ュ織銆佷笉闃绘柇鐧诲綍 鈥斺�� 璐﹀彿鑳借繘锛屼絾涓�涓彍鍗曢兘娌℃湁锛� +-- 鏄�岃兘鐧诲綍鍗翠粈涔堥兘鐪嬩笉鍒般�嶇殑闈欓粯鏁呴殰锛屾墍浠ユ柊搴撳垵濮嬪寲蹇呴』甯︿笂杩欎竴娈点�� +-- +-- 涓轰粈涔堢敤缂栫爜涓嶇敤瑙掕壊缂栧彿锛氳鑹茬紪鍙峰湪鏈湴/娴嬭瘯/鐢熶骇鍚勫簱涓嶄竴鑷达紝鍐欐鎹㈠簱灏卞け鏁堛�� +-- +-- 鎺堜簣鑼冨洿锛氫粎銆屼細鍛樼鐞嗐�嶆暣妫靛瓙鏍戯紙鏍硅彍鍗曠紪鍙� 1075490锛屽畾涔夎 ums_module.sql锛夈�� +-- 棣栭〉鏄墠绔潤鎬佽矾鐢便�佷笉渚濊禆鑿滃崟琛紝浠讳綍璐﹀彿閮界湅寰楀埌锛屾棤闇�鎺堟潈銆� +-- +-- 骞傜瓑锛氳鑹插厛鏌ュ悗鎻掞紱瑙掕壊鑿滃崟鍏宠仈鍏堝垹鍚庢彃锛屽彲閲嶅鎵ц銆� +-- ============================================================ + +-- 1) 寤鸿鑹� +INSERT INTO `system_role` + (`name`, `code`, `sort`, `data_scope`, `data_scope_dept_ids`, `status`, `type`, `remark`, `creator`, `updater`) +SELECT '浼佷笟寰俊鎵爜鐢ㄦ埛', 'wxcp_user', 100, 1, '', 0, 2, + '浼佷笟寰俊棣栨鎵爜鑷姩娉ㄥ唽鐨勮处鍙烽粯璁よ鑹诧紝浠呮巿浜堛�屼細鍛樼鐞嗐�嶆ā鍧�', + 'admin', 'admin' +FROM DUAL +WHERE NOT EXISTS ( + SELECT 1 FROM (SELECT `id` FROM `system_role` + WHERE `code` = 'wxcp_user' AND `deleted` = b'0') `t`); + +-- 2) 鍙栬鑹茬紪鍙凤紙鏂板缓鐨勪笌宸插瓨鍦ㄧ殑閮藉彇寰楀埌锛涘彇涓嶅埌鏃朵负 NULL锛屼笅闈袱鍙ヨ嚜鐒朵笉鐢熸晥锛� +SET @wxcp_role_id = (SELECT `id` FROM `system_role` + WHERE `code` = 'wxcp_user' AND `deleted` = b'0' LIMIT 1); + +-- 3) 鎺堟潈锛氫細鍛樼鐞嗘牴鑿滃崟(1075490) + 瀛愯彍鍗� + 瀛欒彍鍗曪紝涓夌骇瑕嗙洊鏁存5瀛愭爲 +DELETE FROM `system_role_menu` WHERE `role_id` = @wxcp_role_id; + +INSERT INTO `system_role_menu` (`role_id`, `menu_id`, `creator`, `updater`) +SELECT @wxcp_role_id, `m`.`id`, 'admin', 'admin' +FROM `system_menu` `m` +LEFT JOIN `system_menu` `p1` ON `p1`.`id` = `m`.`parent_id` +LEFT JOIN `system_menu` `p2` ON `p2`.`id` = `p1`.`parent_id` +WHERE `m`.`deleted` = b'0' + AND (`m`.`id` = 1075490 OR `p1`.`id` = 1075490 OR `p2`.`id` = 1075490) + AND @wxcp_role_id IS NOT NULL; + +-- 4) 鍥炲~锛氱粰鏈鎵ц鍓嶅氨宸插瓨鍦ㄧ殑鑷姩娉ㄥ唽璐﹀彿琛ヤ笂榛樿瑙掕壊 +-- +-- 涓轰粈涔堝繀椤绘湁杩欎竴姝ワ細璐﹀彿涓�鏃﹀啓杩� system_social_user_bind锛屽啀娆℃壂鐮佽蛋鐨勬槸 +-- 銆屽凡缁戝畾銆嶅垎鏀紝涓嶄細鍐嶈繘鑷姩娉ㄥ唽閫昏緫 鈥斺�� 涓嶈ˉ鐨勮瘽杩欐壒鑰佽处鍙锋案杩滄病鏈夎彍鍗曘�� +-- +-- 鍙鑷姩娉ㄥ唽鐨勭敤鎴峰悕鍓嶇紑锛坵x_ + 8 浣嶅崄鍏繘鍒讹紝涓� AdminAuthServiceImpl 鐢熸垚瑙勫垯涓�鑷达級锛� +-- 鐢� ESCAPE 鏄惧紡澹版槑杞箟绗︼紝閬垮厤 `_` 琚� LIKE 褰撴垚鍗曞瓧绗﹂�氶厤銆� +-- system_user_role 娌℃湁 (user_id, role_id) 鍞竴绾︽潫锛屾墍浠ョ敤 NOT EXISTS 鍏滃箓绛夈�� +INSERT INTO `system_user_role` (`user_id`, `role_id`, `creator`, `updater`) +SELECT `u`.`id`, @wxcp_role_id, 'admin', 'admin' +FROM `system_users` `u` +WHERE `u`.`deleted` = b'0' + AND `u`.`username` LIKE 'wx!_%' ESCAPE '!' + AND @wxcp_role_id IS NOT NULL + AND NOT EXISTS ( + SELECT 1 FROM (SELECT `user_id` FROM `system_user_role` + WHERE `role_id` = @wxcp_role_id + AND `deleted` = b'0') `t` + WHERE `t`.`user_id` = `u`.`id`); diff --git a/docs/wxcp_login_integration.md b/docs/wxcp_login_integration.md index 64b72bc..c76f46b 100644 --- a/docs/wxcp_login_integration.md +++ b/docs/wxcp_login_integration.md @@ -93,6 +93,7 @@ | 鍦烘櫙 | 瑙勫垯 | |------|------| | 浼佷笟寰俊棣栨鎵爜锛堟湭缁戝畾锛� | 鑷姩鍒涘缓绯荤粺鐢ㄦ埛锛岀敤鎴峰悕涓� `wx_` + 8 浣嶉殢鏈哄崄鍏繘鍒讹紝鏄电О鍙栦紒涓氬井淇℃樀绉帮紝璐﹀彿鐘舵�佷负鍚敤锛岄殢鏈虹敓鎴愬瘑鐮侊紙鐢ㄦ埛鏃犻渶鐭ユ檽锛屼粎鐢ㄤ簬鍗犱綅锛� | +| 棣栨娉ㄥ唽鍚庣殑榛樿鏉冮檺 | 缁戝畾瑙掕壊 `wxcp_user`锛�**浠呮巿浜堛�屼細鍛樼鐞嗐�嶆暣妫靛瓙鏍�**锛堟牴鑿滃崟 1075490 + 瀛愯彍鍗� + 瀛欒彍鍗曪紝鍏� 15 鏉★級銆傞椤垫槸鍓嶇闈欐�佽矾鐢便�佷笉渚濊禆鑿滃崟琛紝浠讳綍璐﹀彿閮藉彲瑙侊紝鏃犻渶鎺堟潈銆傝鑹茬己澶辨椂浠g爜鍙 warn 鏃ュ織銆佷笉闃绘柇鐧诲綍锛岃〃鐜颁负銆岃兘杩涚郴缁熶絾鑿滃崟鍏ㄧ┖銆� | | 浼佷笟寰俊鍐嶆鎵爜锛堝凡缁戝畾锛� | 鐩存帴鐧诲綍锛屼笉鍒涘缓鏂扮敤鎴� | | 闈炰紒涓氬井淇$殑绀句氦骞冲彴棣栨鐧诲綍 | 浠嶈繑鍥� `1_002_000_005`銆屾湭缁戝畾璐﹀彿锛岄渶瑕佽繘琛岀粦瀹氥�嶏紝闇�寮曞鐢ㄦ埛璧拌处鍙峰瘑鐮佺櫥褰曞苟缁戝畾 | | 璐﹀彿瀵嗙爜鐧诲綍鏃舵惡甯︾ぞ浜ゅ弬鏁� | 璧板師鏈夌粦瀹氶�昏緫锛岀櫥褰曟垚鍔熷悗璇ョぞ浜よ处鍙蜂笌璐﹀彿缁戝畾 | @@ -104,6 +105,7 @@ - 浼佷笟寰俊鎺堟潈鐧诲綍瑕佹眰**宸插妗堝煙鍚�**涓斿妗堜富浣撲笌浼佷笟寰俊璁よ瘉涓讳綋涓�鑷达紝鏈湴 `localhost` 璋冭瘯闇�鐢ㄥ唴缃戠┛閫忓苟淇濊瘉鍩熷悕澶囨銆� - 棣栨鑷姩娉ㄥ唽浼氳烦杩�"娉ㄥ唽鍔熻兘宸插叧闂�"閰嶇疆椤癸紙`system.user.register-enabled`锛夛紝浣�**浠嶅彈绉熸埛璐﹀彿閰嶉闄愬埗**锛岄厤棰濈敤灏芥椂杩斿洖 `USER_COUNT_MAX`銆� - 鑷姩娉ㄥ唽鐢熸垚鐨勭敤鎴峰悕浠� `wx_` 寮�澶达紝渚夸簬涓庝汉宸ュ垱寤虹殑璐﹀彿鍖哄垎锛涘闇�闄愬埗浼佷笟寰俊鐧诲綍鐨勭敤鎴疯寖鍥达紝闇�鍦ㄤ笟鍔′晶鎸夌敤鎴峰悕鍓嶇紑鎴栬鑹插仛浜屾绠℃帶銆� +- **榛樿瑙掕壊 `wxcp_user` 蹇呴』鍏堝湪搴撻噷瀛樺湪**銆傝瑙掕壊鍙婂叾銆屼細鍛樼鐞嗐�嶆巿鏉冨凡鍐欒繘 `docs/sql/wxcp_menu.sql` 鏈熬锛堝悎骞惰剼鏈� `config_export_all_<鏃ユ湡>.sql` 闃舵涓夋湯灏惧悓姝ヤ簡涓�浠斤級锛屾柊搴撳垵濮嬪寲浼氳嚜鍔ㄥ缓鍑烘潵锛�**宸插缓杩囩殑鑰佸簱瑕佽ˉ鎵ц杩欎竴娈�**锛屽惁鍒欐壂鐮佹柊璐﹀彿鑳界櫥褰曚絾鑿滃崟绌虹櫧銆備唬鐮佹寜**瑙掕壊缂栫爜**鏌ユ壘鑰岄潪瑙掕壊缂栧彿锛屾崲搴撲笉浼氬け鏁堛�� - 鍥炶皟鎺ュ彛 `/admin-api/wxcp/callback` 宸插姞鍏ュ厤鐧诲綍鐧藉悕鍗曪紝**涓嶉渶瑕佷篃涓嶅簲璇ュ甫鍓嶇浠ょ墝**銆� - 鍓嶇鍘熸湁鐨勩�屾湭缁戝畾 鈫� 寮瑰嚭缁戝畾璐﹀彿瀵嗙爜寮圭獥銆嶉�昏緫锛屽浼佷笟寰俊鍦烘櫙涓嶅啀瑙﹀彂锛涜嫢浜у搧涓婁粛甯屾湜棣栨鐧诲綍鍏堢粦瀹氭棦鏈夎处鍙凤紝闇�瑕佸彟琛屾槑纭紝褰撳墠瀹炵幇涓虹洿鎺ヨ嚜鍔ㄦ敞鍐屻�� -- Gitblit v1.9.3