| @@ 104-143 (lines=40) @@ | ||
| 101 | * @return array of Transaction |
|
| 102 | * @throws \Exception |
|
| 103 | */ |
|
| 104 | public function getSales(\DateTime $dateFrom, \DateTime $dateTo, array $arrMerchantID = array()): array |
|
| 105 | { |
|
| 106 | ||
| 107 | $arrResult = array(); |
|
| 108 | $transactionList = $this->_network->getTransactionList($arrMerchantID, $dateFrom, $dateTo); |
|
| 109 | ||
| 110 | foreach ($transactionList as $transaction) { |
|
| 111 | if (isset($transaction['commission']) && $transaction['commission'] < 0){ |
|
| 112 | continue; |
|
| 113 | } |
|
| 114 | $Transaction = Transaction::createInstance(); |
|
| 115 | if (isset($transaction['currency']) && !empty($transaction['currency'])) { |
|
| 116 | $Transaction->currency = $transaction['currency']; |
|
| 117 | } else { |
|
| 118 | $Transaction->currency = "EUR"; |
|
| 119 | } |
|
| 120 | $Transaction->status = $transaction['status']; |
|
| 121 | $Transaction->amount = $transaction['amount']; |
|
| 122 | array_key_exists_safe($transaction, 'custom_id') ? $Transaction->custom_ID = $transaction['custom_id'] : $Transaction->custom_ID = ''; |
|
| 123 | $Transaction->unique_ID = $transaction['unique_id']; |
|
| 124 | $Transaction->commission = $transaction['commission']; |
|
| 125 | $Transaction->date = new \DateTime($transaction['date']); |
|
| 126 | // Future use - Only few providers returns these dates values - <PN> - 2017-06-29 |
|
| 127 | if (isset($transaction['click_date']) && !empty($transaction['click_date'])) { |
|
| 128 | $Transaction->click_date = new \DateTime($transaction['click_date']); |
|
| 129 | } |
|
| 130 | if (isset($transaction['update_date']) && !empty($transaction['update_date'])) { |
|
| 131 | $Transaction->update_date = new \DateTime($transaction['update_date']); |
|
| 132 | } |
|
| 133 | $Transaction->merchant_ID = $transaction['merchantId']; |
|
| 134 | $Transaction->campaign_name = $transaction['merchantName']; |
|
| 135 | $Transaction->approved = false; |
|
| 136 | if ($Transaction->status == \Oara\Utilities::STATUS_CONFIRMED) { |
|
| 137 | $Transaction->approved = true; |
|
| 138 | } |
|
| 139 | $arrResult[] = $Transaction; |
|
| 140 | } |
|
| 141 | ||
| 142 | return $arrResult; |
|
| 143 | } |
|
| 144 | ||
| 145 | /** |
|
| 146 | * @param \DateTime $dateFrom |
|
| @@ 139-177 (lines=39) @@ | ||
| 136 | * @return array of Transaction |
|
| 137 | * @throws \Exception |
|
| 138 | */ |
|
| 139 | public function getSales(\DateTime $dateFrom, \DateTime $dateTo, array $arrMerchantID = array()): array |
|
| 140 | { |
|
| 141 | ||
| 142 | $arrResult = array(); |
|
| 143 | $transactionList = $this->_network->getTransactionList($arrMerchantID, $dateFrom, $dateTo); |
|
| 144 | foreach ($transactionList as $transaction) { |
|
| 145 | if (isset($transaction['commission']) && $transaction['commission'] < 0){ |
|
| 146 | continue; |
|
| 147 | } |
|
| 148 | $Transaction = Transaction::createInstance(); |
|
| 149 | if (isset($transaction['currency']) && !empty($transaction['currency'])) { |
|
| 150 | $Transaction->currency = $transaction['currency']; |
|
| 151 | } else { |
|
| 152 | $Transaction->currency = "EUR"; |
|
| 153 | } |
|
| 154 | $Transaction->status = $transaction['status']; |
|
| 155 | $Transaction->amount = $transaction['amount']; |
|
| 156 | array_key_exists_safe($transaction, 'custom_id') ? $Transaction->custom_ID = $transaction['custom_id'] : $Transaction->custom_ID = ''; |
|
| 157 | $Transaction->unique_ID = $transaction['unique_id']; |
|
| 158 | $Transaction->commission = $transaction['commission']; |
|
| 159 | $Transaction->date = $transaction['date']; |
|
| 160 | // Future use - Only few providers returns these dates values - <PN> - 2017-06-29 |
|
| 161 | if (isset($transaction['click_date']) && !empty($transaction['click_date'])) { |
|
| 162 | $Transaction->click_date = $transaction['click_date']; |
|
| 163 | } |
|
| 164 | if (isset($transaction['update_date']) && !empty($transaction['update_date'])) { |
|
| 165 | $Transaction->update_date = new \DateTime($transaction['update_date']); |
|
| 166 | } |
|
| 167 | $Transaction->merchant_ID = $transaction['merchantId']; |
|
| 168 | $Transaction->campaign_name = $transaction['campaign_name']; |
|
| 169 | $Transaction->approved = false; |
|
| 170 | if ($Transaction->status == \Oara\Utilities::STATUS_CONFIRMED) { |
|
| 171 | $Transaction->approved = true; |
|
| 172 | } |
|
| 173 | $arrResult[] = $Transaction; |
|
| 174 | } |
|
| 175 | ||
| 176 | return $arrResult; |
|
| 177 | } |
|
| 178 | ||
| 179 | /** |
|
| 180 | * @param \DateTime $dateFrom |
|