target = $target; $this->message = $message; } /** * 执行任务 */ public function handle(WechatBotApiService $apiService): void { if (empty($this->target)) { Log::warning('WechatBot: Target is empty, skipping message dispatch.'); return; } $params = SysParam::where('alias', 'wechat_bot_config')->first(); if ($params && ! empty($params->body)) { $config = json_decode($params->body, true); $isEnabled = $config['global_enabled'] ?? false; if (! $isEnabled) { return; // 全局未开启,直接抛弃不发 } } try { $apiService->sendTextMessage($this->target, $this->message); } catch (\Exception $e) { Log::error('WechatBot: Failed to send message in queue', [ 'target' => $this->target, 'message' => $this->message, 'error' => $e->getMessage(), ]); } } }