コード例 #1
0
    /**
     *
     * @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;
    }
コード例 #2
0
	/**
	 *
	 * @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;
	}
コード例 #3
0
 public function add(Pap_Stats_Transactions $transactions) {
     $this->commission->add($transactions->getCommission());
     $this->count->add($transactions->getCount());
     $this->totalCost->add($transactions->getTotalCost());
 }
コード例 #4
0
    /**
     * @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;
    }