'实时通知服务未初始化,请先完成系统更新']); } $now = Carbon::now('Asia/Shanghai')->format('Y-m-d H:i:s'); $pending = DB::table('site_realtime_events')->where('module', $module)->where('resource_id', $id)->whereNull('dispatched_at'); if ($module !== 'announcement') $pending->where('available_at', '>', $now); $pending->delete(); $rows = $notifyNow ? [['module' => $module, 'resource_id' => $id, 'action' => $action, 'available_at' => $now, 'created_at' => $now]] : []; foreach ($boundaries as $edge => $at) { if ($at !== null && $at > $now) $rows[] = ['module' => $module, 'resource_id' => $id, 'action' => $edge, 'available_at' => $at, 'created_at' => $now]; } if ($rows) DB::table('site_realtime_events')->insert($rows); } }