/** * Constructor. */ private function __construct() { $this->affiliateDao = OCSAFFILIATES_BOL_AffiliateDao::getInstance(); $this->affiliateUserDao = OCSAFFILIATES_BOL_AffiliateUserDao::getInstance(); $this->bannerDao = OCSAFFILIATES_BOL_BannerDao::getInstance(); $this->clickDao = OCSAFFILIATES_BOL_ClickDao::getInstance(); $this->payoutDao = OCSAFFILIATES_BOL_PayoutDao::getInstance(); $this->resetPasswordDao = OCSAFFILIATES_BOL_ResetPasswordDao::getInstance(); $this->saleDao = OCSAFFILIATES_BOL_SaleDao::getInstance(); $this->signupDao = OCSAFFILIATES_BOL_SignupDao::getInstance(); $this->verificationDao = OCSAFFILIATES_BOL_VerificationDao::getInstance(); $this->visitDao = OCSAFFILIATES_BOL_VisitDao::getInstance(); }
/** * Returns list of sales that were not tracked by the affiliate system * * @param $limit * @return array */ public function getUntrackedSales($limit) { $saleDao = BOL_BillingSaleDao::getInstance(); $affiliateUserDao = OCSAFFILIATES_BOL_AffiliateUserDao::getInstance(); $sql = "SELECT `bs`.* FROM `" . $saleDao->getTableName() . "` AS `bs`\n INNER JOIN `" . $affiliateUserDao->getTableName() . "` AS `au` ON (`bs`.`userId` = `au`.`userId`)\n LEFT JOIN `" . $this->getTableName() . "` AS `as` ON(`bs`.`id`=`as`.`saleId`)\n WHERE `bs`.`status` = 'delivered' AND `as`.`id` IS NULL\n ORDER BY `bs`.`timeStamp` ASC\n LIMIT :limit"; return $this->dbo->queryForObjectList($sql, BOL_BillingSaleDao::getInstance()->getDtoClassName(), array('limit' => $limit)); }