diff --git a/application/controllers/monfin2/Monfin2overzicht.php b/application/controllers/monfin2/Monfin2overzicht.php index b00816b..8f049eb 100644 --- a/application/controllers/monfin2/Monfin2overzicht.php +++ b/application/controllers/monfin2/Monfin2overzicht.php @@ -54,28 +54,41 @@ class Monfin2overzicht extends MY_Controller{ $sombedragpctex = $sommenex['sombedragpct']; // todo // bereken budget - besteding verschil per basis/extra/overig - $budgetten->basisverschil = number_format($budgetten->basis - $sombasisperuitgavetype[0]->som, 0, ',' , '.' ); - $budgetten->extraverschil = number_format($budgetten->extra - $somextraperuitgavetype[0]->som, 0, ',' , '.' ); - $budgetten->totaalverschil = $budgetten->totaal - ($sombasisperuitgavetype[0]->som +$somextraperuitgavetype[0]->som); - - - $budgetten->basisbudgetpct = number_format($sombudgetpct, 1,',', '.'); - $budgetten->basisbedragpct = number_format($sombedragpct, 1,',', '.'); - - $budgetten->extrabudgetpct = number_format($sombudgetpctex, 1,',', '.'); - $budgetten->extrabedragpct = number_format($sombedragpctex, 1,',', '.'); - - $bedrag = $budgetten->totaal > 0 ? ($totbesteed/$budgetten->totaal) *100: 0; - $budgetten->totbedragbudgetkaal = $bedrag; - $budgetten->totbedragbudgetpct = number_format($bedrag, 1, ',', '.'); - $bedrag2 = $budgetten->totaal > 0 ?($totgebudgeteerd/$budgetten->totaal)*100 : 0; - $budgetten->totbudgetpct = number_format($bedrag2, 1, ',', '.'); +// $budgetten->basisverschil = number_format($budgetten->basis - $sombasisperuitgavetype[0]->som, 0, ',' , '.' ); +// $budgetten->extraverschil = number_format($budgetten->extra - $somextraperuitgavetype[0]->som, 0, ',' , '.' ); +// $budgetten->totaalverschil = $budgetten->totaal - ($sombasisperuitgavetype[0]->som +$somextraperuitgavetype[0]->som); +// +// +// $budgetten->basisbudgetpct = number_format($sombudgetpct, 1,',', '.'); +// $budgetten->basisbedragpct = number_format($sombedragpct, 1,',', '.'); +// +// $budgetten->extrabudgetpct = number_format($sombudgetpctex, 1,',', '.'); +// $budgetten->extrabedragpct = number_format($sombedragpctex, 1,',', '.'); +// +// $bedrag = $budgetten->totaal > 0 ? ($totbesteed/$budgetten->totaal) *100: 0; +// $budgetten->totbedragbudgetkaal = $bedrag; +// $budgetten->totbedragbudgetpct = number_format($bedrag, 1, ',', '.'); +// $bedrag2 = $budgetten->totaal > 0 ?($totgebudgeteerd/$budgetten->totaal)*100 : 0; +// $budgetten->totbudgetpct = number_format($bedrag2, 1, ',', '.'); + $budgetten->basis = number_format( $sombasisperuitgavetype[0]->som, 0, ',' , '.' ); + $budgetten->extra = number_format( $somextraperuitgavetype[0]->som, 0, ',' , '.' ); + $budgetten->totaal = number_format( $sombasisperuitgavetype[0]->som + $somextraperuitgavetype[0]->som, 0, ',' , '.' ); + $budgetten->basisverschil = number_format($sombasisperuitgavetype[0]->budgetsom - $sombasisperuitgavetype[0]->som, 0, ',' , '.' ); + $budgetten->extraverschil = number_format($somextraperuitgavetype[0]->budgetsom- $somextraperuitgavetype[0]->som, 0, ',' , '.' ); + $budgetten->totaalverschil = number_format($sombasisperuitgavetype[0]->budgetsom + $somextraperuitgavetype[0]->budgetsom - $sombasisperuitgavetype[0]->som -$somextraperuitgavetype[0]->som, 0, ',' , '.' ); + $budgetten->basisbudgetpct = number_format($sombudgetpct, 2,',', '.'); + $budgetten->basisbedragpct = number_format($sombedragpct, 1,',', '.'); + $budgetten->extrabudgetpct = number_format($sombudgetpctex, 1,',', '.'); + $budgetten->extrabedragpct = number_format($sombedragpctex, 1,',', '.'); + $budgetten->totbedragpct = number_format(($sombedragpctex + $sombedragpct)/2, 1, ',', '.' ); + $budgetten->totbudgetpct = number_format(($sombudgetpct + $sombudgetpctex)/2, 1, ',', '.'); +// // todo // zorg dat alle getallen geformateerd zijn met een duizendtalscheidingsteken - $budgetten->totaal = number_format($budgetten->totaal, 0 , ',' , '.'); - $budgetten->basis = number_format($budgetten->basis , 0 , ',' , '.'); - $budgetten->extra = number_format($budgetten->extra, 0 , ',' , '.'); +// $budgetten->totaal = number_format($budgetten->totaal, 0 , ',' , '.'); +// $budgetten->basis = number_format($budgetten->basis , 0 , ',' , '.'); +// $budgetten->extra = number_format($budgetten->extra, 0 , ',' , '.'); foreach($sombasisperuitgavetype as $sompertype){ $sompertype->som = number_format($sompertype->som,0, ',' , '.' ); @@ -174,7 +187,7 @@ class Monfin2overzicht extends MY_Controller{ $sommen = $this->get_som_per_regel($basis, $budgetten->basis, $sombasisperuitgavetype[0]); $basis = $sommen['soorten']; -// $somgebudgetpct = $sommen['somgebudgetpct']; + $sombudgetpct = $sommen['sombudgetpct']; $sombedragpct = $sommen['sombedragpct']; // $sombedragbudgetpct = $sommen['sombedragbudgetpct']; @@ -187,27 +200,20 @@ class Monfin2overzicht extends MY_Controller{ // $sombedragbudgetpctex = $sommen['sombedragbudgetpct']; // todo // bereken budget - besteding verschil per basis/extra/overig - $budgetten->basisverschil = number_format($budgetten->basis - $sombasisperuitgavetype[3]->som, 0, ',' , '.' ); - $budgetten->extraverschil = number_format($budgetten->extra - $somextraperuitgavetype[3]->som, 0, ',' , '.' ); - $budgetten->totaalverschil = $budgetten->totaal - ($sombasisperuitgavetype[3]->som +$somextraperuitgavetype[3]->som); + $budgetten->basis = number_format( $sombasisperuitgavetype[0]->som, 0, ',' , '.' ); + $budgetten->extra = number_format( $somextraperuitgavetype[0]->som, 0, ',' , '.' ); + $budgetten->totaal = number_format( $sombasisperuitgavetype[0]->som + $somextraperuitgavetype[0]->som, 0, ',' , '.' ); + $budgetten->basisverschil = number_format($sombasisperuitgavetype[0]->budgetsom - $sombasisperuitgavetype[0]->som, 0, ',' , '.' ); + $budgetten->extraverschil = number_format($somextraperuitgavetype[0]->budgetsom- $somextraperuitgavetype[0]->som, 0, ',' , '.' ); + $budgetten->totaalverschil = number_format($sombasisperuitgavetype[0]->budgetsom + $somextraperuitgavetype[0]->budgetsom - $sombasisperuitgavetype[0]->som -$somextraperuitgavetype[0]->som, 0, ',' , '.' ); $budgetten->basisbudgetpct = number_format($sombudgetpct, 2,',', '.'); -// $budgetten->basisgebudgetpct = number_format($somgebudgetpct, 2,',', '.'); - $budgetten->basisbedragpct = number_format($sombedragpct, 2,',', '.'); -// $budgetten->basisbedragbudgetpct = number_format($sombedragbudgetpct, 2,',', '.'); - - $budgetten->extrabudgetpct = number_format($sombudgetpctex, 2,',', '.'); -// $budgetten->extragebudgetpct = number_format($somgebudgetpctex, 2,',', '.'); - $budgetten->extrabedragpct = number_format($sombedragpctex, 2,',', '.'); -// $budgetten->extrabedragbudgetpct = number_format($sombedragbudgetpctex, 2,',', '.'); - - $bedrag = $budgetten->totaal > 0 ? ($totbesteed/$budgetten->totaal) *100: 0; - $budgetten->totbedragbudgetkaal = $bedrag; - $budgetten->totbedragbudgetpct = number_format($bedrag, 2, ',', '.'); - $budgetten->totbedragpct = $totbesteed > 0 ? '100,00': 0; - $bedrag2 = $budgetten->totaal > 0 ?($totgebudgeteerd/$budgetten->totaal)*100 : 0; - $budgetten->totbudgetpct = number_format($bedrag2, 2, ',', '.'); - + $budgetten->basisbedragpct = number_format($sombedragpct, 1,',', '.'); + $budgetten->extrabudgetpct = number_format($sombudgetpctex, 1,',', '.'); + $budgetten->extrabedragpct = number_format($sombedragpctex, 1,',', '.'); + $budgetten->totbedragpct = number_format(($sombedragpctex + $sombedragpct)/2, 1, ',', '.' ); + $budgetten->totbudgetpct = number_format(($sombudgetpct + $sombudgetpctex)/2, 1, ',', '.'); +// // todo // zorg dat alle getallen geformateerd zijn met een duizendtalscheidingsteken @@ -215,14 +221,17 @@ class Monfin2overzicht extends MY_Controller{ $budgetten->basis = number_format($budgetten->basis , 0 , ',' , '.'); $budgetten->extra = number_format($budgetten->extra, 0 , ',' , '.'); - foreach($sombasisperuitgavetype as $sompertype){ + foreach($sombasisperuitgavetype as $index => $sompertype){ $sompertype->som = number_format($sompertype->som,0, ',' , '.' ); $sompertype->budgetsom = number_format($sompertype->budgetsom,0, ',' , '.' ); + if($index == 0) $sompertype->budgetrestant = number_format($sompertype->budgetrestant,0, ',' , '.' ); } foreach($somextraperuitgavetype as $sompertype){ $sompertype->som = number_format($sompertype->som,0, ',' , '.' ); $sompertype->budgetsom = number_format($sompertype->budgetsom,0, ',' , '.' ); + if($index == 0) $sompertype->budgetrestant = number_format($sompertype->budgetrestant,0, ',' , '.' ); + } foreach($totsomperuitgavetype as $sompertype){ @@ -406,13 +415,12 @@ class Monfin2overzicht extends MY_Controller{ $somasarray[$index ]->budgetsom = round($sombasis[$uitgavetype->code]->budgetsom,0); if($index != 0) { $regelsom += $somasarray[$index]->som; - $regelsom2 += $somasarray[$index ]->budgetsom; } $index += 1; }; $somasarray[0]->som = $regelsom; - $somasarray[0]->budgetrestant = $somasarray[0]->budgetsom - $regelsom2; + $somasarray[0]->budgetrestant = $somasarray[0]->budgetsom - $regelsom; return $somasarray; } @@ -426,14 +434,18 @@ class Monfin2overzicht extends MY_Controller{ $subtot->extra =0; $subtot->som =0; $subtot->budget =0; + $subtot->gebudget = 0; $subtot->verschil =0; + $subtot->verschilGeb =0; $grandtot = new stdClass; $grandtot->basis =0; $grandtot->extra =0; $grandtot->som =0; $grandtot->budget =0; + $grandtot->gebudget =0; $grandtot->verschil =0; + $grandtot->verschilGeb =0; $targetorg = $this->Organisaties_model->get_record_by_id($targetorgid); $targetorg->bestemmingen = $this->get_bestuur_bestemmingen($targetorgid, $kalenderjaarnr); @@ -457,19 +469,28 @@ class Monfin2overzicht extends MY_Controller{ $others[$index]->naam = $organisatie->brin.'-'.$organisatie->naamkort; $others[$index]->id = $organisatie->id; $others[$index]->budget = $this->get_budgetten_inclusief($orgids, $kalenderjaarnr); + $others[$index]->gebudget = $this->Finbestemmingen_model->get_gebudgeteerd_totbedrag_over_orgs($orgids, $kalenderjaarnr); + $others[$index]->gebudgetForm = number_format($others[$index]->gebudget,0 , ',' , '.'); $others[$index]->bestemmingen = $this->get_bestemmingen_inclusief($orgids, $kalenderjaarnr); $others[$index]->verschil = $others[$index]->budget->totaal - $others[$index]->bestemmingen->som; + $others[$index]->verschilGeb = $others[$index]->gebudget - $others[$index]->bestemmingen->som; $others[$index]->formVerschil = number_format($others[$index]->verschil, 0 ,',' , '.' ); + $others[$index]->verschilGebForm = number_format($others[$index]->verschilGeb,0 , ',' , '.'); + $subtot->basis += $others[$index]->bestemmingen->basis; $subtot->extra += $others[$index]->bestemmingen->extra; $subtot->som += $others[$index]->bestemmingen->som; $subtot->budget += $others[$index]->budget->totaal; + $subtot->gebudget += $others[$index]->gebudget; $subtot->verschil += $others[$index]->verschil; + $subtot->verschilGeb += $others[$index]->verschilGeb; $grandtot->basis += $others[$index]->bestemmingen->basis; $grandtot->extra += $others[$index]->bestemmingen->extra; $grandtot->som += $others[$index]->bestemmingen->som; $grandtot->budget += $others[$index]->budget->totaal; + $grandtot->gebudget += $others[$index]->gebudget; $grandtot->verschil += $others[$index]->verschil; + $grandtot->verschilGeb += $others[$index]->verschilGeb; $index += 1; } } @@ -482,13 +503,17 @@ class Monfin2overzicht extends MY_Controller{ $subtot->extra = number_format($subtot->extra,0 , ',' , '.'); $subtot->som = number_format($subtot->som,0 , ',' , '.'); $subtot->budget = number_format($subtot->budget,0 , ',' , '.'); + $subtot->gebudget = number_format($subtot->gebudget,0 , ',' , '.'); $subtot->verschil = number_format($subtot->verschil,0 , ',' , '.'); + $subtot->verschilGeb = number_format($subtot->verschilGeb,0 , ',' , '.'); $grandtot->basis = number_format($grandtot->basis,0 , ',' , '.'); $grandtot->extra = number_format($grandtot->extra,0 , ',' , '.'); $grandtot->som = number_format($grandtot->som,0 , ',' , '.'); $grandtot->budget = number_format($grandtot->budget,0 , ',' , '.'); + $grandtot->gebudget = number_format($grandtot->gebudget,0 , ',' , '.'); $grandtot->verschil = number_format($grandtot->verschil,0 , ',' , '.'); + $grandtot->verschilGeb = number_format($grandtot->verschilGeb,0 , ',' , '.'); // $result = $this->get_orgs_bestemmingen($orgids, $kalenderjaarnr); echo json_encode(['targetorg' =>$targetorg, @@ -522,6 +547,9 @@ class Monfin2overzicht extends MY_Controller{ return $budgetten; } + + + private function getorgids($orgid){ $organisaties = array(); $level2 = array(); diff --git a/application/core/MY_Controller.php b/application/core/MY_Controller.php index b616505..0ecd1aa 100644 --- a/application/core/MY_Controller.php +++ b/application/core/MY_Controller.php @@ -93,7 +93,11 @@ class MY_Controller extends CI_Controller{ // public $version = '1.20.16';// optie niet van toepassing in lijst type 4 nergens meetellen // public $version = '1.20.17';// verversen bestemmingen ging niet goed // public $version = '1.20.21';// tussenstand vormgeving ijkpunten - public $version = '1.20.22';// tussenstand vormgeving ijkpunten +// public $version = '1.20.23';// bugetsom gebudgeteerde bedragen in plaats van budget in totaal +// public $version = '1.20.24';// foutje in afvangen te vroeg aanroepen jaarbudget in callback + public $version = '1.20.25';//gebudgetterde bedragen ipv toegekende budgtten in overzicht monfin, analoog aan bestemmingen + + public $partituurid; diff --git a/application/models/monfin2/Finbestemmingen_model.php b/application/models/monfin2/Finbestemmingen_model.php index 27bd0cb..0a254c8 100644 --- a/application/models/monfin2/Finbestemmingen_model.php +++ b/application/models/monfin2/Finbestemmingen_model.php @@ -233,6 +233,21 @@ class Finbestemmingen_model extends MY_Model{ return $row; } + function get_gebudgeteerd_totbedrag_over_orgs($orglist, $jaarnr){ + $this->sql = " SELECT FORMAT(sum(B.budget) / 100,2) as budget + FROM finbestemmingen B + WHERE B.organisatie_id in ({$orglist}) + AND B.kalenderjaar = {$jaarnr } + AND B.uitgavetype = 'TOTAAL' "; + $row= $this->get_query_row(); + if ($row) $row->budget = str_replace(',' , '' , $row->budget); + return $row->budget; + + + + } + + function getTotaalSchoolBestedingen($orgid, $jaarnr){ $this->sql = "SELECT SUM(bedrag) AS totaal FROM finbestemmingen diff --git a/application/models/monpas/Toewijzingen_model.php b/application/models/monpas/Toewijzingen_model.php index 13c5649..ce13641 100644 --- a/application/models/monpas/Toewijzingen_model.php +++ b/application/models/monpas/Toewijzingen_model.php @@ -32,7 +32,8 @@ class Toewijzingen_model extends MY_Model{ $this->sql = " SELECT id, round(sum(basis) /100) as basis, round(sum(extra) /100 ) as extra, - round(sum(basis + extra) /100) as totaal + round(sum(basis + extra) /100) as totaal, + kalenderjaarnr FROM tb_toewijzingen WHERE orgid in ({$orgids}) AND kalenderjaarnr = {$jaarnr} diff --git a/application/views/monpas/pages/monfin/overzicht.php b/application/views/monpas/pages/monfin/overzicht.php index a2363c3..9a84a66 100644 --- a/application/views/monpas/pages/monfin/overzicht.php +++ b/application/views/monpas/pages/monfin/overzicht.php @@ -133,7 +133,7 @@