Merge branch 'main' of http://91.189.216.43:3000/jacek.pyziak/adsPRO
This commit is contained in:
15
.vscode/ftp-kr.sync.cache.json
vendored
15
.vscode/ftp-kr.sync.cache.json
vendored
@@ -23,8 +23,8 @@
|
||||
},
|
||||
"class.Api.php": {
|
||||
"type": "-",
|
||||
"size": 11018,
|
||||
"lmtime": 0,
|
||||
"size": 11235,
|
||||
"lmtime": 1744498273470,
|
||||
"modified": false
|
||||
},
|
||||
"class.Campaigns.php": {
|
||||
@@ -35,14 +35,14 @@
|
||||
},
|
||||
"class.Cron.php": {
|
||||
"type": "-",
|
||||
"size": 20273,
|
||||
"lmtime": 1744063175514,
|
||||
"size": 20896,
|
||||
"lmtime": 1745745807850,
|
||||
"modified": false
|
||||
},
|
||||
"class.Products.php": {
|
||||
"type": "-",
|
||||
"size": 8787,
|
||||
"lmtime": 1744064045288,
|
||||
"size": 8924,
|
||||
"lmtime": 1745445544980,
|
||||
"modified": false
|
||||
},
|
||||
"class.Site.php": {
|
||||
@@ -139,7 +139,7 @@
|
||||
"robots.txt": {
|
||||
"type": "-",
|
||||
"size": 25,
|
||||
"lmtime": 0,
|
||||
"lmtime": 1744488227849,
|
||||
"modified": false
|
||||
},
|
||||
"templates": {
|
||||
@@ -158,6 +158,7 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"tmp": {},
|
||||
"upload": {},
|
||||
"xml": {}
|
||||
}
|
||||
|
||||
@@ -39,7 +39,7 @@ class Api
|
||||
$campaign_history_data['roas_all_time'] = $campaign['roasAllTime'];
|
||||
$campaign_history_data['budget'] = str_replace( ' zł', '' , $campaign['budget'] );
|
||||
$campaign_history_data['money_spent'] = floatval( preg_replace(['/[^0-9,]/', '/,/'], ['', '.'], $campaign['spend30Days'] ) );
|
||||
$campaign_history_data['conversion_value'] = $campaign['conversionValue30Days'];
|
||||
$campaign_history_data['conversion_value'] = preg_replace( '/[^\d,.-]/', '', $campaign['conversionValue30Days'] );
|
||||
|
||||
if ( isset( $campaign['biddingStrategy'] ) and $campaign['biddingStrategy'] == 'MAXIMIZE_CONVERSIONS' )
|
||||
{
|
||||
@@ -121,7 +121,7 @@ class Api
|
||||
$phrase_data['clicks'] = $phrase['Clicks'];
|
||||
$phrase_data['cost'] = $phrase['Cost'];
|
||||
$phrase_data['conversions'] = $phrase['Conversions'];
|
||||
$phrase_data['conversions_value'] = $phrase['ConversionValue'];
|
||||
$phrase_data['conversions_value'] = preg_replace( '/[^\d,.-]/', '', $phrase['ConversionValue'] );
|
||||
$phrase_data['updated'] = 1;
|
||||
|
||||
if ( $mdb -> count( 'phrases_history', [ 'AND' => [ 'phrase_id' => $phrase_id, 'date_add' => $data['date'] ] ] ) )
|
||||
@@ -178,7 +178,7 @@ class Api
|
||||
|
||||
$json = file_get_contents( 'php://input' );
|
||||
$data = json_decode( $json, true );
|
||||
|
||||
// file_put_contents( 'tmp/products_data_save.txt', print_r( $data, true ) );
|
||||
if ( $data['client_id'] and $data['date'] )
|
||||
{
|
||||
foreach ( $data['data'] as $offer )
|
||||
@@ -216,9 +216,9 @@ class Api
|
||||
$offer_data['impressions'] = $offer['Impressions'];
|
||||
$offer_data['clicks'] = $offer['Clicks'];
|
||||
$offer_data['ctr'] = round( $offer['Clicks'] / $offer['Impressions'], 4 ) * 100;
|
||||
$offer_data['cost'] = $offer['Cost'];
|
||||
$offer_data['cost'] = preg_replace( '/[^\d,.-]/', '', $offer['Cost'] );
|
||||
$offer_data['conversions'] = $offer['Conversions'];
|
||||
$offer_data['conversions_value'] = $offer['ConversionValue'];
|
||||
$offer_data['conversions_value'] = preg_replace( '/[^\d,.-]/', '', $offer['ConversionValue'] );
|
||||
$offer_data['updated'] = 1;
|
||||
|
||||
if ( $mdb -> count( 'products_history', [ 'AND' => [ 'product_id' => $offer_id, 'date_add' => $data['date'] ] ] ) )
|
||||
|
||||
@@ -63,7 +63,7 @@ class Cron
|
||||
$cpc = $offer_data['clicks'] > 0 ? round( $offer_data['cost'] / $offer_data['clicks'], 6 ) : 0;
|
||||
$roas = ($offer_data['conversions'] > 0 and $offer_data['cost']) ? round($offer_data['conversions_value'] / $offer_data['cost'], 2) * 100 : 0;
|
||||
|
||||
// $impressions_30 = \factory\Products::get_impressions_30( $offer_data['product_id'] );
|
||||
$impressions_30 = \factory\Products::get_impressions_30( $offer_data['product_id'] );
|
||||
|
||||
// update custom_label_4 only current is empty or is bestseller
|
||||
$custom_label_4 = \factory\Products::get_product_data( $offer_data['product_id'], 'custom_label_4' );
|
||||
@@ -205,6 +205,14 @@ class Cron
|
||||
exit;
|
||||
}
|
||||
|
||||
static public function get_roas_all_time( $product_id, $date_to )
|
||||
{
|
||||
global $mdb;
|
||||
|
||||
$roas_all_time = $mdb -> query( 'SELECT SUM(conversions_value) / SUM(cost) * 100 AS roas_all_time FROM products_history WHERE product_id = ' . $product_id . ' AND date_add <= \'' . $date_to . '\'' ) -> fetchColumn();
|
||||
return round( $roas_all_time, 2 );
|
||||
}
|
||||
|
||||
static public function cron_product_history_30_save( $product_id, $date_to )
|
||||
{
|
||||
global $mdb;
|
||||
@@ -251,7 +259,7 @@ class Cron
|
||||
$conversions_value = $offer['conversions_value'];
|
||||
$roas = ( $conversions_value > 0 and $cost ) ? round( $conversions_value / $cost, 2 ) * 100 : 0;
|
||||
|
||||
if ( $day_count >= 30 )
|
||||
if ( $mdb -> count( 'products_history', [ 'AND' => [ 'product_id' => $product_id, 'date_add[<=]' => $date_to ] ] ) >= 14 )
|
||||
{
|
||||
if ( $mdb -> count( 'products_history_30', [ 'AND' => [ 'product_id' => $product_id, 'date_add' => $date_to ] ] ) > 0 )
|
||||
{
|
||||
@@ -262,7 +270,8 @@ class Cron
|
||||
'cost' => $cost,
|
||||
'conversions' => $conversions,
|
||||
'conversions_value' => $conversions_value,
|
||||
'roas' => $roas
|
||||
'roas' => $roas,
|
||||
'roas_all_time' => self::get_roas_all_time( $product_id, $date_to )
|
||||
], [ 'AND' => [ 'product_id' => $product_id, 'date_add' => $date_to ] ] );
|
||||
}
|
||||
else
|
||||
@@ -276,6 +285,7 @@ class Cron
|
||||
'conversions' => $conversions,
|
||||
'conversions_value' => $conversions_value,
|
||||
'roas' => $roas,
|
||||
'roas_all_time' => self::get_roas_all_time( $product_id, $date_to ),
|
||||
'date_add' => $date_to
|
||||
] );
|
||||
}
|
||||
|
||||
@@ -75,6 +75,8 @@ class Products
|
||||
$custom_label_4_color = 'background-color:rgb(255, 0, 0); color: #FFF;';
|
||||
else if ( $custom_label_4 == 'zombie' )
|
||||
$custom_label_4_color = 'background-color:rgb(58, 58, 58); color: #FFF;';
|
||||
else if ( $custom_label_4 == 'pla' )
|
||||
$custom_label_4_color = 'background-color:rgb(74, 63, 136); color: #FFF;';
|
||||
|
||||
$data['data'][] = [
|
||||
$row['product_id'],
|
||||
@@ -209,7 +211,7 @@ class Products
|
||||
$cost[] = (float)$row['cost'];
|
||||
$conversions[] = (int)$row['conversions'];
|
||||
$conversions_value[] = (float)$row['conversions_value'];
|
||||
$roas[] = (float)$row['roas'];
|
||||
$roas[] = (float)$row['roas_all_time'];
|
||||
$dates[] = $row['date_add'];
|
||||
}
|
||||
|
||||
|
||||
2268
tmp/products_data_save.txt
Normal file
2268
tmp/products_data_save.txt
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user