budgetteren in monfin
This commit is contained in:
@@ -7,30 +7,80 @@ ls.initBestemmingenModel = function(){
|
||||
this.naam = p.naam;
|
||||
}
|
||||
|
||||
function fAddBasissoort(k){
|
||||
function fAddBasissoort(j,k, budget, totbudget, bedrag ){
|
||||
|
||||
|
||||
var dit = this;
|
||||
this.soortID = k.soortID
|
||||
this.naam = k.naam
|
||||
this.subsoorten = ko.observableArray([]);
|
||||
if (k.subsoorten){
|
||||
$.each(k.subsoorten, function(a,b){
|
||||
dit.subsoorten.push(new fAddSubsoort(b, k.categorie));
|
||||
dit.subsoorten.push(new fAddSubsoort(a, b, budget, totbudget, bedrag, k.categorie));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
function fAddSubsoort(p,categorie){
|
||||
var dit = dit;
|
||||
this.subsoortID = p.subsoortID;
|
||||
this.naam = p.naam;
|
||||
function fAddSubsoort(a,b,gebudget, totbudget, totbedrag, categorie){
|
||||
var dit = this;
|
||||
var bedrag = 0;
|
||||
var budget = 0;
|
||||
var uitgaven = 0;
|
||||
var budgettot = 0;
|
||||
var bedragtot = 0;
|
||||
var centbudget = 0;
|
||||
var budgettot2 = 0;
|
||||
var centbudget2 = 0;
|
||||
this.subsoortID = b.subsoortID;
|
||||
this.naam = b.naam;
|
||||
this.categorie = categorie
|
||||
this.uitgavetypes = ko.observableArray()
|
||||
var dit = this;
|
||||
if (p.uitgavetypes){
|
||||
$.each(p.uitgavetypes, function(i,k){
|
||||
this.uitgavetypes = ko.observableArray();
|
||||
this.totaal = ko.observable(0);
|
||||
this.formtotaal = ko.observable('');
|
||||
this.procent = ko.observable(0);
|
||||
this.subbudget = ko.observable(0);
|
||||
this.subbudgetform = ko.observable('');
|
||||
this.budgetprocent = ko.observable(0);
|
||||
this.gebudgetprocent = ko.observable(0);
|
||||
if (b.uitgavetypes) {
|
||||
|
||||
$.each(b.uitgavetypes, function (i, k) {
|
||||
bedrag = Number(bedrag) + Number(k.bedrag);
|
||||
budget = Number(budget) + Number(k.budget);
|
||||
dit.uitgavetypes.push(new fAddUitgavetype(k));
|
||||
});
|
||||
dit.totaal(bedrag);
|
||||
dit.formtotaal(parseFloat(bedrag) === 0 ? '' : parseFloat(bedrag).format(2, 3, '.', ','));
|
||||
dit.subbudget(budget);
|
||||
dit.subbudgetform(parseFloat(budget) === 0 ? '' : parseFloat(budget).format(2, 3, '.', ','));
|
||||
|
||||
centbudget = dit.subbudgetform();
|
||||
centbudget = centbudget.replace(/[.| ,]/g, '');
|
||||
|
||||
if (totbudget) {
|
||||
budgettot = totbudget.replace(/[.| ,]/g, '');
|
||||
var budgetpct = ((Number(centbudget) / Number(budgettot)) * 100).toFixed(1)
|
||||
budgetpct = budgetpct.replace('.', ',')
|
||||
dit.budgetprocent(budgettot > 0 ? budgetpct + '%' : '');
|
||||
}
|
||||
|
||||
if (gebudget) {
|
||||
budgettot2 = gebudget.replace(/[.| ,]/g, '');
|
||||
var budgetpct2 = ((Number(centbudget) / Number(budgettot2)) * 100).toFixed(1)
|
||||
budgetpct2 = budgetpct2.replace('.', ',')
|
||||
dit.gebudgetprocent(budgettot2 > 0 ? budgetpct2 + '%' : '')
|
||||
}
|
||||
|
||||
|
||||
if(totbedrag) {
|
||||
bedragtot = totbedrag.replace(/[.| ,]/g, '');
|
||||
uitgaven = dit.formtotaal();
|
||||
uitgaven = uitgaven.replace(/[.| ,]/g, '');
|
||||
uitgaven = ((Number(uitgaven) / Number(bedragtot)) * 100).toFixed(1)
|
||||
dit.procent(uitgaven > 0 ? uitgaven + '%' : '')
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function fAddUitgavetype(k){
|
||||
@@ -39,6 +89,10 @@ ls.initBestemmingenModel = function(){
|
||||
this.bedrag = ko.observable(k.bedrag);
|
||||
this.formatted = ko.observable(parseFloat(k.bedrag).format(2,3,'.',','));
|
||||
if (parseFloat(k.bedrag) <= 0) this.formatted('');
|
||||
this.budget = ko.observable(k.budget);
|
||||
this.budgetFormat = ko.observable(parseFloat(k.budget).format(2,3,'.',','));
|
||||
if (parseFloat(k.budget) <= 0) this.budgetFormat('');
|
||||
this.kleur =ko.observable('#000000');
|
||||
}
|
||||
|
||||
|
||||
@@ -51,9 +105,8 @@ ls.initBestemmingenModel = function(){
|
||||
kalenderjaren : ko.observableArray([]),
|
||||
selectedKalenderjaar : ko.observable(),
|
||||
jaartoewijzing : ko.observable(),
|
||||
targetjaar : ko.observable(2017), //het jaar waarin met moet werken
|
||||
targetjaar : ko.observable(2017), //het jaar waarin met moet werken
|
||||
uitgavetypes : ko.observableArray(),
|
||||
|
||||
basissoorten : ko.observableArray(),
|
||||
extrasoorten : ko.observableArray(),
|
||||
|
||||
@@ -64,7 +117,11 @@ ls.initBestemmingenModel = function(){
|
||||
extrageopend : ko.observable(false),
|
||||
|
||||
totaalextra : ko.observable(),
|
||||
totaalbasis : ko.observable(),
|
||||
totaalbasis : ko.observable(0),
|
||||
gebudgetbasis : ko.observable(0),
|
||||
budgetUnformatted : ko.observable(0),
|
||||
gebudgetextra : ko. observable(),
|
||||
|
||||
|
||||
initBindings :function(){
|
||||
var self = ls.BestemmingenModel;
|
||||
@@ -101,57 +158,271 @@ ls.initBestemmingenModel = function(){
|
||||
fGetBestemmingen: function(){
|
||||
var self = ls.BestemmingenModel;
|
||||
if (!self.selectedKalenderjaar()) return;
|
||||
self.basissoorten.removeAll();
|
||||
self.extrasoorten.removeAll();
|
||||
var sd ={jaarnr:self.selectedKalenderjaar().jaarnr}
|
||||
$.post("index.php/monfin2/bestemmingen/getBestemmingen", sd, function(data){
|
||||
if (data.jaartoewijzing){
|
||||
if (data.jaartoewijzing){
|
||||
self.jaartoewijzing(data.jaartoewijzing);
|
||||
}
|
||||
else {self.jaartoewijzing(false);}
|
||||
self.jaarclosed(data.jaarclosed);
|
||||
|
||||
self.basissoorten.removeAll();
|
||||
if (data.basisbestemmingen){
|
||||
$.each(data.basisbestemmingen,function(j,k){
|
||||
self.basissoorten.push(new fAddBasissoort(k));
|
||||
});
|
||||
}
|
||||
self.extrasoorten.removeAll();
|
||||
if (data.extrabestemmingen){
|
||||
$.each(data.extrabestemmingen,function(j,k){
|
||||
self.extrasoorten.push(new fAddBasissoort(k));
|
||||
});
|
||||
}
|
||||
|
||||
self.opmerking(data.opmerking);
|
||||
var budget = 0;
|
||||
var bedrag = 0;
|
||||
if (data.basisbestemmingen){
|
||||
$.each(data.basisbestemmingen, function(i, b){
|
||||
$.each(b.subsoorten, function(x, s){
|
||||
$.each(s.uitgavetypes, function(z, t){
|
||||
budget += Number(t.budget);
|
||||
bedrag += Number(t.bedrag);
|
||||
} )
|
||||
} )
|
||||
})
|
||||
budget = self.fSetTotalValue(budget);
|
||||
self.gebudgetbasis(budget);
|
||||
bedrag = self.fSetTotalValue(bedrag);
|
||||
self.totaalbasis(bedrag);
|
||||
var totbudget = self.jaartoewijzing().basis;
|
||||
$.each(data.basisbestemmingen,function(j,k){
|
||||
self.basissoorten.push(new fAddBasissoort(j,k, budget, totbudget, bedrag));
|
||||
});
|
||||
}
|
||||
budget = 0;
|
||||
bedrag = 0;
|
||||
totbudget = 0;
|
||||
if (data.extrabestemmingen){
|
||||
$.each(data.extrabestemmingen, function(i, b){
|
||||
$.each(b.subsoorten, function(x, s){
|
||||
$.each(s.uitgavetypes, function(z, t){
|
||||
budget += Number(t.budget);
|
||||
bedrag += Number(t.bedrag);
|
||||
} )
|
||||
} )
|
||||
})
|
||||
budget = self.fSetTotalValue(budget);
|
||||
self.gebudgetextra(budget);
|
||||
bedrag = self.fSetTotalValue(bedrag);
|
||||
self.totaalextra(bedrag);
|
||||
totbudget = self.jaartoewijzing().extra;
|
||||
$.each(data.extrabestemmingen,function(j,k){
|
||||
self.extrasoorten.push(new fAddBasissoort(j, k, budget, totbudget, bedrag));
|
||||
});
|
||||
}
|
||||
|
||||
self.opmerking(data.opmerking);
|
||||
|
||||
},'json');
|
||||
},
|
||||
|
||||
fSaveBedrag:function(){
|
||||
fSetTotalValue: function(value){
|
||||
var self = ls.BestemmingenModel;
|
||||
var bedrag = value;
|
||||
bedrag = parseFloat(bedrag).format(2, 3, '.', ',');
|
||||
|
||||
return bedrag;
|
||||
},
|
||||
|
||||
|
||||
fSaveBedrag:function(subsoortid, soort){
|
||||
var self = ls.BestemmingenModel;
|
||||
if (self.jaarclosed()) return;
|
||||
var dit = this;
|
||||
var dit = this;
|
||||
var uitgave = 0;
|
||||
var formuitgave = 0;
|
||||
var totaaluitgaven = 0;
|
||||
var totaaluitgavenR = 0;
|
||||
// if( Number(dit.budget()) <= 0){
|
||||
// apprise("Vul eerst een budget in.")
|
||||
// return;
|
||||
// }
|
||||
var invoer = dit.formatted();
|
||||
if ( ! invoer) invoer = '0'
|
||||
invoer = invoer.split('.').join('');
|
||||
invoer= invoer.replace(',' , '.');
|
||||
if (isNaN( parseFloat(invoer) ) ) {
|
||||
return;
|
||||
}
|
||||
else {
|
||||
invoer=parseFloat(invoer)
|
||||
}
|
||||
|
||||
dit.formatted(parseFloat(invoer).format(2,3,'.',','));
|
||||
if (invoer <= 0) dit.formatted('');
|
||||
dit.bedrag(invoer);
|
||||
$.each(soort === 'BASIS' ? self.basissoorten() : self.extrasoorten(), function(i, b){
|
||||
$.each(b.subsoorten(), function(x, s){
|
||||
if (s.uitgavetypes()) {
|
||||
$.each(s.uitgavetypes(), function (i, k) {
|
||||
totaaluitgaven = Number(totaaluitgaven) + Number(k.bedrag());
|
||||
});
|
||||
if(s.subsoortID === subsoortid) {
|
||||
$.each(s.uitgavetypes(), function (i, k) {
|
||||
uitgave = Number(uitgave) + Number(k.bedrag());
|
||||
});
|
||||
s.totaal(uitgave);
|
||||
s.formtotaal(parseFloat(uitgave) === 0 ? '' : parseFloat(uitgave).format(2, 3, '.', ','));
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
})
|
||||
})
|
||||
totaaluitgaven = totaaluitgaven.format(2, 3, '.', ',');
|
||||
totaaluitgavenR = totaaluitgaven.replace(/[.| ,]/g, '');
|
||||
|
||||
$.each(soort === 'BASIS' ? self.basissoorten() : self.extrasoorten(), function(i, b){
|
||||
$.each(b.subsoorten(), function(x, s){
|
||||
if (s.uitgavetypes()) {
|
||||
let procent = 0;
|
||||
formuitgave = s.formtotaal();
|
||||
formuitgave = formuitgave.replace(/[.| ,]/g, '');
|
||||
if (Number(totaaluitgavenR) > 0) procent = ((Number(formuitgave) / Number(totaaluitgavenR)) * 100).toFixed(1)
|
||||
else formuitgave = 0;
|
||||
s.procent(Number(totaaluitgavenR) > 0 && Number(procent) > 0 ? procent + '%' : '')
|
||||
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
soort === 'BASIS' ? self.totaalbasis(totaaluitgaven): self.totaalextra(totaaluitgaven) ;
|
||||
|
||||
invoer = Math.round(invoer * 100) ;
|
||||
var sd = {'id': dit.finbestemmingID,
|
||||
'bedrag' : invoer
|
||||
}
|
||||
$.post("index.php/monfin2/bestemmingen/updatebedrag", sd);
|
||||
},
|
||||
|
||||
fSaveBudget:function( subsoortid, soort ){
|
||||
var self = ls.BestemmingenModel;
|
||||
if (self.jaarclosed()) return;
|
||||
var dit = this;
|
||||
var budgetoud = dit.budget();
|
||||
var budgetoudForm = dit.budget() > 0 ? parseFloat(budgetoud).format(2, 3, '.', ',') : '';
|
||||
var subbudget = 0;
|
||||
var subbudgetoud = 0;
|
||||
var subbudgetForm = '';
|
||||
var subbudgetFormoud = '';
|
||||
var totaalgebudget = 0;
|
||||
var totaalgebudgetR = 0;
|
||||
var totaalgebudgetRoud = 0;
|
||||
var totaalgebudgetpct = '';
|
||||
var totaalgebudgetpctoud = '';
|
||||
var subbudgetpct = '';
|
||||
var subbudgetpctoud = '';
|
||||
|
||||
|
||||
var totaalbudget = (soort === 'BASIS' ? self.jaartoewijzing().basis.replace(/[.| ,]/g, '') : self.jaartoewijzing().extra.replace(/[.| ,]/g, ''));
|
||||
|
||||
// update budget en budgetformat
|
||||
var invoer = dit.budgetFormat();
|
||||
if ( ! invoer) invoer = '0'
|
||||
invoer = invoer.split('.').join('');
|
||||
invoer= invoer.replace(',' , '.');
|
||||
if (isNaN( parseFloat(invoer) ) ) invoer =0;
|
||||
else invoer = parseFloat(invoer)
|
||||
|
||||
dit.budgetFormat(parseFloat(invoer).format(2, 3, '.', ','));
|
||||
if (invoer <= 0){
|
||||
dit.budgetFormat(budgetoudForm);
|
||||
invoer = 0;
|
||||
return;
|
||||
}
|
||||
dit.budget(invoer);
|
||||
|
||||
// update subtotalen
|
||||
$.each(soort === 'BASIS' ? self.basissoorten(): self.extrasoorten(), function(i, b){
|
||||
$.each(b.subsoorten(), function(x, s){
|
||||
if (s.uitgavetypes()) {
|
||||
if (s.subsoortID === subsoortid) {
|
||||
subbudgetoud = s.subbudget();
|
||||
subbudgetFormoud= s.subbudgetform();
|
||||
subbudgetpctoud = s.budgetprocent();
|
||||
totaalgebudgetpctoud = s.gebudgetprocent();
|
||||
$.each(s.uitgavetypes(), function (z, k) {
|
||||
subbudget = Number(subbudget) + Number(k.budget());
|
||||
});
|
||||
s.subbudget(subbudget);
|
||||
if (parseFloat(subbudget) > 0) {
|
||||
subbudgetForm = parseFloat(subbudget).format(2, 3, '.', ',');
|
||||
}
|
||||
s.subbudgetform(Number(subbudget) > 0 ? subbudgetForm : '');
|
||||
|
||||
if (Number(subbudget) > 0) {
|
||||
subbudget = subbudgetForm.replace(/[.| ,]/g, '');
|
||||
}
|
||||
|
||||
subbudgetpct = (Number(totaalbudget) > 0 ? ((Number(subbudget) / Number(totaalbudget)) * 100).toFixed(1) : 0);
|
||||
subbudgetpct = subbudgetpct.replace('.', ',');
|
||||
s.budgetprocent(Number(totaalbudget) > 0 ? subbudgetpct + '%' : '')
|
||||
|
||||
}
|
||||
$.each(s.uitgavetypes(), function (z, k) {
|
||||
totaalgebudget = Number(totaalgebudget) + Number(k.budget());
|
||||
});
|
||||
}
|
||||
|
||||
})
|
||||
})
|
||||
|
||||
if (parseFloat(totaalgebudget) > 0) {
|
||||
totaalgebudgetR = parseFloat(totaalgebudget).format(2, 3, '.', ',');
|
||||
totaalgebudgetR = totaalgebudgetR.replace(/[.| ,]/g, '');
|
||||
|
||||
|
||||
|
||||
}
|
||||
totaalgebudgetpct = (Number(totaalgebudgetR) > 0 ? ((Number(subbudget) / Number(totaalgebudgetR)) * 100).toFixed(1) : 0);
|
||||
totaalgebudgetpct = totaalgebudgetpct.replace('.', ',');
|
||||
|
||||
// update procenten
|
||||
$.each(soort === 'BASIS' ? self.basissoorten(): self.extrasoorten(), function(i, b){
|
||||
$.each(b.subsoorten(), function(x, s){
|
||||
if (s.uitgavetypes()) {
|
||||
if (s.subsoortID === subsoortid) {
|
||||
s.gebudgetprocent(totaalgebudgetpct + '%' );
|
||||
}
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
if(Number(totaalgebudget) > Number(totaalbudget) ){
|
||||
dit.budgetFormat(budgetoudForm);
|
||||
dit.budget(budgetoud);
|
||||
$.each(soort === 'BASIS' ? self.basissoorten(): self.extrasoorten(), function(i, b){
|
||||
$.each(b.subsoorten(), function(x, s){
|
||||
if (s.uitgavetypes()) {
|
||||
if (s.subsoortID === subsoortid) {
|
||||
s.subbudget(subbudgetoud);
|
||||
s.subbudgetform(subbudgetFormoud);
|
||||
s.budgetprocent(subbudgetpctoud);
|
||||
s.gebudgetprocent(totaalgebudgetpctoud);
|
||||
}
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
|
||||
|
||||
//hier alle oude waarden invullen
|
||||
apprise("Het budget overschrijdt het totaalbudget")
|
||||
return;
|
||||
}
|
||||
else {
|
||||
soort=== 'BASIS' ? self.gebudgetbasis(totaalgebudget): self.gebudgetextra(totaalbudget);
|
||||
|
||||
invoer = Math.round(invoer * 100);
|
||||
var sd = {
|
||||
'id' : dit.finbestemmingID,
|
||||
'budget': invoer,
|
||||
|
||||
invoer = dit.formatted();
|
||||
if (invoer <= '' || ! invoer) invoer = '0'
|
||||
invoer = invoer.split('.').join('');
|
||||
invoer= invoer.replace(',' , '.');
|
||||
|
||||
if (isNaN( parseFloat(invoer) ) ) {
|
||||
invoer =0;
|
||||
}
|
||||
else {
|
||||
invoer=parseFloat(invoer)
|
||||
}
|
||||
|
||||
dit.formatted(parseFloat(invoer).format(2,3,'.',','));
|
||||
if (invoer <= 0) dit.formatted('');
|
||||
dit.bedrag(invoer);
|
||||
$.post("index.php/monfin2/bestemmingen/updatebudget", sd);
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
invoer = Math.round(invoer * 100) ;
|
||||
var sd = {id : dit.finbestemmingID,
|
||||
bedrag : invoer}
|
||||
$.post("index.php/monfin2/bestemmingen/updatebedrag", sd);
|
||||
},
|
||||
|
||||
fToggle: function(wat){
|
||||
switch(wat){
|
||||
@@ -160,6 +431,13 @@ ls.initBestemmingenModel = function(){
|
||||
};// switch
|
||||
},
|
||||
|
||||
fToelichting: function(){
|
||||
|
||||
apprise('<p>In de regel <span style="font-style:italic; ">budget</span> geeft het eerste getal de som van het budget weer als percentage van het toaal gebudgetteerde bedrag.</p>' +
|
||||
'<p>Het tweede getal is de som ban het budget als percentage van het totaal toegewezen budget.</p>' +
|
||||
'<p>In de regel <span style="font-style:italic; ">uitgave</span> wordt de som van de uitgave weergegeven als percentage van de totale uitgaven.</p>')
|
||||
},
|
||||
|
||||
fSaveOpmerking: function(){
|
||||
var self= ls.BestemmingenModel;
|
||||
if (self.jaarclosed()) return;
|
||||
@@ -175,51 +453,52 @@ ls.initBestemmingenModel = function(){
|
||||
}
|
||||
} ; // definition van model
|
||||
|
||||
ls.BestemmingenModel.totaalbasis = ko.computed(function(){
|
||||
var som =0;
|
||||
var invoer = 0;
|
||||
if (this.basissoorten()) {
|
||||
$.each(this.basissoorten(), function(i,p){
|
||||
if (p.subsoorten()) {
|
||||
$.each(p.subsoorten(), function(a,b){
|
||||
$.each(b.uitgavetypes(), function(o,s){
|
||||
invoer=String(s.bedrag());
|
||||
invoer= invoer.replace(',' , '');
|
||||
if (! isNaN(invoer) ) {
|
||||
invoer=parseFloat(invoer)
|
||||
invoer = Math.round(invoer * 100) / 100;
|
||||
som = som + invoer;
|
||||
}
|
||||
}); // each uitgavetypes
|
||||
}); // each subsoorten
|
||||
} // if subsoorten
|
||||
}) // each soorten
|
||||
} // if basissoorten
|
||||
return som.format(2,3,'.',',');
|
||||
},ls.BestemmingenModel);
|
||||
// ls.BestemmingenModel.totaalbasis = ko.computed(function(){
|
||||
// var som =0;
|
||||
// var invoer = 0;
|
||||
// if (this.basissoorten()) {
|
||||
// $.each(this.basissoorten(), function(i,p){
|
||||
// if (p.subsoorten()) {
|
||||
// $.each(p.subsoorten(), function(a,b){
|
||||
// $.each(b.uitgavetypes(), function(o,s){
|
||||
// invoer=String(s.bedrag());
|
||||
// invoer= invoer.replace(',' , '');
|
||||
// if (! isNaN(invoer) ) {
|
||||
// invoer=parseFloat(invoer)
|
||||
// invoer = Math.round(invoer * 100) / 100;
|
||||
// som = som + invoer;
|
||||
// }
|
||||
// }); // each uitgavetypes
|
||||
//
|
||||
// }); // each subsoorten
|
||||
// } // if subsoorten
|
||||
// }) // each soorten
|
||||
// } // if basissoorten
|
||||
// return som.format(2,3,'.',',');
|
||||
// },ls.BestemmingenModel);
|
||||
|
||||
ls.BestemmingenModel.totaalextra = ko.computed(function(){
|
||||
var som =0;
|
||||
var invoer = 0;
|
||||
if (this.extrasoorten()) {
|
||||
$.each(this.extrasoorten(), function(i,p){
|
||||
if (p.subsoorten()) {
|
||||
$.each(p.subsoorten(), function(a,b){
|
||||
$.each(b.uitgavetypes(), function(o,s){
|
||||
invoer=String(s.bedrag());
|
||||
invoer= invoer.replace(',' , '');
|
||||
if (! isNaN(invoer) ) {
|
||||
invoer=parseFloat(invoer)
|
||||
invoer = Math.round(invoer * 100) / 100;
|
||||
som = som + invoer;
|
||||
}
|
||||
}); // each uitgavetypes
|
||||
}); // each subsoorten
|
||||
} // if subsoorten
|
||||
}) // each soorten
|
||||
} // if basissoorten
|
||||
return som.format(2,3,'.',',');
|
||||
},ls.BestemmingenModel);
|
||||
// ls.BestemmingenModel.totaalextra = ko.computed(function(){
|
||||
// var som =0;
|
||||
// var invoer = 0;
|
||||
// if (this.extrasoorten()) {
|
||||
// $.each(this.extrasoorten(), function(i,p){
|
||||
// if (p.subsoorten()) {
|
||||
// $.each(p.subsoorten(), function(a,b){
|
||||
// $.each(b.uitgavetypes(), function(o,s){
|
||||
// invoer=String(s.bedrag());
|
||||
// invoer= invoer.replace(',' , '');
|
||||
// if (! isNaN(invoer) ) {
|
||||
// invoer=parseFloat(invoer)
|
||||
// invoer = Math.round(invoer * 100) / 100;
|
||||
// som = som + invoer;
|
||||
// }
|
||||
// }); // each uitgavetypes
|
||||
// }); // each subsoorten
|
||||
// } // if subsoorten
|
||||
// }) // each soorten
|
||||
// } // if basissoorten
|
||||
// return som.format(2,3,'.',',');
|
||||
// },ls.BestemmingenModel);
|
||||
|
||||
ls.BestemmingenModel.initBindings();
|
||||
}; // else
|
||||
|
||||
@@ -57,21 +57,22 @@ ls.initMonfinOverzicht2Model = function(){
|
||||
subTot : ko.observable(),
|
||||
grandTot : ko.observable(),
|
||||
//schoolbedragen : ko.observableArray([]),
|
||||
schooltotaal : ko.observable(''),
|
||||
kalenderjaren : ko.observableArray(),
|
||||
selectedKalenderjaar : ko.observable(),
|
||||
zelfjanee : ko.observable('1'),
|
||||
schooltotaal : ko.observable(''),
|
||||
kalenderjaren : ko.observableArray(),
|
||||
selectedKalenderjaar : ko.observable(),
|
||||
zelfjanee : ko.observable('1'),
|
||||
opmerking : ko.observable(),
|
||||
|
||||
uitgavetypes : ko.observableArray(),
|
||||
basis : ko.observableArray(),
|
||||
extra : ko.observableArray(),
|
||||
basis : ko.observableArray(),
|
||||
extra : ko.observableArray(),
|
||||
sombasisperuitgavetype : ko.observableArray(),
|
||||
somextraperuitgavetype : ko.observableArray(),
|
||||
somextraperuitgavetype : ko.observableArray(),
|
||||
totsomperuitgavetype : ko.observableArray(),
|
||||
basisgeopend : ko.observable(false),
|
||||
extrageopend : ko.observable(false),
|
||||
budgetten : ko.observableArray(),
|
||||
budgetten : ko.observableArray(),
|
||||
selectedSubsoort : ko.observable(),
|
||||
|
||||
initBindings :function(){
|
||||
var self = ls.MonfinOverzicht2Model;
|
||||
@@ -106,6 +107,7 @@ ls.initMonfinOverzicht2Model = function(){
|
||||
var self = ls.MonfinOverzicht2Model;
|
||||
if (!self.selectedOrg() || !self.selectedKalenderjaar()) return;
|
||||
if (self.selectedOrg().soort == 4) { self.zelfjanee('1');};
|
||||
|
||||
|
||||
if (self.zelfjanee()==1 || self.selectedOrg().soort==4){
|
||||
var sd={orgid : self.selectedOrg().id,
|
||||
@@ -187,6 +189,31 @@ ls.initMonfinOverzicht2Model = function(){
|
||||
case "EXTRA" : self.extrageopend(! self.extrageopend()); break;
|
||||
}
|
||||
},
|
||||
|
||||
fToelichting: function(waarop){
|
||||
var self = ls.MonfinOverzicht2Model;
|
||||
var message = '';
|
||||
switch(waarop){
|
||||
case 'KOSTEN' : message = 'Uitgaven afgerond op hele euros.';
|
||||
break;
|
||||
case 'SOM' : message = 'Totale uitgaven afgerond op hele euros.';
|
||||
break;
|
||||
case '%BUDGET' : message = 'Uitgaven als percentage van het totale toegewezen budget.';
|
||||
break;
|
||||
case '%UITGAVEN' : message = 'Uitgaven als percentage van de totale uitgaven.';
|
||||
break;
|
||||
case 'BUDGET' : message = 'Budget afgerond op hele euros. Klik op i in de regel voor een uitsplitsing van het budget.';
|
||||
break;
|
||||
case '%GEBUDGET': message ='Budget als percentage van het totaal gebudgetteerde bedrag.';
|
||||
break;
|
||||
case '%BUDGET2' : message='Budget als percentage van het totaal toegewezen budget.';
|
||||
break;
|
||||
case 'VERSCHIL' : message = 'Het verschil tussen het toegewezen budget en de uitgaven afgerond op hele euros.';
|
||||
|
||||
}
|
||||
apprise(message);
|
||||
},
|
||||
|
||||
fToggleOrg :function(){
|
||||
this.geopend(!this.geopend());
|
||||
},
|
||||
@@ -195,6 +222,39 @@ ls.initMonfinOverzicht2Model = function(){
|
||||
self.selectedOrg(this);
|
||||
self.fGetBedragen()
|
||||
},
|
||||
fOpenDetails: function(niveau){
|
||||
var self = ls.MonfinOverzicht2Model;
|
||||
self.selectedSubsoort('');
|
||||
switch(niveau){
|
||||
case 'BASIS' : self.selectedSubsoort(
|
||||
{'naam' : 'Basisondersteuning gebudgetteerd',
|
||||
'uitgavetypes' : self.sombasisperuitgavetype()
|
||||
});
|
||||
break;
|
||||
case 'DETAIL': self.selectedSubsoort(this);
|
||||
break;
|
||||
case 'EXTRA': self.selectedSubsoort(
|
||||
{'naam' : 'Extra ondersteuning gebudgetteerd',
|
||||
'uitgavetypes' : self.totsomperuitgavetype()
|
||||
});
|
||||
break;
|
||||
case 'TOTAAL': self.selectedSubsoort(
|
||||
{'naam' : 'Totaal gebudgetteerd',
|
||||
'uitgavetypes' : self.totsomperuitgavetype()
|
||||
});
|
||||
break;
|
||||
}
|
||||
|
||||
$("#modFindetails").modal('show');
|
||||
},
|
||||
|
||||
fShowComment: function(){
|
||||
var self = ls.MonfinOverzicht2Model;
|
||||
apprise('Het eerste getal is het percentage van de gebudgetteerde interventie ten opzichte van het totaal gebedugetteerde bedrag. ' +
|
||||
'Het tweede getal is het percentage van de gebudgetteerde interventie ten opzichte van het toegewezen budget.');
|
||||
},
|
||||
|
||||
|
||||
} ; // definition van model
|
||||
ls.MonfinOverzicht2Model.initBindings();
|
||||
}; // elses
|
||||
|
||||
Reference in New Issue
Block a user