public function removeAllSepaMandatesForContactId($contactId) { $bankAccounts = Billing_Controller_BankAccount::getInstance()->getByContactId($contactId); $baIds = array(); foreach ($bankAccounts as $bankAccount) { $baIds[] = $bankAccount->getId(); } if (count($baIds) > 0) { $bFilter = array(array('field' => 'bank_account_id', 'operator' => 'AND', 'value' => array(array('field' => 'id', 'operator' => 'in', 'value' => $baIds)))); $bFilter = new Billing_Model_SepaMandateFilter($bFilter); $sepaMandateIds = $this->search($bFilter, null, false, true); if (count($sepaMandateIds) > 0) { foreach ($sepaMandateIds as $sepaMandateId) { $bankAccountUsages = Billing_Controller_BankAccountUsage::getInstance()->getBySepaMandateId($sepaMandateId); foreach ($bankAccountUsage as $bankAccountUsage) { $bankAccountUsage->__set('sepa_mandate_id', null); Billing_Controller_BankAccountUsage::getInstance()->update($bankAccountUsage); } } $this->delete($sepaMandateIds); return true; } } return false; }
public function saveBankAccountUsage($recordData) { return $this->_save($recordData, Billing_Controller_BankAccountUsage::getInstance(), 'BankAccountUsage'); }
public function addUsageRegularDonation(Donator_Model_RegularDonation $obj) { try { $usage = Billing_Controller_BankAccountUsage::getInstance()->getByContextAndPurpose('DONATOR', 'APPRECORDONLY', $this->getId(), $obj->getId()); $usage->__set('bank_account_id', $this->getId()); $usage->setUsageRegularDonation($obj); } catch (Exception $e) { $usage = Billing_Controller_BankAccountUsage::getInstance()->getEmptyBankAccountUsage(null, true); $usage->__set('bank_account_id', $this->getId()); $usage->setUsageRegularDonation($obj); $usage = Billing_Controller_BankAccountUsage::getInstance()->create($usage); } return $usage; }