From a4308baa403a5bb53744e988bc27bc1d224c6fbb Mon Sep 17 00:00:00 2001 From: bkralik Date: Wed, 2 Apr 2025 00:50:55 +0200 Subject: [PATCH] Rozliseni spolu / druzstva v prehledu odchozich plateb --- app/presenters/SpravaPlatebPresenter.php | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/app/presenters/SpravaPlatebPresenter.php b/app/presenters/SpravaPlatebPresenter.php index bb461038..d52856c3 100644 --- a/app/presenters/SpravaPlatebPresenter.php +++ b/app/presenters/SpravaPlatebPresenter.php @@ -34,6 +34,18 @@ protected function createComponentOdchplatby($name) { $grid->setDefaultPerPage(100); $grid->setDefaultSort(array('datum' => 'DESC')); + $grid->addFilterSelect('ucet', 'Účet', array('vsechny' => 'Všechny', 'spolek' => 'Spolek', 'druzstvo' => 'Družstvo')) + ->setDefaultValue('vsechny') + ->setWhere(function ($value, \Nette\Database\Table\Selection $connection) { + if ($value == 'spolek') { + return ($connection->where('spolek', 1)); + } + if ($value == 'druzstvo') { + return ($connection->where('druzstvo', 1)); + } + return ($connection); + }); + $grid->setRowCallback(function ($item, $tr) { if ($item->datum_platby == null) { $tr->class[] = 'primarni'; @@ -42,6 +54,17 @@ protected function createComponentOdchplatby($name) { return $tr; }); + $grid->addColumnText('ucet', 'Účet')->setCustomRender(function ($item) { + $spanSpolek = Html::el('span')->setText('Spolek')->setClass('label label-spolek')->setAttribute('style', 'margin-left: 4px;'); + $spanDruzstvo = Html::el('span')->setText('Družstvo')->setClass('label label-druzstvo')->setAttribute('style', 'margin-left: 4px;'); + + if ($item->spolek) { + return ($spanSpolek); + } + + return ($spanDruzstvo); + }); + $grid->addColumnDate('datum', 'Datum dokladu')->setDateFormat(\Grido\Components\Columns\Date::FORMAT_DATE)->setSortable()->setFilterText(); $grid->getColumn('datum')->headerPrototype->style['width'] = '10%'; $grid->addColumnText('firma', 'Firma')->setSortable()->setFilterText()->setSuggestion();