Projekt

Obecné

Profil

« Předchozí | Další » 

Revize 309

Přidáno uživatelem Tomáš Dulík před asi 15 roky(ů)

Upravy potrebne pro funkci importu plateb

Zobrazit rozdíly:

freenetis/trunk/kohana/application/models/member.php
->join('users', 'users.member_id = members.id', NULL, "LEFT")
->where("members.id=$id AND users.id IS NOT NULL")->limit(1)->get();
}
/**
* @author Tomas Dulik
* @return unknown_type
*
*/
public function get_member_by_phone($phone) {
$q="SELECT * FROM members
WHERE id = (
SELECT member_id
FROM users
WHERE REPLACE( phone, ' ', '' ) LIKE '$phone'
LIMIT 1
) ";
/* Slower alternative:
$q='SELECT members.id FROM members
JOIN users ON members.id=users.member_id
WHERE REPLACE(phone," ", "") LIKE '%$phone%' LIMIT 1';
*/
$query=self::$db->query($q);
return $query->current();
}
/**
* @param $phone - string containing a phone number
......
}
/**
* @author Tomas Dulik
* @return unknown_type
*
*/
public function find_member_by_phone($phone) {
$q="(
SELECT members.*
FROM members
JOIN users ON members.id = users.member_id
AND users.phone = '$phone'
)
UNION
(
SELECT members.*
FROM members
JOIN users ON members.id = users.member_id
JOIN contacts ON users.id = contacts.user_id
JOIN enum_types ON contacts.type = enum_types.id
AND enum_types.value = 'phone'
AND contacts.value = '$phone'
)";
/* Slower alternative:
$q='SELECT members.id FROM members
JOIN users ON members.id=users.member_id
WHERE REPLACE(phone," ", "") LIKE '%$phone%' LIMIT 1';
*/
$query=self::$db->query($q);
return $query->current();
}
}
freenetis/trunk/kohana/application/models/account.php
// protected $has_many = array('transfers');
protected $belongs_to = array('member');
//protected $belongs_to_many = array();
//protected $has_and_belongs_to_many = array();
protected $has_and_belongs_to_many = array('bank_account');
public function acc_type_exist($type, $owner_id = null, $acc_id = NULL)
{
freenetis/trunk/kohana/application/models/bank_account.php
class Bank_account_Model extends ORM {
//protected $has_one = array();
// protected $has_many = array('money_transfers');
protected $belongs_to = array('account');
//protected $belongs_to = array('account');
//protected $belongs_to_many = array();
//protected $has_and_belongs_to_many = array();
protected $has_and_belongs_to_many = array('account');
/**
* @author Jiri Svitak
freenetis/trunk/kohana/application/libraries/Parser_Ebanka.php
$this->get_line()); // hledej lomítko
if ($czPos===false) die("Nemůžu najít 'CZ' v IBAN čísle účtu'");
else {
$this->result->parsed_account_nr=substr($this->buffer, $czPos+4, 4);
$this->result->parsed_account_bank_nr=substr($this->buffer, $czPos+8, 16);
$this->result->parsed_acc_bank_nr=substr($this->buffer, $czPos+4, 4);
$account_nr=(int)substr($this->buffer, $czPos+8, 16);
$this->result->parsed_acc_nr="$account_nr";
}
}
protected function get_castka($field) {
protected function get_amount($field) {
$field=strip_tags($field);
$field=str_replace(array(" ", " "), "", $field);
return strtr($field, ",", ".");
......
case 2: //2x za sebou datum odepsání<br/>typ platby
$arr=explode("<br/>", $field);
$res->typ=html_entity_decode($arr[2],ENT_QUOTES,"UTF-8");
$res->type=html_entity_decode($arr[2],ENT_QUOTES,"UTF-8");
break;
case 3:
$arr=explode("<br/>", $field); //VS<br/>KS<br/>SS
......
$res->specific_symbol=$arr[2];
break;
case 4:
$res->castka=$this->get_castka($field); // částka
$res->amount=$this->get_amount($field); // částka
break;
case 5:
$res->poplatek=$this->get_castka($field); // Poplatek
$res->fee=$this->get_amount($field); // fee
if (isset($this->callback)) call_user_func($this->callback, $res);
/**
* ted uz muzeme ulozit ziskane data do databaze:
......
$arr=preg_split("/<br>/si", $field); // dělelní dle <BR> nebo <br>
$res->comment=$arr[0]; // odstranění počát. a konc. mezer
$res->name=$arr[1];
$res->account_nr=$arr[2];
$account_arr=explode("/", $arr[2]);
$res->account_nr=$account_arr[0];
$res->account_bank_nr=$account_arr[1];
break;
case 3: //datum odepsání<br><br>typ platby
$arr=preg_split("/<br>/si", $field);
$res->typ=$arr[2];
$res->type=$arr[2];
break;
case 4: //SS<br>VS<br>KS
$arr=preg_split("/<br>/si", $field);
......
$res->specific_symbol=$arr[0];
break;
case 5: // částka
$res->castka=$this->get_castka($field);
$res->amount=$this->get_amount($field);
break;
case 6: // poplatek
$res->poplatek=$this->get_castka($field);
case 6: // fee
$res->fee=$this->get_amount($field);
if (isset($this->callback)) call_user_func($this->callback, $res);
/**
* ted uz muzeme ulozit ziskane data do databaze:

Také k dispozici: Unified diff