|
@@ -488,24 +488,68 @@ class GA{
|
|
|
$result=$this->getResults($reports);
|
|
|
return $result;
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
}
|
|
|
+ public function regionProduct($region,$dp,$start_at,$end_at){
|
|
|
+ $analytics=self::getInstance($dp);
|
|
|
+ $dimensionArr=[
|
|
|
+ 'region'=>'ga:region',
|
|
|
+ ];
|
|
|
+ $metricArr=[
|
|
|
+ 'itemRevenue'=>"ga:itemRevenue",
|
|
|
+ 'revenuePerItem'=>"ga:revenuePerItem",
|
|
|
+ 'productRefundAmount'=>"ga:productRefundAmount",
|
|
|
+ 'quantityAddedToCart'=>"ga:quantityAddedToCart",
|
|
|
+ // 'quantityRemovedFromCart'=>"ga:quantityRemovedFromCart",
|
|
|
+ 'itemQuantity'=>"ga:itemQuantity",
|
|
|
+ 'productListViews'=>"ga:productListViews",
|
|
|
+ 'productDetailViews'=>"ga:productDetailViews",
|
|
|
+ 'productAddsToCart'=>"ga:productAddsToCart",
|
|
|
+ // 'productRemovesFromCart'=>"ga:productRemovesFromCart",
|
|
|
+ 'productCheckouts'=>"ga:productCheckouts",
|
|
|
+ 'uniquePurchases'=>"ga:uniquePurchases",
|
|
|
+ ];
|
|
|
+
|
|
|
+ $VIEW_ID = $this->getViewId($dp);//
|
|
|
+ $dateRange = new \Google_Service_AnalyticsReporting_DateRange();
|
|
|
+ $dateRange->setStartDate($start_at);
|
|
|
+ $dateRange->setEndDate($end_at);
|
|
|
+ $metrics=[];
|
|
|
+ $dimensions=[];
|
|
|
+ foreach($metricArr as $k=>$v){
|
|
|
+ $Metric = new \Google_Service_AnalyticsReporting_Metric();
|
|
|
+ $Metric->setExpression($v);
|
|
|
+ $Metric->setAlias($k);
|
|
|
+ array_push($metrics,$Metric);
|
|
|
+ }
|
|
|
+ foreach($dimensionArr as $k=>$v){
|
|
|
+ $Dimension = new \Google_Service_AnalyticsReporting_Dimension();
|
|
|
+ $Dimension->setName($v);
|
|
|
+ array_push($dimensions,$Dimension);
|
|
|
+ }
|
|
|
+ $regionFilter = new \Google_Service_AnalyticsReporting_DimensionFilter();
|
|
|
+ $regionFilter->setDimensionName("ga:region");
|
|
|
+ $regionFilter->setOperator("EXACT");
|
|
|
+ $regionFilter->setExpressions([$region]);
|
|
|
|
|
|
+ $MetricFilterClause=new \Google_Service_AnalyticsReporting_MetricFilterClause();
|
|
|
+ $MetricFilterClause->setFilters(array($regionFilter));
|
|
|
|
|
|
|
|
|
+ $request = new \Google_Service_AnalyticsReporting_ReportRequest();
|
|
|
+ $request->setViewId($VIEW_ID);
|
|
|
+ $request->setDateRanges($dateRange);
|
|
|
+ $request->setMetrics($metrics);
|
|
|
+ $request->setDimensions($dimensions);
|
|
|
+ $request->setDimensionFilterClauses($MetricFilterClause);
|
|
|
+ // $request->setOrderBys($orderBy);
|
|
|
|
|
|
+ $body = new \Google_Service_AnalyticsReporting_GetReportsRequest();
|
|
|
+ $body->setReportRequests( array( $request) );
|
|
|
+ $reports= $analytics->reports->batchGet( $body );
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+ $result=$this->getResults($reports);
|
|
|
+ return $result;
|
|
|
+ }
|
|
|
|
|
|
|
|
|
/**
|