getTokenUserInfo(); $device = $userToken['device_type'] == 'A' ? 1 : 2; $cacheInterface = make(CacheInterface::class); $videoService = make(VideoService::class); $deviceAll = [$device,3]; // 公告 $bulletinModel = $cacheInterface->remember( 'bulletin:' . $device, 60 * 60, function () use ($deviceAll) { $nowData = Carbon::now()->toDateTimeString(); return BulletinModel::query() ->whereNull('deleted_at') ->whereIn('device', $deviceAll) ->where([ ['status', '=', 1], ['start_time', '<', $nowData], ['end_time', '>', $nowData], ]) ->orderByDesc('sort') ->get(['title', 'sort', 'start_time', 'end_time', 'text']) ->toArray(); } ); $newData = []; $nowTime = time(); $css = << HTML; foreach ($bulletinModel as $bulletin){ $bulletin['ad_model'] = 2; $bulletin['text'] = $css.$bulletin['text']; $newData[] = $bulletin; } // 广告 $adImageHomeItems = $videoService->getAdList(AdConstrant::IMAGES_HOME); if (!empty($adImageHomeItems)) { foreach ($adImageHomeItems as $adImagesV) { $link = M3u8CacheRepository::getLinkUrl($adImagesV['link'], ['user_code' => $userToken['user_id']]); $newData[] = [ 'ad_model'=>1, 'title' => $adImagesV['title'], 'cover' => M3u8CacheRepository::getImageUrl($adImagesV['cover']), 'link' => $link, 'scheme' => $adImagesV['scheme'], 'resolution' => $adImagesV['resolution'], ]; } } return json_success($newData); } }