* @copyright walkor * @link http://www.workerman.net/ * @license http://www.opensource.org/licenses/mit-license.php MIT License */ //use app\controller\IndexController; use app\controller\AdController; use app\controller\BpsAdController; use app\controller\OAuthController; use app\controller\CustomerController; use app\controller\GoogleAdsController; use support\Request; use Webman\Route; //Route::group('/googleads', function () { // Route::group('/campaign', function () { // Route::post('/create', 'GoogleAdsController@createCampaign'); // }); // Route::group('/campaign_budget', function () { // Route::post('/create', 'GoogleAdsController@createCampaignBudget'); // }); //}); //三平台合并后的路由2025-1-9 Route::group('/marketing', function () { Route::group('/v18', function () { Route::group('/ad', function () { Route::post('/list', [BpsAdController::class, 'listAds']); // Route::post('/export', [BpsAdController::class, 'exportAdsToExcel']); // Route::group('/status', function () { // Route::post('/update', [BpsAdController::class, 'updateAdStatus']); //// Route::post('/get', [AdController::class, 'getAdStatus']); // }); })->middleware([ app\middleware\JwtLocal::class, app\middleware\OauthCheck::class, ]); Route::group('/campaign', function () { Route::post('/list', [BpsAdController::class, 'listCampaigns']); // Route::post('/export', [BpsAdController::class, 'exportCampaignsToExcel']); // Route::group('/status', function () { // Route::post('/update', [BpsAdController::class, 'updateCampaignStatus']); // Route::post('/get', [BpsAdController::class, 'getCampaignStatus']); // }); })->middleware([ app\middleware\JwtLocal::class, app\middleware\OauthCheck::class, ]); Route::group('/adset', function () { Route::post('/list', [BpsAdController::class, 'listAdsets']); // Route::post('/export', [BpsAdController::class, 'exportGroupsToExcel']); // Route::group('/status', function () { // Route::post('/update', [BpsAdController::class, 'updateGroupStatus']); //// Route::post('/get', [BpsAdController::class, 'getGroupStatus']); // }); })->middleware([ app\middleware\JwtLocal::class, app\middleware\OauthCheck::class, ]); Route::group('/third_user', function () { Route::post('/list', [BpsAdController::class, 'listThirdUsers']); })->middleware([ app\middleware\JwtLocal::class, app\middleware\OauthCheck::class, ]); Route::group('/creative', function () { Route::post('/list', [BpsAdController::class, 'listCreatives']); Route::post('/chart', [BpsAdController::class, 'listCharts']); })->middleware([ app\middleware\JwtLocal::class, app\middleware\OauthCheck::class, ]); }); }); //未合并前使用的google广告路由 Route::group('/googleads', function () { Route::group('/v18', function () { Route::group('/ad', function () { Route::post('/list', [AdController::class, 'listAds']); Route::post('/export', [AdController::class, 'exportAdsToExcel']); Route::group('/status', function () { Route::post('/update', [AdController::class, 'updateAdStatus']); // Route::post('/get', [AdController::class, 'getAdStatus']); }); })->middleware([ app\middleware\JwtLocal::class, app\middleware\OauthCheck::class, ]); Route::group('/campaign', function () { Route::post('/list', [AdController::class, 'listCampaigns']); Route::post('/export', [AdController::class, 'exportCampaignsToExcel']); Route::group('/status', function () { Route::post('/update', [AdController::class, 'updateCampaignStatus']); // Route::post('/get', [AdController::class, 'getCampaignStatus']); }); })->middleware([ app\middleware\JwtLocal::class, app\middleware\OauthCheck::class, ]); Route::group('/adgroup', function () { Route::post('/list', [AdController::class, 'listGroups']); Route::post('/export', [AdController::class, 'exportGroupsToExcel']); Route::group('/status', function () { Route::post('/update', [AdController::class, 'updateGroupStatus']); // Route::post('/get', [AdController::class, 'getGroupStatus']); }); })->middleware([ app\middleware\JwtLocal::class, app\middleware\OauthCheck::class, ]); Route::group('/asset', function () { Route::post('/list', [AdController::class, 'listAssets']); })->middleware([ app\middleware\JwtLocal::class, app\middleware\OauthCheck::class, ]); Route::group('/customer', function () { Route::post('/list', [CustomerController::class, 'getCustomerList']); Route::post('/bind', [CustomerController::class, 'bindAdvertiser']); Route::post('/list_resource', [CustomerController::class, 'accessibleCustomers']); Route::post('/list_tree', [CustomerController::class, 'accountHierarchy']); Route::post('/access_role', [CustomerController::class, 'accountAccess']); })->middleware([ app\middleware\JwtLocal::class, app\middleware\OauthCheck::class, ]); Route::group('/auth', function () { Route::get('/code', [OAuthController::class, 'getAuthCode']); Route::post('/callback', [OAuthController::class, 'handleCallback']); Route::post('/refresh_token_get', [OAuthController::class, 'getRefreshToken']); Route::post('/refresh_token_use', [OAuthController::class, 'useRefreshToken']); Route::post('/refresh_token_test', [OAuthController::class, 'testRefreshToken']); Route::post('/refresh_token_revoke', [OAuthController::class, 'revokeRefreshToken']); Route::post('/list_third_status', [OAuthController::class, 'listThirdUserInfos']); })->middleware([ app\middleware\JwtLocal::class, ]); }); Route::group('/campaign', function () { Route::post('/create', [GoogleAdsController::class, 'createCampaign']); }); Route::group('/campaign', function () { Route::post('/list', [GoogleAdsController::class, 'listCampaigns']); // Route::post('/list', [GoogleAdsController::class, 'listCampaignsNext']); }); Route::group('/campaign', function () { Route::post('/update', [GoogleAdsController::class, 'updateCampaign']); }); Route::group('/campaign', function () { Route::post('/delete', [GoogleAdsController::class, 'deleteCampaign']); }); Route::group('/campaign_budget', function () { Route::post('/create', [GoogleAdsController::class, 'createCampaignBudget']); }); Route::group('/group', function () { Route::post('/create', [GoogleAdsController::class, 'createGroup']); }); Route::group('/group', function () { Route::post('/update', [GoogleAdsController::class, 'updateGroup']); }); Route::group('/group', function () { Route::post('/list', [GoogleAdsController::class, 'listGroups']); }); Route::group('/asset', function () { Route::post('/list', [GoogleAdsController::class, 'listAssets']); }); Route::group('/asset_relation', function () { Route::post('/list', [GoogleAdsController::class, 'listAssetRelations']); }); Route::group('/ad', function () { Route::post('/update', [GoogleAdsController::class, 'updateAd']); Route::post('/list', [GoogleAdsController::class, 'listAds']); Route::group('/responsive_search', function () { Route::post('/list', [GoogleAdsController::class, 'listResponsiveSearchAds']); Route::post('/update', [GoogleAdsController::class, 'updateResponsiveSearchAd']); }); Route::group('/fields', function () { Route::post('/list', [GoogleAdsController::class, 'listGoogleAdsFields']); }); }); Route::group('/account_link', function () { Route::post('/create', [GoogleAdsController::class, 'createLinkManagerToClient']); }); Route::group('/datedata', function () { Route::post('/list', [GoogleAdsController::class, 'listDateDatas']); }); }); Route::fallback(function (Request $request) { $response = strtoupper($request->method()) === 'OPTIONS' ? response('', 204) : response('', 404); $response->withHeaders([ 'Access-Control-Allow-Credentials' => 'true', 'Access-Control-Allow-Origin' => "*", 'Access-Control-Allow-Methods' => '*', 'Access-Control-Allow-Headers' => 'Authorization, Content-Length, X-CSRF-Token,X-Request-Id, Accept, Origin, Host, Connection, Accept-Encoding, Accept-Language, Keep-Alive, User-Agent, Content-Type', ]); return $response; });