function clsOperativita(objsessione, objgrafici) {
var _me = this;
var _objsessione = objsessione;
var _objgrafici = objgrafici;
/* ------- Calcolo operatività generale --------------------------------------------- */
this.operativita = function() {
var objreturn = new function() {
this.peso_immobiliare = false;
this.peso_immobiliare_prc = 0;
this.investimenti = false;
this.errori_1 = false;
this.errori_2 = false;
this.errori_3 = false;
this.errori_4 = false;
this.coperture_immobili_suggerito_incremento = 0;
this.coperture_immobili_futuri_incremento = 0;
this.coperture_immobili_futuri_costo = 0;
this.coperture_immobili_futuri = 0;
this.coperture_rc_terzi_suggerito_incremento = 0;
this.coperture_rc_terzi_futuri_incremento = 0;
this.coperture_rc_terzi_futuri_costo = 0;
this.coperture_rc_terzi_futuri = 0;
this.comproprieta = false;
this.convivente = false;
this.convivente2 = false;
this.coniuge_1 = false;
this.coniuge_2 = false;
this.eredi_1_0 = false;
this.eredi_1_1 = false;
this.eredi_1_2 = false;
this.eredi_0_1 = false;
this.eredi_0_2 = false;
this.famiglia = false;
this.debiti = false;
this.invalidita = false;
this.invalidita_importo = 0;
this.invalidita_costo = "";
this.premorienza = false;
this.premorienza_importo = 0;
this.premorienza_costo = 0;
this.immobili = false;
this.immobili_importo = 0;
this.immobili_costo = 0;
this.rcterzi = false;
this.rcterzi_importo = 0;
this.rcterzi_costo = 0;
this.invalidita_partner = false;
this.invalidita_partner_importo = 0;
this.invalidita_partner_costo = 0;
this.premorienza_partner = false;
this.premorienza_partner_importo = 0;
this.premorienza_partner_costo = 0;
this.coperture = false;
this.considerazioni_1 = false;
this.considerazioni_2 = false;
this.considerazioni_3 = false;
this.aggiunto_10_anni = 0;
this.risparmiato_10_anni = 0;
this.investimenti = false;
this.invalidita_p_ottimizzata = new function() {
this.ottimizzata = false;
this.incremento_consigliato = 0;
this.percentuale_costo = 0;
this.costo = 0;
this.incremento_attuale = 0;
this.copertura_futura = 0;
}
this.premorienza_p_ottimizzata = new function() {
this.ottimizzata = false;
this.incremento_consigliato = 0;
this.percentuale_costo = 0;
this.costo = 0;
this.incremento_attuale = 0;
this.copertura_futura = 0;
}
this.invalidita_c_ottimizzata = new function() {
this.ottimizzata = false;
this.incremento_consigliato = 0;
this.percentuale_costo = 0;
this.costo = 0;
this.incremento_attuale = 0;
this.copertura_futura = 0;
}
this.premorienza_c_ottimizzata = new function() {
this.ottimizzata = false;
this.incremento_consigliato = 0;
this.percentuale_costo = 0;
this.costo = 0;
this.incremento_attuale = 0;
this.copertura_futura = 0;
}
this.coerenza = new function() {
this.investimenti = false;
this.html = "";
}
this.param_1 = 0;
this.param_2 = 0;
this.param_3 = 0;
this.param_4 = 0;
}
var coniuge = _objsessione.dati.parenti.getconiuge();
var patrimonio_immobiliare = _objsessione.dati.patrimoni_immobiliari.totale(objsessione.anno);
var patrimonio_finanziario = _objsessione.dati.patrimoni_finanziari.totale();
var patrimonio_totale = patrimonio_immobiliare.importo+patrimonio_finanziario;
var patrimonio_finanziario_netto = _objsessione.dati.ottimizzazione.patrimonio_finanziario_netto;
var copertura_attuale = 0;
var incremento_consigliato = 0;
var incremento_attuale = 0;
var riga_visualizzata = false;
var errore_dati = false;
var entrate_lavoro = _objsessione.dati.entrate_lavoro.totaliperperiodo(0,9999);
var numero_figli = _objsessione.dati.parenti.getnumerofigli();
var comproprieta = _objsessione.dati.patrimoni_immobiliari.has_comproprieta();
var objresult = null;
var debiti_finanziari = _objsessione.dati.debiti_finanziari.totale(0);
var debiti_immobiliari = _objsessione.dati.debiti_immobiliari.totale(0);
var parenti = _objSessione.dati.parenti.getdata();
var peso_immobiliare = 0;
if (patrimonio_immobiliare.importo > 0){
peso_immobiliare = Math.round(patrimonio_immobiliare.importo / (patrimonio_immobiliare.importo + patrimonio_finanziario) * 100);
if(peso_immobiliare >= 60){
objreturn.peso_immobiliare = true;
objreturn.peso_immobiliare_prc = peso_immobiliare;
}
}
if (_objsessione.dati.uscite.totaliperperiodo(0,9999)==0) {
objreturn.errori_1 = true;
errore_dati = true;
}
if (entrate_lavoro.totale_personale==0 && _objsessione.eta<_objsessione.dati.profilo.data.pensione_eta) {
objreturn.errori_2 = true;
errore_dati = true;
}
if (_objsessione.dati.patrimoni_finanziari.totale()==0) {
objreturn.errori_3 = true;
errore_dati = true;
}
if (_objsessione.dati.profilo.data.coerenza_interessi_breve==0 &&
_objsessione.dati.profilo.data.coerenza_interessi_medio==0 &&
_objsessione.dati.profilo.data.coerenza_interessi_lungo==0 &&
_objsessione.dati.profilo.data.coerenza_tassonegativo_breve==0) {
objreturn.errori_4 = true;
errore_dati = true;
}
_objsessione.resetMask("#patrimoniale-coperture .masked");
objreturn.invalidita_p_ottimizzata = _me.invalidita("P",null);
if (parenti.length>0) {
objreturn.premorienza_p_ottimizzata = _me.premorienza("P",null);
}
objreturn.invalidita_c_ottimizzata = _me.invalidita("C",coniuge);
objreturn.premorienza_c_ottimizzata = _me.premorienza("C",coniuge);
objreturn.coerenza = _me.coerenza();
if (patrimonio_immobiliare.importo>0) {
incremento_attuale = _objsessione.dati.profilo.data.coperture_immobili_futuri_incremento;
copertura_attuale = _objsessione.dati.profilo.data.coperture_immobili;
incremento_consigliato = patrimonio_immobiliare.costo_ricostruzione - copertura_attuale;
if (incremento_consigliato<0) {
incremento_consigliato=0;
}
objreturn.coperture_immobili_suggerito_incremento = incremento_consigliato;
objreturn.coperture_immobili_futuri_incremento = incremento_consigliato;
objreturn.coperture_immobili_futuri_costo = parseInt(incremento_consigliato/100*0.15);
incremento_attuale = _objsessione.dati.profilo.data.coperture_immobili_futuri_incremento;
objreturn.coperture_immobili_futuri = copertura_attuale + incremento_attuale
}
// copertura rc terzi
incremento_attuale = _objsessione.dati.profilo.data.coperture_rc_terzi_futuri_incremento;
copertura_attuale = _objsessione.dati.profilo.data.coperture_rc_terzi;
incremento_consigliato = 1000000 - copertura_attuale;
if (incremento_consigliato<0) {
incremento_consigliato=0;
}
objreturn.coperture_rc_terzi_suggerito_incremento = incremento_consigliato;
objreturn.coperture_rc_terzi_futuri_incremento = incremento_consigliato;
objreturn.coperture_rc_terzi_futuri_costo = parseInt(100*incremento_consigliato/1000000);
incremento_attuale = _objsessione.dati.profilo.data.coperture_rc_terzi_futuri_incremento;
objreturn.coperture_rc_terzi_futuri = copertura_attuale+incremento_attuale;
_objsessione.resetMask("#patrimoniale-coperture .masked");
riga_visualizzata = false;
// spostata 25/7/18
if (comproprieta==1) {
objreturn.comproprieta = true;
}
objreturn.comproprieta = comproprieta;
var numero_coniuge = 0;
var coniuge_erede = 0;
if (coniuge) {
numero_coniuge=1;
}
if (numero_coniuge == 1 || numero_figli > 0) {
if (numero_coniuge == 1 && coniuge.id_tipo_parentela==2) {
objreturn.convivente = true;
objreturn.convivente2 = true;
riga_visualizzata = true;
}
if (numero_coniuge==1 && coniuge.id_tipo_parentela==1) {
coniuge_erede = 1;
}
console.log(patrimonio_totale+">"+param_1+"*("+numero_coniuge+"+"+numero_figli+") && "+patrimonio_finanziario_netto+">"+param_3);
if (patrimonio_totale>=param_1 && patrimonio_totale>=param_2*(numero_coniuge+numero_figli) && patrimonio_finanziario_netto>=param_4) { // cifre minori sandro
if (patrimonio_totale>=param_1*(numero_coniuge+numero_figli) && patrimonio_finanziario_netto>=param_3) {// cifre maggiori sandro
riga_visualizzata = true;
objreturn.coniuge_1 = true;
}else{
riga_visualizzata = true;
objreturn.coniuge_2 = true;
}
}
objreturn.famiglia = riga_visualizzata;
if (coniuge_erede==1 && numero_figli == 1) {
objreturn.eredi_1_1 = true;
} else if (coniuge_erede==1 && numero_figli > 1) {
objreturn.eredi_1_2 = true;
}
if (coniuge_erede==0 && numero_figli == 1) {
objreturn.eredi_0_1 = true;
} else if (coniuge_erede==0 && numero_figli > 1) {
objreturn.eredi_0_2 = true;
}
// if (comproprieta==1) {
// objreturn.comproprieta = true;
// }
var objparam_1 = _objsessione.dati.tabelle.get("parametri",1);
var param_1 = objparam_1.valore;
var objparam_2 = _objsessione.dati.tabelle.get("parametri",2);
var param_2 = objparam_2.valore;
var objparam_3 = _objsessione.dati.tabelle.get("parametri",3);
var param_3 = objparam_3.valore;
var objparam_4 = _objsessione.dati.tabelle.get("parametri",4);
var param_4 = objparam_4.valore;
objreturn.param_1 = param_1;
objreturn.param_2 = param_2;
objreturn.param_3 = param_3;
objreturn.param_4 = param_4;
// objreturn.comproprieta = comproprieta;
}
_objsessione.dati.ottimizzazione.debiti = 0;
if (debiti_finanziari>0 || debiti_immobiliari>0) {
_objsessione.dati.ottimizzazione.debiti = 1;
objreturn.debiti = true;
}
costononimputato = "Costo non imputato";
riga_visualizzata = false;
if (_objsessione.dati.profilo.data.invalidita_copertura_futura_incremento>0) {
objreturn.invalidita = true;
objreturn.invalidita_importo = _objsessione.dati.profilo.data.invalidita_copertura_futura_incremento;
if (_objsessione.dati.profilo.data.invalidita_copertura_futura_costo==0) {
objreturn.invalidita_costo = costononimputato;
}
riga_visualizzata = true;
}
if (parenti.length>0 && _objsessione.dati.profilo.data.premorienza_copertura_futura_incremento>0) {
objreturn.premorienza = true;
objreturn.premorienza_importo = _objsessione.dati.profilo.data.premorienza_copertura_futura_incremento;
if (_objsessione.dati.profilo.data.premorienza_copertura_futura_costo==0) {
objreturn.premorienza_costo = costononimputato;
}
riga_visualizzata = true;
}
if (_objsessione.dati.profilo.data.coperture_immobili_futuri_incremento>0) {
objreturn.immobili = true;
objreturn.immobili_importo = _objsessione.dati.profilo.data.coperture_immobili_futuri_incremento;
if (_objsessione.dati.profilo.data.coperture_immobili_futuri_costo==0) {
objreturn.immobili_costo = costononimputato;
}
riga_visualizzata = true;
}
if (_objsessione.dati.profilo.data.coperture_rc_terzi_futuri_incremento>0) {
objreturn.rcterzi = true;
objreturn.rcterzi_importo = _objsessione.dati.profilo.data.coperture_rc_terzi_futuri_incremento;
if (_objsessione.dati.profilo.data.coperture_rc_terzi_futuri_costo==0) {
objreturn.rcterzi_costo = costononimputato;
}
riga_visualizzata = true;
}
if (coniuge && coniuge.invalidita_copertura_futura_incremento>0) {
objreturn.invalidita_partner = true;
objreturn.invalidita_partner_importo = coniuge.invalidita_copertura_futura_incremento;
if (coniuge.invalidita_copertura_futura_costo==0) {
objreturn.invalidita_partner_costo = costononimputato;
}
riga_visualizzata = true;
}
if (coniuge && coniuge.premorienza_copertura_futura_incremento>0) {
objreturn.premorienza_partner = true;
objreturn.premorienza_partner_importo = coniuge.premorienza_copertura_futura_incremento;
if (coniuge.premorienza_copertura_futura_costo==0) {
objreturn.premorienza_partner_costo = costononimputato;
}
riga_visualizzata = true;
}
objreturn.coperture = riga_visualizzata;
if (_objsessione.dati.ottimizzazione.lungo_aggiunto_10_anni>0) {
objreturn.aggiunto_10_anni = _objsessione.dati.ottimizzazione.lungo_aggiunto_10_anni;
// objreturn.risparmiato_10_anni = _objsessione.dati.ottimizzazione.lungo_risparmiato_10_anni;
objreturn.risparmiato_10_anni = parseInt(_objsessione.dati.ottimizzazione.lungo_risparmiato_10_anni/1000)*1000;//sandro
objreturn.considerazioni_1 = true;
objreturn.investimenti = true;
}
if (_objsessione.dati.ottimizzazione.lungo_iniziale>0) {
objreturn.considerazioni_2 = true;
objreturn.considerazioni_3 = true;
}
_objsessione.setMask("#patrimoniale-coperture .masked","#.##0");
_objsessione.setMask("#panel-ottimizzazioneopertativa .masked","#.##0");
return objreturn;
}
/* ------- Calcolo coerenza --------------------------------------------- */
this.coerenza = function() {
var objreturn = new function() {
this.investimenti = false;
this.html = "";
}
var importo_spost = 0;
var inv_breve = _objsessione.dati.profilo.data.coerenza_termine_breve;
var inv_medio = _objsessione.dati.profilo.data.coerenza_termine_medio;
var inv_lungo = _objsessione.dati.profilo.data.coerenza_termine_lungo;
var delta_breve = _objsessione.dati.profilo.data.coerenza_delta_breve;
var delta_medio = _objsessione.dati.profilo.data.coerenza_delta_medio;
var delta_lungo = _objsessione.dati.profilo.data.coerenza_delta_lungo;
var totale = inv_breve+inv_medio+inv_lungo;
_objsessione.resetMask(".table-investimento .integer");
if (delta_breve>0) {
if (delta_medio<0) {
if (Math.abs(delta_medio)>Math.abs(delta_breve)) {
importo_spost = Math.abs(delta_breve);
} else {
importo_spost = Math.abs(delta_medio);
}
importo_spost = parseInt(importo_spost/1000)*1000;//sandro
totale -= importo_spost;
objreturn.html += "La coerenza temporale tra investimenti e bisogni consente di spostare da breve a diversificato medio termine "+importo_spost+".
";
}
if (delta_lungo<0) {
if (Math.abs(delta_lungo)>Math.abs(delta_breve)) {
importo_spost = Math.abs(delta_breve);
} else {
importo_spost = Math.abs(delta_lungo);
}
importo_spost = parseInt(importo_spost/1000)*1000;//sandro
totale -= importo_spost;
objreturn.html += "La coerenza temporale tra investimenti e bisogni consente di spostare da breve a diversificato lungo termine "+importo_spost+".
";
}
}
if (delta_medio>0) {
if (delta_breve<0) {
if (Math.abs(delta_breve)>Math.abs(delta_medio)) {
importo_spost = Math.abs(delta_medio);
} else {
importo_spost = Math.abs(delta_breve);
}
importo_spost = parseInt(importo_spost/1000)*1000;//sandro
totale -= importo_spost;
objreturn.html += "La coerenza temporale tra investimenti e bisogni consente di spostare da medio a breve termine "+importo_spost+".
";
}
if (delta_lungo<0) {
if (Math.abs(delta_lungo)>Math.abs(delta_medio)) {
importo_spost = Math.abs(delta_medio);
} else {
importo_spost = Math.abs(delta_lungo);
}
importo_spost = parseInt(importo_spost/1000)*1000;//sandro
totale -= importo_spost;
objreturn.html += "La coerenza temporale tra investimenti e bisogni consente di spostare da medio a diversificato lungo termine "+importo_spost+".
";
}
}
if (delta_lungo>0) {
if (delta_breve<0) {
if (Math.abs(delta_breve)>Math.abs(delta_lungo)) {
importo_spost = Math.abs(delta_lungo);
} else {
importo_spost = Math.abs(delta_breve);
}
importo_spost = parseInt(importo_spost/1000)*1000;//sandro
totale -= importo_spost;
objreturn.html += "La coerenza temporale tra investimenti e bisogni consente di spostare da lungo a breve termine "+importo_spost+".
";
}
if (delta_medio<0) {
if (Math.abs(delta_medio)>Math.abs(delta_lungo)) {
importo_spost = Math.abs(delta_lungo);
} else {
importo_spost = Math.abs(delta_medio);
}
importo_spost = parseInt(importo_spost/1000)*1000;//sandro
totale -= importo_spost;
objreturn.html += "La coerenza temporale tra investimenti e bisogni consente di spostare da lungo a diversificato medio termine "+importo_spost+".
";
}
}
if (objreturn.html!="") {
objreturn.investimenti = true;
}
_objsessione.setMask("#panel-ottimizzazioneopertativa .masked","#.##0");
return objreturn;
}
/* ------- Calcolo invalidità --------------------------------------------- */
this.invalidita = function(tipo, coniuge) {
var objGrafici = new clsGrafici();
var i=0;
var copertura_futura_max = 1990000;
var copertura_futura_min = 0;
var copertura_futura =1990000;
var copertura_uscita = 0;
var copertura_attuale = 0;
var incremento_consigliato = 0;
var incremento_attuale = 0;
//var objSessione= jQuery.extend(true, {}, _objSessione);
var data = null;
var controvalore_minimo = 0;
var totale_lavoro = 0;
var importo_costo = 0;
var perc_costo = 0;
var entrate_lavoro = null;
var eta = 0;
var copertura_confermata = 0;
var objreturn = new function() {
this.ottimizzata = true;
this.incremento_consigliato = 0;
this.percentuale_costo = 0;
this.costo = 0;
this.incremento_attuale = 0;
this.copertura_futura = 0;
}
if (tipo=="P" || (tipo=="C" && coniuge)) {
entrate_lavoro = _objsessione.dati.entrate_lavoro.totaliperperiodo(_objsessione.anno,100);
if (tipo=="C") {
eta = coniuge.eta;
totale_lavoro = entrate_lavoro.totale_coniuge;
copertura_attuale = coniuge.invalidita_copertura;
objreturn.incremento_attuale = coniuge.invalidita_copertura_futura_incremento;
copertura_confermata = coniuge.invalidita_copertura_futura_confermata;
} else {
copertura_attuale = _objsessione.dati.profilo.data.invalidita_copertura;
objreturn.incremento_attuale = _objsessione.dati.profilo.data.invalidita_copertura_futura_incremento;
totale_lavoro = entrate_lavoro.totale_personale;
eta = _objsessione.eta;
copertura_confermata = _objsessione.dati.profilo.data.invalidita_copertura_futura_confermata;
}
if (tipo=="P" && copertura_futura_max>entrate_lavoro.totale_personale) {
copertura_futura_max = entrate_lavoro.totale_personale;
copertura_futura = entrate_lavoro.totale_personale;
} else if (tipo=="C" && copertura_futura_max>entrate_lavoro.totale_coniuge) {
copertura_futura_max = entrate_lavoro.totale_coniuge;
copertura_futura = entrate_lavoro.totale_coniuge;
}
if (totale_lavoro>0) {
objGrafici.init();
while (i<10) {
objGrafici.objsessione = _objsessione;
objGrafici.objsessione.dati.profilo.data.abilita_ottimizzazione = 1;
if (tipo=="C") {
coniuge.invalidita_copertura_futura = copertura_futura;
objGrafici.objsessione.dati.parenti.setconiuge(coniuge);
data = objGrafici.getdata_analitico("P","6");
controvalore_minimo = data.ottimizzato.coniuge_invalidita_copertura_futura;
} else {
objGrafici.objsessione.dati.profilo.data.invalidita_copertura_futura = copertura_futura;
data = objGrafici.getdata_analitico("P","2");
controvalore_minimo = data.ottimizzato.invalidita_copertura_futura;
}
if (controvalore_minimo > 0) {
copertura_uscita = copertura_futura;
copertura_futura_max = copertura_futura;
} else {
copertura_futura_min = copertura_futura;
}
copertura_futura = copertura_futura_min + (copertura_futura_max-copertura_futura_min)/2;
i++;
}
objGrafici = null;
incremento_consigliato = parseInt(copertura_futura) - copertura_attuale;
}
if (incremento_consigliato<=5000) {
incremento_consigliato=0;
} else {
incremento_consigliato = Math.round((incremento_consigliato+5000)/10000)*10000;
}
objreturn.ottimizzata = true;
objreturn.incremento_consigliato = incremento_consigliato;
objreturn.percentuale_costo = _me.calcola_costi_coperture(tipo, coniuge, "I", eta);
objreturn.costo = parseInt(incremento_consigliato * objreturn.percentuale_costo / 10000);
if (tipo=="C") {
coniuge.invalidita_copertura_futura_costo = parseInt(incremento_consigliato * objreturn.percentuale_costo / 10000);
}
//alert('INVtipo'+tipo+'coniuge'+coniuge+'incremento_consigliato'+incremento_consigliato+'percentuale_costo'+objreturn.percentuale_costo+'costo'+objreturn.costo)
if (copertura_confermata==0) {
objreturn.copertura_futura = parseInt(copertura_attuale + objreturn.incremento_consigliato);
} else {
objreturn.copertura_futura = parseInt(copertura_attuale + objreturn.incremento_attuale);
}
}
return objreturn;
}
/* ------- Calcolo premorienza --------------------------------------------- */
this.premorienza = function(tipo, coniuge) {
var objGrafici = new clsGrafici();
var i=0;
var copertura_futura_max = 1990000;
var copertura_futura_min = 0;
var copertura_futura = 1990000;
var copertura_uscita = 0;
var copertura_attuale = 0;
var incremento_consigliato = 0;
var incremento_attuale = 0;
//var objSessione= jQuery.extend(true, {}, _objSessione);
var prefisso = "profilo";
var data = null;
var controvalore_minimo = 0;
var totale_lavoro = 0;
var importo_costo = 0;
var perc_costo = 0;
var eta = 0;
var entrate_lavoro = null;
var copertura_confermata = 0;
var objreturn = new function() {
this.ottimizzata = true;
this.incremento_consigliato = 0;
this.percentuale_costo = 0;
this.costo = 0;
this.incremento_attuale = 0;
this.copertura_futura = 0;
}
if (tipo=="P" || (tipo=="C" && coniuge)) {
entrate_lavoro = _objsessione.dati.entrate_lavoro.totaliperperiodo(_objsessione.anno,100);
if (tipo=="C") {
totale_lavoro = entrate_lavoro.totale_coniuge;
copertura_attuale = coniuge.premorienza_copertura;
incremento_attuale = coniuge.premorienza_copertura_futura_incremento;
eta = coniuge.eta;
copertura_confermata = coniuge.premorienza_copertura_futura_confermata;
} else {
copertura_attuale = _objsessione.dati.profilo.data.premorienza_copertura;
incremento_attuale = _objsessione.dati.profilo.data.premorienza_copertura_futura_incremento;
totale_lavoro = entrate_lavoro.totale_personale;
eta = _objsessione.eta;
copertura_confermata = _objsessione.dati.profilo.data.premorienza_copertura_futura_confermata;
}
if (tipo=="P" && copertura_futura_max>entrate_lavoro.totale_personale) {
copertura_futura_max = entrate_lavoro.totale_personale;
copertura_futura = entrate_lavoro.totale_personale;
} else if (tipo=="C" && copertura_futura_max>entrate_lavoro.totale_coniuge) {
copertura_futura_max = entrate_lavoro.totale_coniuge;
copertura_futura = entrate_lavoro.totale_coniuge;
}
if (totale_lavoro>0) {
objGrafici.init();
while (i<10) {
objGrafici.objsessione = _objsessione;
objGrafici.objsessione.dati.profilo.data.abilita_ottimizzazione = 1;
if (tipo=="C") {
coniuge.premorienza_copertura_futura = copertura_futura;
objGrafici.objsessione.dati.parenti.setconiuge(coniuge);
data = objGrafici.getdata_analitico("P","5");
controvalore_minimo = data.ottimizzato.coniuge_premorienza_copertura_futura;
} else {
objGrafici.objsessione.dati.profilo.data.premorienza_copertura_futura = copertura_futura;
data = objGrafici.getdata_analitico("P","1");
controvalore_minimo = data.ottimizzato.premorienza_copertura_futura;
}
if (controvalore_minimo > 0) {
copertura_uscita = copertura_futura;
copertura_futura_max = copertura_futura;
} else {
copertura_futura_min = copertura_futura;
}
copertura_futura = copertura_futura_min + (copertura_futura_max-copertura_futura_min)/2;
i++;
}
objGrafici = null;
incremento_consigliato = parseInt(copertura_futura) - copertura_attuale;
}
if (incremento_consigliato<=5000) {
incremento_consigliato=0;
} else {
incremento_consigliato = Math.round((incremento_consigliato+5000)/10000)*10000;
}
objreturn.incremento_attuale = incremento_attuale;
objreturn.ottimizzata = true;
objreturn.incremento_consigliato = incremento_consigliato;
objreturn.percentuale_costo = _me.calcola_costi_coperture(tipo, coniuge, "P", eta);
objreturn.costo = parseInt(incremento_consigliato*objreturn.percentuale_costo/10000);
if (tipo=="C") {
coniuge.premorienza_copertura_futura_costo = parseInt(incremento_consigliato*objreturn.percentuale_costo/10000);
}
if (copertura_confermata==0) {
objreturn.copertura_futura = parseInt(copertura_attuale + objreturn.incremento_consigliato);
} else {
objreturn.copertura_futura = parseInt(copertura_attuale + objreturn.incremento_attuale);
}
}
return objreturn;
}
this.calcola_costi_coperture = function(tipo, coniuge, tipo_costo, eta_attuale) {
var costi = [{"id_azienda":0,"id_lingua":"","eta_max":20,"prc_premorienza":10,"prc_invalidita":30},{"id_azienda":0,"id_lingua":"","eta_max":25,"prc_premorienza":10,"prc_invalidita":30},{"id_azienda":0,"id_lingua":"","eta_max":30,"prc_premorienza":11,"prc_invalidita":30},{"id_azienda":0,"id_lingua":"","eta_max":35,"prc_premorienza":13,"prc_invalidita":35},{"id_azienda":0,"id_lingua":"","eta_max":40,"prc_premorienza":18,"prc_invalidita":35},{"id_azienda":0,"id_lingua":"","eta_max":45,"prc_premorienza":28,"prc_invalidita":40},{"id_azienda":0,"id_lingua":"","eta_max":50,"prc_premorienza":43,"prc_invalidita":45},{"id_azienda":0,"id_lingua":"","eta_max":55,"prc_premorienza":68,"prc_invalidita":50},{"id_azienda":0,"id_lingua":"","eta_max":60,"prc_premorienza":107,"prc_invalidita":70}];
var perc_premorienza = 0;
var perc_invalidita = 0;
var perc_costo = 0;
for (var i=0;i