all(); // 继续处理 Google Ads API 操作 return $this->addCampaign($options); } public function listCampaigns(Request $request) { $options = $request->all(); // 继续处理 Google Ads API 操作 return $this->getCampaigns($options); } public function deleteCampaign(Request $request) { $options = $request->all(); // 继续处理 Google Ads API 操作 return $this->removeCampaign($options); } public function createCampaignBudget(Request $request) { $options = $request->all(); // return json(['code' => 0, 'msg' => getenv('GOOGLE_ADS_CUSTOMER_ID'),'data'=>$options]); // 继续处理 Google Ads API 操作 return $this->addCampaignBudget($options); } public function createLinkManagerToClient(Request $request) { $options = $request->all(); // 继续处理 Google Ads API 操作 return $this->addLinkManagerToClient($options); } public function accessibleCustomers(Request $request) { // $options = $request->all(); // 继续处理 Google Ads API 操作 return $this->listAccessibleCustomers(); } /** * 创建广告系列 * @throws ApiException */ public function addCampaign($options): Response { // 使用 $options 数组中的数据进行 Google Ads API 的调用 // 例如使用 $options['customer_id'] 和 $options['feed_id'] // 调用相应的 Google Ads 服务 // $budgetResourceName = $this->googleAdsCampaignBudgetService->createCampaignBudget(); $resourceName = $this->googleAdsCampaignService->runAddCampaign(4060397299, $options); return $this->successResponse(['campaign_resource_name' => $resourceName]); } /** * 创建广告预算 * @throws ApiException */ public function addCampaignBudget($options): Response { $resourceName = $this->googleAdsCampaignService->runAddCampaignBudget(0, $options); return $this->successResponse(['budget_resource_name' => $resourceName]); } /** * 关联广告客户ID * @throws ApiException */ public function addLinkManagerToClient($options): Response { $resourceName = $this->googleAdsAccountService->runLinkManagerToClient($options); return $this->successResponse(['link_resource_name' => $resourceName]); } /** * 关联广告客户ID * @throws ApiException */ public function listAccessibleCustomers(): Response { $resourceName = $this->googleAdsAccountService->runListAccessibleCustomers(); return $this->successResponse(['links_resource_name' => $resourceName]); } /** * get campaigns * @throws ApiException */ public function getCampaigns($options): Response { $resourceName = $this->googleAdsCampaignService->runListCampaigns($options['customer_id']); return $this->successResponse(['campaigns_list' => $resourceName]); } /** * 关联广告客户ID * @throws ApiException */ public function removeCampaign($options): Response { $resourceName = $this->googleAdsCampaignService->runRemoveCampaign($options); return $this->successResponse(['campaigns_deleted' => $resourceName]); } // 可以加入一些公共方法 protected function successResponse($data): Response { return Json([ 'code' => 200, 'status' => 'success', 'data' => $data, ]); } protected function errorResponse($message): Response { return Json([ 'code' => 400, 'status' => 'error', 'message' => $message, ]); } }