89 lines
2.1 KiB
PHP
89 lines
2.1 KiB
PHP
<?php
|
|
|
|
class stDeleteAdsTrackerTask extends stTask
|
|
{
|
|
|
|
/**
|
|
*
|
|
*/
|
|
public function getDelateDay()
|
|
{
|
|
$config = stConfig::getInstance('appAdsTrackerBackend');
|
|
$ads_terminate = $config->get('ads_terminate');
|
|
|
|
//$ads_terminate = 1;
|
|
|
|
$days = '-'.$ads_terminate.' day';
|
|
$delate_date = date("Y-m-d", strtotime($days))." 00:00:00";
|
|
|
|
return $delate_date;
|
|
}
|
|
|
|
|
|
/**
|
|
* W tej metodzie zwracamy ile rekordów/danych zamierzamy wykonać
|
|
*/
|
|
public function count(): int
|
|
{
|
|
$adsTrackerEntering = 0;
|
|
$adsTrackerRemoteAddress = 0;
|
|
$adsTrackerDebug = 0;
|
|
|
|
|
|
$delate_date = $this->getDelateDay();
|
|
|
|
/*// kasowanie wejść na reklamy
|
|
$c = new Criteria();
|
|
$c->add(AdsTrackerEnteringPeer::CREATED_AT, $delate_date, Criteria::LESS_EQUAL);
|
|
$adsTrackerEntering = AdsTrackerEnteringPeer::doCount($c);*/
|
|
|
|
|
|
// kasowanie wejść IP
|
|
$c = new Criteria();
|
|
$c->add(AdsTrackerRemoteAddressPeer::CREATED_AT, $delate_date, Criteria::LESS_EQUAL);
|
|
$adsTrackerRemoteAddress = AdsTrackerRemoteAddressPeer::doCount($c);
|
|
|
|
|
|
// kasowanie debug
|
|
$c = new Criteria();
|
|
$c->add(AdsTrackerDebugPeer::CREATED_AT, $delate_date, Criteria::LESS_EQUAL);
|
|
$adsTrackerDebug = AdsTrackerDebugPeer::doCount($c);
|
|
|
|
$sum = $adsTrackerEntering + $adsTrackerRemoteAddress + $adsTrackerDebug;
|
|
|
|
return $sum;
|
|
}
|
|
|
|
/**
|
|
* W tej metodzie wykonujemy swoje operacje na danych
|
|
*
|
|
*/
|
|
public function execute(int $offset): int
|
|
{
|
|
|
|
$delate_date = $this->getDelateDay();
|
|
|
|
/*// kasowanie wejść na reklamy
|
|
$c = new Criteria();
|
|
$c->add(AdsTrackerEnteringPeer::CREATED_AT, $delate_date, Criteria::LESS_EQUAL);
|
|
$c->setLimit(1000);
|
|
|
|
$offset += AdsTrackerEnteringPeer::doDelete($c);*/
|
|
|
|
|
|
// kasowanie wejść IP
|
|
$c = new Criteria();
|
|
$c->add(AdsTrackerRemoteAddressPeer::CREATED_AT, $delate_date, Criteria::LESS_EQUAL);
|
|
$c->setLimit(1000);
|
|
$offset += AdsTrackerRemoteAddressPeer::doDelete($c);
|
|
|
|
|
|
// kasowanie debug
|
|
$c = new Criteria();
|
|
$c->add(AdsTrackerDebugPeer::CREATED_AT, $delate_date, Criteria::LESS_EQUAL);
|
|
$c->setLimit(1000);
|
|
$offset += AdsTrackerDebugPeer::doDelete($c);
|
|
|
|
return $offset;
|
|
}
|
|
} |