From e5f5c94bb6bbbe03730f5927b7f6c6594bc4f787 Mon Sep 17 00:00:00 2001 From: Edsel Date: Fri, 10 Feb 2017 18:53:22 +0530 Subject: [PATCH] CRM-19997 Added Credit Card Type field for Contribution Details report ---------------------------------------- * CRM-19997: Add Credit card type fields in contribution related reports https://issues.civicrm.org/jira/browse/CRM-19997 --- CRM/Report/Form/Contribute/Detail.php | 31 +++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/CRM/Report/Form/Contribute/Detail.php b/CRM/Report/Form/Contribute/Detail.php index f21518b306..e09f92466b 100644 --- a/CRM/Report/Form/Contribute/Detail.php +++ b/CRM/Report/Form/Contribute/Detail.php @@ -289,6 +289,24 @@ class CRM_Report_Form_Contribute_Detail extends CRM_Report_Form { ), ), ), + 'civicrm_financial_trxn' => array( + 'dao' => 'CRM_Financial_DAO_FinancialTrxn', + 'fields' => array( + 'credit_card_type' => array('title' => ts('Credit Card Type')), + ), + 'filters' => array( + 'credit_card_type' => array( + 'title' => ts('Credit Card Type'), + 'operatorType' => CRM_Report_Form::OP_MULTISELECT, + 'options' => CRM_Core_PseudoConstant::get('CRM_Financial_DAO_FinancialTrxn', 'credit_card_type'), + 'default' => NULL, + 'type' => CRM_Utils_Type::T_STRING, + ), + ), + ), + 'civicrm_entity_financial_trxn' => array( + 'dao' => 'CRM_Financial_DAO_EntityFinancialTrxn', + ), 'civicrm_batch' => array( 'dao' => 'CRM_Batch_DAO_EntityBatch', 'grouping' => 'contri-fields', @@ -673,6 +691,7 @@ UNION ALL $paymentInstruments = CRM_Contribute_PseudoConstant::paymentInstrument(); $contributionPages = CRM_Contribute_PseudoConstant::contributionPage(); $batches = CRM_Batch_BAO_Batch::getBatches(); + $creditCardTypes = CRM_Core_PseudoConstant::get('CRM_Financial_DAO_FinancialTrxn', 'credit_card_type'); foreach ($rows as $rowNum => $row) { if (!empty($this->_noRepeats) && $this->_outputMode != 'csv') { // don't repeat contact details if its same as the previous row @@ -747,6 +766,10 @@ UNION ALL $rows[$rowNum]['civicrm_batch_batch_id'] = CRM_Utils_Array::value($row['civicrm_batch_batch_id'], $batches); $entryFound = TRUE; } + if (!empty($row['civicrm_financial_trxn_credit_card_type'])) { + $rows[$rowNum]['civicrm_financial_trxn_credit_card_type'] = CRM_Utils_Array::value($row['civicrm_financial_trxn_credit_card_type'], $creditCardTypes); + $entryFound = TRUE; + } // Contribution amount links to viewing contribution if (($value = CRM_Utils_Array::value('civicrm_contribution_total_amount_sum', $row)) && @@ -1000,6 +1023,14 @@ WHERE civicrm_contribution_contribution_id={$row['civicrm_contribution_contribu ON ({$this->_aliases['civicrm_batch']}.entity_id = eft.financial_trxn_id AND {$this->_aliases['civicrm_batch']}.entity_table = 'civicrm_financial_trxn')"; } + // for credit card type + if ($this->isTableSelected('civicrm_financial_trxn')) { + $this->_from .= "\n LEFT JOIN civicrm_entity_financial_trxn {$this->_aliases['civicrm_entity_financial_trxn']} + ON ({$this->_aliases['civicrm_contribution']}.id = {$this->_aliases['civicrm_entity_financial_trxn']}.entity_id AND + {$this->_aliases['civicrm_entity_financial_trxn']}.entity_table = 'civicrm_contribution') + LEFT JOIN civicrm_financial_trxn {$this->_aliases['civicrm_financial_trxn']} + ON {$this->_aliases['civicrm_financial_trxn']}.id = {$this->_aliases['civicrm_entity_financial_trxn']}.financial_trxn_id"; + } } } -- 2.25.1