Revize 295
Přidáno uživatelem Jiří Sviták před asi 15 roky(ů)
freenetis/trunk/kohana/application/models/account.php | ||
---|---|---|
*/
|
||
public function get_assoc_bank_accounts()
|
||
{
|
||
/*
|
||
return self::$db->query('SELECT q3.id, a.name, a.comment,
|
||
CONCAT(ba.account_nr, \'/\', ba.bank_nr) AS account_number,
|
||
q3.credit FROM
|
||
... | ... | |
LEFT JOIN accounts a ON q3.id = a.id
|
||
LEFT JOIN bank_accounts ba ON a.id = ba.account_id
|
||
WHERE a.member_id = 1 AND a.account_attribute_id = '.Account_attribute_Model::$bank
|
||
);
|
||
);
|
||
*/
|
||
}
|
||
|
||
/**
|
freenetis/trunk/kohana/application/models/bank_account.php | ||
---|---|---|
protected $belongs_to = array('account');
|
||
//protected $belongs_to_many = array();
|
||
//protected $has_and_belongs_to_many = array();
|
||
|
||
/**
|
||
* @author Jiri Svitak
|
||
* It gets all bank accounts of association.
|
||
* @return unknown_type
|
||
*/
|
||
public function get_assoc_bank_accounts()
|
||
{
|
||
/*
|
||
return self::$db->query('SELECT q3.id, ba.name, ba.comment,
|
||
CONCAT(ba.account_nr, \'/\', ba.bank_nr) AS account_number,
|
||
q3.credit FROM
|
||
(SELECT id, member_id, (inbound - outbound) AS credit FROM
|
||
(SELECT q1.id, q1.member_id, IFNULL(sum(amount), 0) AS inbound, outbound FROM
|
||
(SELECT ba.id, ba.member_id, IFNULL(sum(amount), 0) AS outbound
|
||
FROM bank_accounts ba
|
||
LEFT JOIN bank_transfers bt ON ba.id = bt.origin_id
|
||
GROUP BY ba.id) AS q1
|
||
LEFT JOIN transfers t ON q1.id = t.destination_id
|
||
GROUP BY q1.id) AS q2
|
||
) AS q3
|
||
LEFT JOIN bank_accounts ba ON q3.id = ba.id
|
||
WHERE a.member_id = 1'
|
||
);
|
||
*/
|
||
return self::$db->query('SELECT
|
||
ba.id, ba.name,
|
||
CONCAT(ba.account_nr, \'/\', ba.bank_nr) AS account_number
|
||
FROM bank_accounts ba
|
||
WHERE ba.member_id = 1'
|
||
);
|
||
}
|
||
|
||
|
||
}
|
||
|
||
?>
|
freenetis/trunk/kohana/application/controllers/bank_accounts.php | ||
---|---|---|
<?php
|
||
class Bank_accounts_Controller extends Controller
|
||
{
|
||
function index()
|
||
{
|
||
url::redirect(url_lang::base().'bank_accounts/show_assoc');
|
||
}
|
||
|
||
/**
|
||
* @author Jiri Svitak
|
||
* It shows bank accounts of association.
|
||
* @param $limit_results
|
||
* @param $order_by
|
||
* @param $order_by_direction
|
||
* @return unknown_type
|
||
*/
|
||
function show_assoc($limit_results = 50, $order_by = 'id', $order_by_direction = 'ASC')
|
||
{
|
||
// it selects only bank accounts of association
|
||
$acc_model = new Bank_account_Model();
|
||
$accs = $acc_model->get_assoc_bank_accounts();
|
||
$total_accs = count($accs);
|
||
|
||
$acc_grid = new Grid(url_lang::base().'bank_accounts',
|
||
url_lang::lang('texts.Bank accounts of association'), array(
|
||
'separator' => '<br /><br />',
|
||
'current' => $limit_results, // current selected 'records_per_page' value
|
||
'selector_increace' => 50, // increace
|
||
'selector_min' => 50, // minimum where selector start
|
||
'selector_max_multiplier' => 10,
|
||
'base_url' => Config::item('locale.lang').'/accounts/bank_transfers/'.$limit_results.'/'.$order_by.'/'.$order_by_direction ,
|
||
'uri_segment' => 'page', // pass a string as uri_segment to trigger former 'label' functionality
|
||
'total_items' => $total_accs, // use db count query here of course
|
||
'items_per_page' => $limit_results, // it may be handy to set defaults for stuff like this in config/pagination.php
|
||
'style' => 'classic',
|
||
'order_by' => $order_by,
|
||
'order_by_direction' => $order_by_direction,
|
||
'limit_results' => $limit_results,
|
||
));
|
||
// adding account, to do - access rights
|
||
//if ($this->acl_check_new(get_class($this), 'accounts', $member_id))
|
||
// $acc_grid->add_new_button(url_lang::base().'accounts/add_bank_account/'.$member_id, url_lang::lang('texts.Add new bank account'));
|
||
$acc_grid->order_field('id')->label('ID');
|
||
$acc_grid->order_field('name')->label(url_lang::lang('texts.Account name'));
|
||
//$acc_grid->order_field('comment')->label(url_lang::lang('texts.Comment'));
|
||
$acc_grid->order_field('account_number')->label(url_lang::lang('texts.Account number'));
|
||
//$acc_grid->order_field('credit')->label(url_lang::lang('texts.Credit'));
|
||
$acc_grid->action_field('id')->label(url_lang::lang('texts.Transfers'))->url(url_lang::base().'transfers/show_by_bank_account')->action(url_lang::lang('texts.Show'));
|
||
$acc_grid->action_field('id')->label(url_lang::lang('texts.Import'))->url(url_lang::base().'accounts/upload_bank_file')->action(url_lang::lang('texts.Import'));
|
||
$acc_grid->datasource($accs);
|
||
|
||
$view = new View('template');
|
||
$view->header = new View('base/header');
|
||
$view->header->title = url_lang::lang('texts.Bank accounts of association');
|
||
$view->header->menu = Controller::render_menu();
|
||
$view->content = $acc_grid;
|
||
$view->footer = new View('base/footer');
|
||
$view->render(TRUE);
|
||
}
|
||
|
||
}
|
||
?>
|
freenetis/trunk/kohana/application/controllers/accounts.php | ||
---|---|---|
*/
|
||
protected $parsed_bank_account = NULL;
|
||
|
||
function index()
|
||
{
|
||
url::redirect(url_lang::base().'accounts/credit_accounts');
|
||
}
|
||
|
||
/**
|
||
* @author Jiri Svitak
|
||
* It shows bank accounts of association.
|
||
* @param $limit_results
|
||
* @param $order_by
|
||
* @param $order_by_direction
|
||
* @return unknown_type
|
||
*/
|
||
function bank_accounts($limit_results = 50, $order_by = 'id', $order_by_direction = 'ASC')
|
||
{
|
||
// it selects only bank accounts of association
|
||
$acc_model = new Account_Model();
|
||
$accs = $acc_model->get_assoc_bank_accounts();
|
||
$total_accs = count($accs);
|
||
|
||
$acc_grid = new Grid(url_lang::base().'accounts',
|
||
url_lang::lang('texts.Bank accounts of association'), array(
|
||
'separator' => '<br /><br />',
|
||
'current' => $limit_results, // current selected 'records_per_page' value
|
||
'selector_increace' => 50, // increace
|
||
'selector_min' => 50, // minimum where selector start
|
||
'selector_max_multiplier' => 10,
|
||
'base_url' => Config::item('locale.lang').'/accounts/bank_transfers/'.$limit_results.'/'.$order_by.'/'.$order_by_direction ,
|
||
'uri_segment' => 'page', // pass a string as uri_segment to trigger former 'label' functionality
|
||
'total_items' => $total_accs, // use db count query here of course
|
||
'items_per_page' => $limit_results, // it may be handy to set defaults for stuff like this in config/pagination.php
|
||
'style' => 'classic',
|
||
'order_by' => $order_by,
|
||
'order_by_direction' => $order_by_direction,
|
||
'limit_results' => $limit_results,
|
||
));
|
||
// adding account, to do - access rights
|
||
//if ($this->acl_check_new(get_class($this), 'accounts', $member_id))
|
||
// $acc_grid->add_new_button(url_lang::base().'accounts/add_bank_account/'.$member_id, url_lang::lang('texts.Add new bank account'));
|
||
$acc_grid->order_field('id')->label('ID');
|
||
$acc_grid->order_field('name')->label(url_lang::lang('texts.Account name'));
|
||
$acc_grid->order_field('comment')->label(url_lang::lang('texts.Comment'));
|
||
$acc_grid->order_field('account_number')->label(url_lang::lang('texts.Account number'));
|
||
$acc_grid->order_field('credit')->label(url_lang::lang('texts.Credit'));
|
||
$acc_grid->action_field('id')->label(url_lang::lang('texts.Transfers'))->url(url_lang::base().'transfers/show_by_bank_account')->action(url_lang::lang('texts.Show'));
|
||
$acc_grid->action_field('id')->label(url_lang::lang('texts.Import'))->url(url_lang::base().'accounts/upload_bank_file')->action(url_lang::lang('texts.Import'));
|
||
$acc_grid->datasource($accs);
|
||
|
||
$view = new View('template');
|
||
$view->header = new View('base/header');
|
||
$view->header->title = url_lang::lang('texts.Bank accounts of association');
|
||
$view->header->menu = Controller::render_menu();
|
||
$view->content = $acc_grid;
|
||
$view->footer = new View('base/footer');
|
||
$view->render(TRUE);
|
||
}
|
||
|
||
/**
|
||
* @author Jiri Svitak
|
||
* It shows credit accounts of members.
|
||
* @param $limit_results
|
||
* @param $order_by
|
freenetis/trunk/kohana/application/libraries/MY_Controller.php | ||
---|---|---|
<li>'.html::anchor(url_lang::base().'members/debtors/', url_lang::lang('texts.Debtors')).'</li>';
|
||
|
||
if ($this->acl_check_2D('menu', 'accounts'))
|
||
$acc_menu .= '<li>'.html::anchor(url_lang::base().'accounts/bank_accounts', url_lang::lang('texts.Bank accounts of association')).'</li>
|
||
$acc_menu .= '<li>'.html::anchor(url_lang::base().'bank_accounts/show_assoc', url_lang::lang('texts.Bank accounts of association')).'</li>
|
||
<li>'.html::anchor(url_lang::base().'accounts/credit_accounts', url_lang::lang('texts.Credit accounts')).'</li>
|
||
<li>'.html::anchor(url_lang::base().'accounts/project_accounts', url_lang::lang('texts.Project accounts')).'</li>
|
||
<li>'.html::anchor(url_lang::base().'accounts/cash_flow', url_lang::lang('texts.Cash flow')).'</li>
|
Také k dispozici: Unified diff
Upraven vypis bankovnich uctu sdruzeni.