/** * * @service affiliate_stats read * @param $data */ public function load(Gpf_Rpc_Params $params) { $data = new Gpf_Rpc_Data($params); $filters = $data->getFilters(); $statsParams = new Pap_Stats_Params(); $statsParams->initFrom($filters); $transactions = new Pap_Stats_Transactions($statsParams); $select = new Gpf_SqlBuilder_SelectBuilder(); $select->from->add(Pap_Db_Table_Users::getName(), "pu"); $select->from->addInnerJoin(Gpf_Db_Table_Users::getName(), "gu", "gu.accountuserid = pu.accountuserid"); $select->select->add("SUM(IF(pu.rtype = '". Pap_Application::ROLETYPE_AFFILIATE ."', 1, 0))", "countAffiliates"); $select->select->add("SUM(IF(gu.rstatus = 'A', 1, 0))", "approvedAffiliates"); $select->select->add("SUM(IF(gu.rstatus = 'P', 1, 0))", "pendingAffiliates"); $filters->addTo($select->where); $select->where->add("pu.".Pap_Db_Table_Users::TYPE, "=", Pap_Application::ROLETYPE_AFFILIATE); $row = $select->getOneRow(); $data->setValue("countAffiliates", $this->checkNullValue($row->get("countAffiliates"))); $data->setValue("approvedAffiliates", $this->checkNullValue($row->get("approvedAffiliates"))); $data->setValue("pendingAffiliates", $this->checkNullValue($row->get("pendingAffiliates"))); $data->setValue("totalSales", $transactions->getTotalCost()->getAll()); $data->setValue("approvedCommissions", $transactions->getCommission()->getApproved()); $data->setValue("pendingCommissions", $transactions->getCommission()->getPending()); return $data; }
/** * * @service financial_overview read * @param $fields */ public function load(Gpf_Rpc_Params $params) { $data = new Gpf_Rpc_Data($params); $transactions = new Pap_Stats_Transactions(new Pap_Stats_Params()); $data->setValue("approvedCommissions", round($transactions->getCommission()->getApproved(), 2)); $data->setValue("pendingCommissions", round($transactions->getCommission()->getPending(), 2)); return $data; }
/** * * @service pay_affiliate_stats read * @param $data */ public function load(Gpf_Rpc_Params $params) { $data = new Gpf_Rpc_Data($params); $statsParams = new Pap_Stats_Params(); $statsParams->initFrom($data->getFilters()); $transactions = new Pap_Stats_Transactions($statsParams); $data->setValue("paid", $this->getPaidData($data->getFilters())); $data->setValue("unpaidApprovedComm", $transactions->getCommission()->getApproved()); $data->setValue("unpaidPendingComm", $transactions->getCommission()->getPending()); $data->setValue("unpaidDeclinedComm", $transactions->getCommission()->getDeclined()); return $data; }
/** * * @service campaign_stats read * @param $data */ public function load(Gpf_Rpc_Params $params) { $data = new Gpf_Rpc_Data($params); $statsParams = new Pap_Stats_Params(); $statsParams->initFrom($data->getFilters()); $transactions = new Pap_Stats_Transactions($statsParams); $data->setValue("totalCommisions", $transactions->getCommission()->getAll()); $data->setValue("totalSales", $transactions->getTotalCost()->getAll()); $data->setValue("totalPendingCommisions", $transactions->getCommission()->getPending()); $data->setValue("totalUnpaidApprovedCommisions", $transactions->getCommission()->getApproved()); return $data; }
/** * @service period_stats read * @param $fields */ public function load(Gpf_Rpc_Params $params) { $data = new Gpf_Rpc_Data($params); $thisMonthParams = $this->getStatsParams(Gpf_Data_Filter::RANGE_THIS_MONTH); $transactions = new Pap_Stats_Transactions($thisMonthParams); $data->setValue('totalCommisonsApprovedUnpaid', $transactions->getCommission()->getApproved()); $data->setValue('totalCommissionsPending', $transactions->getCommission()->getPending()); $data->setValue('totalCommissionsPaid', $transactions->getCommission()->getPaid()); $data->setValue('generalAffiliateLink', self::getAffiliateLink()); return $data; }
protected function fillDataToTemplate(Gpf_Templates_Template $tmpl, Gpf_Rpc_Params $params) { $todayParams = $this->getStatsParams('T'); $thisMonthParams = $this->getStatsParams('TM'); $tmpl->assign('todayClicks', new Pap_Stats_Clicks($todayParams)); $tmpl->assign('todayImpressions', new Pap_Stats_Impressions($todayParams)); $tmpl->assign('todaySales', new Pap_Stats_Sales($todayParams)); $tmpl->assign('todayCommissions', new Pap_Stats_Transactions($todayParams)); $tmpl->assign('todayRefunds', new Pap_Stats_Refunds($todayParams)); $tmpl->assign('todayChargebacks', new Pap_Stats_Chargebacks($todayParams)); $tmpl->assign('todayTransactionTypes', new Pap_Stats_TransactionTypeStats($todayParams)); $signupBonus = new Pap_Stats_Transactions($todayParams); $signupBonus->setTransactionType(Pap_Db_Transaction::TYPE_SIGNUP_BONUS); $tmpl->assign('todaySignupBonus', $signupBonus); $tmpl->assign('thisMonthClicks', new Pap_Stats_Clicks($thisMonthParams)); $tmpl->assign('thisMonthImpressions', new Pap_Stats_Impressions($thisMonthParams)); $tmpl->assign('thisMonthSales', $s = new Pap_Stats_Sales($thisMonthParams)); $tmpl->assign('thisMonthCommissions', new Pap_Stats_Transactions($thisMonthParams)); $tmpl->assign('thisMonthRefunds', new Pap_Stats_Refunds($thisMonthParams)); $tmpl->assign('thisMonthChargebacks', new Pap_Stats_Chargebacks($thisMonthParams)); $tmpl->assign('thisMonthTransactionTypes', new Pap_Stats_TransactionTypeStats($thisMonthParams)); $signupBonusMonth = new Pap_Stats_Transactions($thisMonthParams); $signupBonusMonth->setTransactionType(Pap_Db_Transaction::TYPE_SIGNUP_BONUS); $tmpl->assign('thisMonthSignupBonus', $signupBonusMonth); $actionCommissionsEnabled = Gpf::NO; $types = new Pap_Stats_TransactionTypeStatsFirstTier($thisMonthParams); foreach ($types->getTypes() as $transactionType) { if($transactionType->getType() == Pap_Common_Constants::TYPE_ACTION) { $actionCommissionsEnabled = Gpf::YES; $tmpl->assign('todayActionCommissions', new Pap_Stats_Actions($todayParams)); $tmpl->assign('thisMonthActionCommissions', new Pap_Stats_Actions($thisMonthParams)); break; } } $tmpl->assign('actionCommissionsEnabled', $actionCommissionsEnabled); if (Gpf_Session::getAuthUser()->hasPrivilege(Pap_Privileges::PENDING_TASK, Pap_Privileges::P_READ)) { $pendingTasksGadget = new Pap_Merchants_ApplicationGadgets_PendingTasksGadgets(); $pendingTasksData = $pendingTasksGadget->load($params); $tmpl->assign('pendingTasks', array('affiliates' => $pendingTasksData->getValue('pendingAffiliates'),'links'=>$pendingTasksData->getValue('pendingDirectLinks'),'emails'=>$pendingTasksData->getValue('unsentEmails'),'commissions'=>$pendingTasksData->getValue('pendingCommissions'),'totalcosts'=>$pendingTasksData->getValue('totalCommissions'))); } else { $tmpl->assign('pendingTasks', false); } return $tmpl; }
public function addTransType($type, $commTypeId = null) { $stats = new Pap_Stats_Transactions($this->params); $stats->setTransactionType($type); $stats->setCommissionTypeId($commTypeId); $this->addTransactionType($stats); }
public function add(Pap_Stats_Transactions $transactions) { $this->commission->add($transactions->getCommission()); $this->count->add($transactions->getCount()); $this->totalCost->add($transactions->getTotalCost()); }
public function __construct(Pap_Stats_Params $params) { parent::__construct($params); $this->setTransactionType(Pap_Common_Constants::TYPE_SALE); $this->setTier(Pap_Stats_Computer_Transactions::FIRST_TIER); }
public function getName() { return Pap_Common_Constants::getTypeAsText($this->getMainType()) . ' of ' . parent::getName(); }
private function getStats(Pap_Stats_Params $statsParams) { $stats = array(); if($this->clientDate != '') { $stats['fordate'] = substr($this->clientDate, 0, 10); // get only date part of the date } else { $stats['fordate'] = $statsParams->getDateFrom()->toDate(); // get only date part of the date } if ($statsParams->getAffiliateId() != '') { $stats['usertype'] = 'affiliate'; } else { $stats['usertype'] = 'merchant'; } $clicks = new Pap_Stats_Clicks($statsParams); $imps = new Pap_Stats_Impressions($statsParams); $sales = new Pap_Stats_Sales($statsParams); $stats['today_clicks'] = $clicks->getCount()->getAll(); $stats['today_impressions'] = $imps->getCount()->getAll(); $stats['today_unique_impressions'] = $imps->getCount()->getUnique(); $stats['today_sales_approved'] = $sales->getCount()->getApproved(); $stats['today_sales_pending'] = $sales->getCount()->getPending(); $stats['today_sales_declined'] = $sales->getCount()->getDeclined(); if ($statsParams->getAffiliateId() != '') { $transactions = new Pap_Stats_Transactions($statsParams); $stats['approved'] = $transactions->getCommission()->getApproved(); $stats['pending'] = $transactions->getCommission()->getPending(); $stats['declined'] = $transactions->getCommission()->getDeclined(); } else { $affiliateStats = $this->getAffiliateStats(new Pap_Stats_Params()); $affiliateStats->rewind(); while ($affiliateStats->valid()) { $stats[$affiliateStats->key()] = $this->correctNullValue($affiliateStats->current()); $affiliateStats->next(); } } $stats['today_leads_approved'] = 0; $stats['today_leads_pending'] = 0; $stats['today_leads_declined'] = 0; $stats['currency'] = 'U'; return $stats; }
public function __construct(Pap_Stats_Params $params) { parent::__construct($params); $this->setTier(Pap_Stats_Computer_Transactions::HIGHER_TIERS); }
public function __construct(Pap_Stats_Params $params, $commissionTypeId, Pap_Features_ActionCommission_Stats_ActionsComputer $computer) { parent::__construct($params); $this->setCommissionTypeId($commissionTypeId); $this->actionsComputer = $computer; }
/** * @service traffic_stats read * @param $data */ public function getTransactionsData(Gpf_Rpc_Params $params) { $data = new Gpf_Rpc_Data($params); $filters = $this->checkFilters($data); $statsParameters = new Pap_Stats_Params(); $statsParameters->initFrom($filters); $transactions = new Pap_Stats_Transactions($statsParameters); $data->setValue("transactionsCount", $transactions->getCount()->getAll()); $data->setValue("transactionsCountApproved", $transactions->getCount()->getApproved()); $data->setValue("transactionsCountDeclined", $transactions->getCount()->getDeclined()); $data->setValue("transactionsCountPaid", $transactions->getCount()->getPaid()); $data->setValue("transactionsCountPending", $transactions->getCount()->getPending()); $data->setValue("transactionsTotalCost", $transactions->getTotalCost()->getAll()); $data->setValue("transactionsTotalCostApproved", $transactions->getTotalCost()->getApproved()); $data->setValue("transactionsTotalCostDeclined", $transactions->getTotalCost()->getDeclined()); $data->setValue("transactionsTotalCostPaid", $transactions->getTotalCost()->getPaid()); $data->setValue("transactionTotalCostPending", $transactions->getTotalCost()->getPending()); $data->setValue("transactionsCommission", $transactions->getCommission()->getAll()); $data->setValue("transactionsCommissionApproved", $transactions->getCommission()->getApproved()); $data->setValue("transactionsCommissionDeclined", $transactions->getCommission()->getDeclined()); $data->setValue("transactionsCommissionPaid", $transactions->getCommission()->getPaid()); $data->setValue("transactionsCommissionPending", $transactions->getCommission()->getPending()); return $data; }
public function traficOverview($session,$today){ $this->loginFromSession($session); $homeData = new Pap_Merchants_HomeData(); if($today){ $statParams = $homeData->getStatsParams('T'); }else{ $statParams = $homeData->getStatsParams('TM'); } $response = new Pap_Mobile_Response(true); $impressions = new Pap_Stats_Impressions($statParams); $response->impressionsraw = (int)$impressions->getCount()->getRaw(); $response->impressionsunique = (int)$impressions->getCount()->getUnique(); $clicks = new Pap_Stats_Clicks($statParams); $response->clicksraw = (int)$clicks->getCount()->getRaw(); $response->clicksunique = (int)$clicks->getCount()->getUnique(); $sales = new Pap_Stats_Sales($statParams); $response->salespaid = (int)$sales->getCount()->getPaid(); $response->salespending = (int)$sales->getCount()->getPending(); $response->salesapproved = (int)$sales->getCount()->getApproved(); $response->salescostpaid = $this->toCurency($sales->getTotalCost()->getPaid()); $response->salescostpending = $this->toCurency($sales->getTotalCost()->getPending()); $response->salescostapproved = $this->toCurency($sales->getTotalCost()->getApproved()); $commisions = new Pap_Stats_Transactions($statParams); $response->commisionspaid = $this->toCurency($commisions->getCommission()->getPaid()); $response->commisionspending = $this->toCurency($commisions->getCommission()->getPending()); $response->commisionsapproved = $this->toCurency($commisions->getCommission()->getApproved()); $refunds = new Pap_Stats_Refunds($statParams); $response->refundspaid = $this->toCurency($refunds->getCommission()->getPaid()); $response->refundspending = $this->toCurency($refunds->getCommission()->getPending()); $response->refundsapproved = $this->toCurency($refunds->getCommission()->getApproved()); $chargebacks = new Pap_Stats_Chargebacks($statParams); $response->chargebackspaid = $this->toCurency($chargebacks->getCommission()->getPaid()); $response->chargebackspending = $this->toCurency($chargebacks->getCommission()->getPending()); $response->chargebacksapproved = $this->toCurency($chargebacks->getCommission()->getApproved()); return $response; }