Oara\Utilities::getMerchantIdMapFromMerchantList PHP Метод

getMerchantIdMapFromMerchantList() публичный статический Метод

public static getMerchantIdMapFromMerchantList ( $merchantList ) : array
$merchantList
Результат array
    public static function getMerchantIdMapFromMerchantList($merchantList)
    {
        $merchantIdMap = array();
        foreach ($merchantList as $merchant) {
            $merchantIdMap[$merchant["cid"]] = $merchant["name"];
        }
        return $merchantIdMap;
    }

Usage Example

Пример #1
0
 /**
  * @param null $merchantList
  * @param \DateTime|null $dStartDate
  * @param \DateTime|null $dEndDate
  * @return array
  */
 public function getTransactionList($merchantList = null, \DateTime $dStartDate = null, \DateTime $dEndDate = null)
 {
     $totalTransactions = array();
     $merchantIdList = \Oara\Utilities::getMerchantIdMapFromMerchantList($merchantList);
     $limit = 100;
     $page = 1;
     $loop = true;
     while ($loop) {
         $apiURL = "http://api.hasoffers.com/v3/Affiliate_Report.json?limit={$limit}&page={$page}&Method=getConversions&api_key={$this->_apiPassword}&NetworkId={$this->_domain}&fields[]=Stat.offer_id&fields[]=Stat.datetime&fields[]=Offer.name&fields[]=Stat.conversion_status&fields[]=Stat.payout&fields[]=Stat.conversion_sale_amount&fields[]=Stat.ip&fields[]=Stat.ad_id&fields[]=Stat.affiliate_info1&sort[Stat.datetime]=desc&filters[Stat.date][conditional]=BETWEEN&filters[Stat.date][values][]={$dStartDate->format("Y-m-d")}&filters[Stat.date][values][]={$dEndDate->format("Y-m-d")}&data_start={$dStartDate->format("Y-m-d")}&data_end={$dEndDate->format("Y-m-d")}";
         $response = self::call($apiURL);
         foreach ($response["response"]["data"]["data"] as $transactionApi) {
             $transaction = array();
             $merchantId = (int) $transactionApi["Stat"]["offer_id"];
             if ($merchantList == null || isset($merchantIdList[$merchantId])) {
                 $transaction['merchantId'] = $merchantId;
                 $transaction['date'] = $transactionApi["Stat"]["datetime"];
                 if ($transactionApi["Stat"]["ad_id"] != null) {
                     $transaction['unique_id'] = $transactionApi["Stat"]["ad_id"];
                 }
                 if ($transactionApi["Stat"]["affiliate_info1"] != null) {
                     $transaction['custom_id'] = $transactionApi["Stat"]["affiliate_info1"];
                 }
                 if ($transactionApi["Stat"]["conversion_status"] == "approved") {
                     $transaction['status'] = \Oara\Utilities::STATUS_CONFIRMED;
                 } else {
                     if ($transactionApi["Stat"]["conversion_status"] == "pending") {
                         $transaction['status'] = \Oara\Utilities::STATUS_PENDING;
                     } else {
                         if ($transactionApi["Stat"]["conversion_status"] == "rejected") {
                             $transaction['status'] = \Oara\Utilities::STATUS_DECLINED;
                         }
                     }
                 }
                 $transaction['amount'] = $transactionApi["Stat"]["payout"];
                 if (isset($transactionApi["Stat"]["conversion_sale_amount"])) {
                     $transaction['amount'] = $transactionApi["Stat"]["conversion_sale_amount"];
                 }
                 $transaction['commission'] = $transactionApi["Stat"]["payout"];
                 $totalTransactions[] = $transaction;
             }
         }
         if ((int) $response["response"]["data"]["pageCount"] <= $page) {
             $loop = false;
         }
         $page++;
     }
     return $totalTransactions;
 }
All Usage Examples Of Oara\Utilities::getMerchantIdMapFromMerchantList