From af8cab142a6b15c06e131a8474574dd5b00df982 Mon Sep 17 00:00:00 2001
From: wlzboy <66905212@qq.com>
Date: 星期四, 04 十二月 2025 22:09:58 +0800
Subject: [PATCH] feat: 改造微信accesstoken存放在系统配置表中

---
 sql/wechat_subscribe_message_config_README.md |  167 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 167 insertions(+), 0 deletions(-)

diff --git a/sql/wechat_subscribe_message_config_README.md b/sql/wechat_subscribe_message_config_README.md
new file mode 100644
index 0000000..9982a96
--- /dev/null
+++ b/sql/wechat_subscribe_message_config_README.md
@@ -0,0 +1,167 @@
+# 寰俊璁㈤槄娑堟伅寮�鍏充娇鐢ㄨ鏄�
+
+## 涓�銆侀厤缃」璇存槑
+
+### 閰嶇疆閿細`wechat.subscribe.message.enabled`
+
+| 灞炴�� | 鍊� |
+|------|-----|
+| 閰嶇疆鍚嶇О | 寰俊璁㈤槄娑堟伅寮�鍏� |
+| 閰嶇疆閿� | wechat.subscribe.message.enabled |
+| 閰嶇疆绫诲瀷 | N (鏅�氬弬鏁�) |
+| 榛樿鍊� | true |
+| 鍙�夊�� | true / false |
+
+### 閰嶇疆璇存槑
+
+- **true**: 鍚敤寰俊璁㈤槄娑堟伅鎺ㄩ�侊紙榛樿锛�
+- **false**: 绂佺敤寰俊璁㈤槄娑堟伅鎺ㄩ��
+
+## 浜屻�丼QL鑴氭湰
+
+鎵ц浠ヤ笅SQL鑴氭湰娣诲姞閰嶇疆锛�
+
+```sql
+INSERT INTO sys_config (config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark) 
+VALUES 
+('寰俊璁㈤槄娑堟伅寮�鍏�', 'wechat.subscribe.message.enabled', 'true', 'N', 'admin', NOW(), 'admin', NOW(), 
+ '鎺у埗鏄惁鍚敤寰俊璁㈤槄娑堟伅鎺ㄩ�佸姛鑳姐�倀rue=鍚敤锛宖alse=绂佺敤銆傚叧闂悗绯荤粺灏嗕笉鍐嶅彂閫佷换浣曡闃呮秷鎭��');
+```
+
+## 涓夈�佸姛鑳借鏄�
+
+### 1. 寮�鍏虫帶鍒惰寖鍥�
+
+璇ュ紑鍏虫帶鍒朵互涓嬪満鏅殑璁㈤槄娑堟伅鍙戦�侊細
+
+- 鉁� 鏂颁换鍔″垱寤烘椂閫氱煡鎵ц浜�
+- 鉁� 浠诲姟鏇存柊鏃堕�氱煡鐩稿叧浜哄憳
+- 鉁� 鏃х郴缁熷悓姝ヤ换鍔℃椂鐨勯�氱煡
+- 鉁� 鎵嬪姩瑙﹀彂鐨勪换鍔¢�氱煡
+- 鉁� 鎵�鏈夐�氳繃 `IWechatTaskNotifyService` 鍙戦�佺殑娑堟伅
+
+### 2. 寮�鍏冲叧闂悗鐨勮〃鐜�
+
+褰撳紑鍏宠缃负 `false` 鏃讹細
+- 绯荤粺灏嗚烦杩囨墍鏈夎闃呮秷鎭彂閫�
+- 鏃ュ織璁板綍锛歚璁㈤槄娑堟伅鍙戦�佸凡鍏抽棴锛岃烦杩囧彂閫侊紝taskId=xxx`
+- 涓嶅奖鍝嶅叾浠栦笟鍔¢�昏緫
+- 杩斿洖鍊间负 0锛堝彂閫佹垚鍔熸暟閲忎负0锛�
+
+### 3. 寮傚父澶勭悊
+
+- 濡傛灉閰嶇疆璇诲彇澶辫触锛岄粯璁や负 **鍚敤** 鐘舵��
+- 纭繚绯荤粺姝e父杩愯锛岄伩鍏嶅洜閰嶇疆寮傚父瀵艰嚧鍔熻兘涓柇
+
+## 鍥涖�佷娇鐢ㄥ満鏅�
+
+### 1. 娴嬭瘯鐜
+
+鍦ㄦ祴璇曠幆澧冧腑鍏抽棴娑堟伅鎺ㄩ�侊紝閬垮厤娴嬭瘯鏁版嵁瑙﹀彂鐪熷疄娑堟伅锛�
+
+```sql
+UPDATE sys_config 
+SET config_value = 'false' 
+WHERE config_key = 'wechat.subscribe.message.enabled';
+```
+
+### 2. 鐢熶骇缁存姢
+
+鍦ㄧ郴缁熺淮鎶ゆ湡闂翠复鏃跺叧闂秷鎭帹閫侊細
+
+```sql
+-- 鍏抽棴娑堟伅鎺ㄩ��
+UPDATE sys_config 
+SET config_value = 'false' 
+WHERE config_key = 'wechat.subscribe.message.enabled';
+
+-- 缁存姢瀹屾垚鍚庢仮澶�
+UPDATE sys_config 
+SET config_value = 'true' 
+WHERE config_key = 'wechat.subscribe.message.enabled';
+```
+
+### 3. 鏁呴殰鎺掓煡
+
+褰撳井淇℃帴鍙e紓甯告椂锛屼复鏃跺叧闂秷鎭帹閫侊紝閬垮厤澶ч噺閿欒鏃ュ織锛�
+
+```sql
+UPDATE sys_config 
+SET config_value = 'false' 
+WHERE config_key = 'wechat.subscribe.message.enabled';
+```
+
+## 浜斻�佺鐞嗙晫闈㈡搷浣�
+
+### 閫氳繃鍚庡彴绠$悊鐣岄潰淇敼
+
+1. 鐧诲綍绯荤粺绠$悊鍚庡彴
+2. 杩涘叆 **绯荤粺绠$悊 > 鍙傛暟璁剧疆**
+3. 鎼滅储 **寰俊璁㈤槄娑堟伅寮�鍏�**
+4. 淇敼鍙傛暟鍊间负 `true` 鎴� `false`
+5. 淇濆瓨鍚� **绔嬪嵆鐢熸晥**锛屾棤闇�閲嶅惎鏈嶅姟
+
+## 鍏�佹妧鏈疄鐜�
+
+### 浠g爜浣嶇疆
+
+- **閰嶇疆SQL**: `/sql/wechat_subscribe_message_config.sql`
+- **鏈嶅姟瀹炵幇**: `/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/WechatTaskNotifyServiceImpl.java`
+
+### 鏍稿績浠g爜
+
+```java
+/**
+ * 妫�鏌ユ槸鍚﹀惎鐢ㄨ闃呮秷鎭彂閫�
+ */
+private boolean isSubscribeMessageEnabled() {
+    try {
+        String enabled = configService.selectConfigByKey("wechat.subscribe.message.enabled");
+        return "true".equalsIgnoreCase(enabled);
+    } catch (Exception e) {
+        log.warn("鑾峰彇璁㈤槄娑堟伅寮�鍏抽厤缃け璐ワ紝榛樿鍚敤", e);
+        return true; // 榛樿鍚敤
+    }
+}
+```
+
+## 涓冦�佹敞鎰忎簨椤�
+
+1. 鈿狅笍 淇敼閰嶇疆鍚庣珛鍗崇敓鏁堬紝鏃犻渶閲嶅惎鏈嶅姟
+2. 鈿狅笍 鍏抽棴寮�鍏充細褰卞搷鎵�鏈夎闃呮秷鎭彂閫�
+3. 鈿狅笍 榛樿鍊间负 `true`锛堝惎鐢級锛岀‘淇濇甯镐笟鍔′笉鍙楀奖鍝�
+4. 鈿狅笍 寤鸿鍦ㄧ敓浜х幆澧冧繚鎸佸紑鍚姸鎬�
+5. 鈿狅笍 娴嬭瘯鐜寤鸿鍏抽棴锛岄伩鍏嶈鍙戞秷鎭粰鐪熷疄鐢ㄦ埛
+
+## 鍏�侀獙璇佹柟娉�
+
+### 1. 楠岃瘉閰嶇疆宸叉坊鍔�
+
+```sql
+SELECT * FROM sys_config WHERE config_key = 'wechat.subscribe.message.enabled';
+```
+
+### 2. 楠岃瘉寮�鍏崇敓鏁�
+
+**鍏抽棴寮�鍏筹細**
+```sql
+UPDATE sys_config SET config_value = 'false' WHERE config_key = 'wechat.subscribe.message.enabled';
+```
+
+**鍒涘缓娴嬭瘯浠诲姟锛�**
+- 瑙傚療鏃ュ織鏄惁杈撳嚭锛歚璁㈤槄娑堟伅鍙戦�佸凡鍏抽棴锛岃烦杩囧彂閫乣
+- 纭娌℃湁瀹為檯鍙戦�佸井淇℃秷鎭�
+
+**鎭㈠寮�鍏筹細**
+```sql
+UPDATE sys_config SET config_value = 'true' WHERE config_key = 'wechat.subscribe.message.enabled';
+```
+
+## 涔濄�佺浉鍏抽厤缃�
+
+璇ュ姛鑳介厤鍚堜互涓嬮厤缃娇鐢細
+
+- `weixin.access_token.{appId}` - 寰俊AccessToken缂撳瓨
+- `weixin.access_token_expires.{appId}` - AccessToken杩囨湡鏃堕棿
+- `wechat.task.notify.template.id` - 浠诲姟閫氱煡妯℃澘ID (application.yml)
+- `wechat.task.detail.page` - 浠诲姟璇︽儏椤佃矾寰� (application.yml)

--
Gitblit v1.9.1