示例#1
0
 protected function createTransactionFromRow($row, Administration $administration)
 {
     $transaction = new Transaction();
     $transaction->setAdministration($administration);
     $bankAccount = $this->bankAccountManager->findBankAccount($row[1], $administration);
     if (!$bankAccount || $row[1] != $bankAccount->getIban()) {
         throw new InvalidBankAccountException();
     }
     $transaction->setBankAccount($bankAccount);
     if ($row[9] != 'EUR') {
         throw new InvalidCurrencyException();
     }
     $transaction->setDate(new \DateTime($row[0]));
     //boekdatum
     $amount = (double) $row[10];
     $transaction->setAmount($amount);
     $transaction->setIban($row[2]);
     $transaction->setName($row[3]);
     $description = $row[16] . "\r\n" . $row[17];
     $description = trim($description);
     $transaction->setDescription($description);
     if (empty($transaction->getName())) {
         $transaction->setName(strtok($description, "\r\n"));
     }
     $transaction->setSourceData(json_encode($row));
     $transaction->setSourceId(md5($row[11] . $row[15]));
     return $transaction;
 }
示例#2
0
 /**
  * Checks whether this condition is true for the given transaction
  *
  * @param Transaction $transaction
  * @param RuleCondition $condition
  * @return bool
  */
 public function checkCondition(Transaction $transaction, RuleCondition $condition)
 {
     $params = $this->getParams($condition);
     if (stripos(trim($transaction->getName()), $params['name']) !== false) {
         return true;
     }
     return false;
 }
示例#3
0
 /**
  * Checks whether this condition is true for the given transaction
  *
  * @param Transaction $transaction
  * @param RuleCondition $condition
  * @return bool
  */
 public function checkCondition(Transaction $transaction, RuleCondition $condition)
 {
     $params = $this->getParams($condition);
     $result = strcasecmp($params['name'], $transaction->getName());
     if ($result === 0) {
         return true;
     }
     return false;
 }