budgetteren in monfin

This commit is contained in:
2023-03-24 15:00:04 +01:00
parent d0b8914462
commit 4173dd2dc5
11 changed files with 1647 additions and 432 deletions
@@ -10,7 +10,9 @@ class Finbestemmingen_model extends MY_Model{
function __construct(){
parent::__construct();
$models = array('shared/Organisaties_model',
"monfin2/Finuitgavetypes_model");
"monfin2/Finuitgavetypes_model"
);
$this->load->model($models);
}
@@ -61,7 +63,7 @@ class Finbestemmingen_model extends MY_Model{
if ($uitgavetypes){
foreach($uitgavetypes as $uitgavetype){
$subsoort->uitgavetypes[] = $this->get_bedrag_per_type($orgID, $jaarnr,$subsoort->subsoortID,$uitgavetype->code);
}
}
}
}
}// if subsoorten
@@ -87,7 +89,8 @@ class Finbestemmingen_model extends MY_Model{
// haal per uitgavetypes de bedragen op
if ($uitgavetypes){
foreach($uitgavetypes as $uitgavetype){
$subsoort->uitgavetypes[] = $this->get_bedrag_per_type_over_orgs($orglist, $jaarnr,$subsoort->subsoortID,$uitgavetype->code);
$result = $this->get_bedrag_per_type_over_orgs($orglist, $jaarnr,$subsoort->subsoortID,$uitgavetype->code);
$subsoort->uitgavetypes[] = $result;
}
}
}
@@ -121,7 +124,7 @@ class Finbestemmingen_model extends MY_Model{
// }// if subsoorten
// }
// }// if soorten
// return $soorten;
// return $soorten;
// }
function setSomSubsoort($orgid, $jaarnr, $categorie){
@@ -164,6 +167,7 @@ class Finbestemmingen_model extends MY_Model{
function get_bedrag_per_type($orgid, $jaarnr,$subsoortID, $uitgavetype){
$this->sql = "SELECT id,
FORMAT(bedrag / 100,2) as bedrag,
FORMAT(budget / 100,2) as budget,
uitgavetype as code
FROM finbestemmingen
WHERE organisatie_id = {$orgid}
@@ -176,27 +180,39 @@ class Finbestemmingen_model extends MY_Model{
"kalenderjaar" =>$jaarnr,
"subsoort_id" =>$subsoortID,
"uitgavetype" =>$uitgavetype,
"bedrag" =>0];
"bedrag" =>0,
"budget" =>0];
$this->insert_record($data);
$row = $this->get_query_row();
}
if ($row) $row->bedrag = str_replace(',' , '' , $row->bedrag);
if ($row) {
$row->bedrag = str_replace(',' , '' , $row->bedrag);
$row->budget = str_replace(',' , '' , $row->budget);
}
return $row;
}
function get_bedrag_per_type_over_orgs($orglist, $jaarnr,$subsoortID, $uitgavetype){
$this->sql = "SELECT id,
FORMAT(sum(bedrag) / 100,2) as bedrag,
FORMAT(budget / 100,2) as budget,
uitgavetype as code
FROM finbestemmingen
WHERE organisatie_id in ({$orglist})
AND kalenderjaar = {$jaarnr }
AND subsoort_id = {$subsoortID}
AND uitgavetype = '{$uitgavetype}' ";
$row= $this->get_query_row();
$row= $this->get_query_row();
if ($row) $row->bedrag = str_replace(',' , '' , $row->bedrag);
if ($row) $row->budget = str_replace(',' , '' , $row->budget);
return $row;
}
@@ -245,7 +261,8 @@ class Finbestemmingen_model extends MY_Model{
return $this->get_query_row('bedrag');
}
function get_pms($orgids, $kalenderjaarnr){
$this->sql = " SELECT round(sum(bedrag/100) ) AS bedrag,
$this->sql = " SELECT round(sum(FB.bedrag/100) ) AS bedrag,
round(sum(FB.budget/100)) AS budget,
uitgavetype,
FS.categorie,
FB.organisatie_id