var _url = 'registro_calculadora.php'; var _data = {'contato': 'vr.contato', 'valor_sistema': 'valor_sistema', 'consumo': 'vr.ve'}; function validateEmail(email) { var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; return re.test(String(email).toLowerCase()); } angular.module('app', []) .controller('appController', function($scope, $http) { //$event.preventDefault(); var vr = this; vr.contato_valido = true; vr.tipo_contato = "telefone"; vr.ve = 800; vr.investimento_valor_parcela = 0; vr.investimento_qtd_parcelas = 60; vr.investimento_total = 100; vr.valor_economia = 0; vr.retorno_investimento = 0; vr.taf = .9414; vr.contato = ""; vr.initial_step = true; vr.anima_is_dia = true; var valor_sistema = 0; // formula // Valor do Sistema (Vs) = a * Ve/(b*Taf)^2 + c* Ve/(b*Taf) - d // taxas fixas var fat_24 = .0504, fat_36 = .0372, fat_48 = .0309, fat_60 = .0273; function save_orcamento(dados = ''){ var Contatos = Parse.Object.extend("Contatos"); var ContatosBase = Parse.Object.extend("ContatosBase"); novoContato = new Contatos(); novoContato.set("nome", dados.nome); novoContato.set("email", dados.email); novoContato.set("telefone", dados.telefone); contatobase = new ContatosBase(); contatobase.set("nome", dados.nome); contatobase.set("email", dados.email); contatobase.set("telefone", dados.telefone); novoContato.set("investimento_total", dados.investimento_total); novoContato.set("investimento_valor_parcela", dados.investimento_valor_parcela); novoContato.set("valor_simulado", dados.ve); novoContato.set("valor_economia", dados.valor_economia); novoContato.set("retorno_investimento", dados.retorno_investimento); novoContato.set("retorno_em_meses", dados.retorno_em_meses); novoContato.save().then(function(novo){ //console.log('Contato saved successful with name: ' + novo.get("nome") + ' and email: ' + novo.get("email")); }).catch(function(error){ console.log('Error: ' + error.message); }); contatobase.save().then(function(novo){ console.log('successful !!!' ); }).catch(function(error){ console.log('Error: ' + error.message); }); } function register() { save_orcamento(vr); } function is_valid() { var c = vr.contato; console.log(c); var t = vr.tipo_contato; var valido = true; vr.msg_error = ""; //Validando email valido = validateEmail(vr.email); if( !valido ){ vr.msg_error = "Insira um email v·lido"; }else { //Validando telefone validationExpression=/^([0-9]{2} ([0-9]{4}-[0-9]{4}|[0-9]{5}-[0-9]{4})|([0-9]{11})|([0-9]{7}-[0-9]{4}))/; valido = validationExpression.test( vr.telefone ); if( !valido ){ vr.msg_error = "Por favor, insira seu n˙mero com DDD"; } } vr.contato_valido = valido; return valido; } vr.calcular = function() { // validaÁ„o if(!is_valid()) return; vr.contato_valido = true; vr.initial_step = false; if(vr.taf.toString().indexOf(',') >= 0) vr.taf = vr.taf.toString().replace(',','.'); // var consumo = vr.ve / (b*vr.taf); var consumo = vr.ve; if(consumo <= 550 ) { a = -0.0201; b = 50.377; c = -1772.8; valor_sistema = a* Math.pow(consumo, 2) + b * consumo + c; } if (consumo > 550 && consumo <= 800) { // Atualmente trata-se de uma equaÁ„o de primeiro grau, por isso a = 0 a = 0; b = 32.309; c = 3691.4; valor_sistema = a* Math.pow(consumo, 2) + b * consumo + c; } if(consumo >800 && consumo <= 1300) { a = 0.013; b = 8.3224; c = 16559; valor_sistema = a* Math.pow(consumo, 2) + b * consumo + c; } if(consumo >1300 && consumo <= 2400) { a = -0.0086; b = 65.924; c = -23820; valor_sistema = a* Math.pow(consumo, 2) + b * consumo + c; } if(consumo >2400 && consumo <= 3200) { a = 0.0037; b = 10.82; c = 43011; valor_sistema = a* Math.pow(consumo, 2) + b * consumo + c; } if(consumo >3200 && consumo <= 5000) { a = 0.0062; b = -12.067; c = 92591; valor_sistema = a* Math.pow(consumo, 2) + b * consumo + c; } valor_sistema = Math.trunc(valor_sistema * .9999); // arredondamento // valor total investimento vr.investimento_total = valor_sistema; // valor das parcelas var arr_inv = []; arr_inv[0] = Math.trunc(valor_sistema * fat_24); arr_inv[1] = Math.trunc(valor_sistema * fat_36); arr_inv[2] = Math.trunc(valor_sistema * fat_48); arr_inv[3] = Math.trunc(valor_sistema * fat_60); vr.investimento_valor_parcela = arr_inv; // A economia mensal ser· estipulada em 95% da conta de energia (valor de entrada) vr.valor_economia = vr.ve * .95; vr.valor_economia = Math.trunc(vr.valor_economia); // arredondamento // O retorno do investimento dever· ser dado em anos, fazendo um arredondamento para baixo vr.retorno_em_meses = valor_sistema / vr.valor_economia; vr.retorno_investimento = vr.retorno_em_meses / 12;//vr.investimento_qtd_parcelas; vr.retorno_investimento = parseFloat(vr.retorno_investimento).toFixed(2); vr.retorno_investimento = vr.retorno_investimento.toString().replace(".",","); //console.log(vr); register(); }; vr.iniciar = function() { vr.initial_step = true; vr.consumo = 650; vr.tef = .8; vr.contato = ""; }; });