wechat.subscribe.message.enabled| 属性 | 值 |
|---|---|
| 配置名称 | 微信订阅消息开关 |
| 配置键 | wechat.subscribe.message.enabled |
| 配置类型 | N (普通参数) |
| 默认值 | true |
| 可选值 | true / false |
执行以下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(),
'控制是否启用微信订阅消息推送功能。true=启用,false=禁用。关闭后系统将不再发送任何订阅消息。');
该开关控制以下场景的订阅消息发送:
IWechatTaskNotifyService 发送的消息当开关设置为 false 时:
- 系统将跳过所有订阅消息发送
- 日志记录:订阅消息发送已关闭,跳过发送,taskId=xxx
- 不影响其他业务逻辑
- 返回值为 0(发送成功数量为0)
在测试环境中关闭消息推送,避免测试数据触发真实消息:
UPDATE sys_config
SET config_value = 'false'
WHERE config_key = 'wechat.subscribe.message.enabled';
在系统维护期间临时关闭消息推送:
-- 关闭消息推送
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';
当微信接口异常时,临时关闭消息推送,避免大量错误日志:
UPDATE sys_config
SET config_value = 'false'
WHERE config_key = 'wechat.subscribe.message.enabled';
true 或 false/sql/wechat_subscribe_message_config.sql/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/WechatTaskNotifyServiceImpl.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; // 默认启用
}
}
true(启用),确保正常业务不受影响SELECT * FROM sys_config WHERE config_key = 'wechat.subscribe.message.enabled';
关闭开关: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)