{"id":2941,"date":"2024-06-07T11:39:58","date_gmt":"2024-06-07T14:39:58","guid":{"rendered":"https:\/\/dev.site.age.pe.gov.br\/\/?page_id=2941"},"modified":"2024-07-11T14:10:52","modified_gmt":"2024-07-11T17:10:52","slug":"simulador","status":"publish","type":"page","link":"https:\/\/age.pe.gov.br\/index.php\/simulador\/","title":{"rendered":"Simulador"},"content":{"rendered":"\n<div class=\"wp-block-cover alignfull\" style=\"min-height:185px;aspect-ratio:unset;\"><span aria-hidden=\"true\" class=\"wp-block-cover__background has-neve-link-color-background-color has-background-dim-0 has-background-dim\"><\/span><img loading=\"lazy\" decoding=\"async\" width=\"1307\" height=\"359\" class=\"wp-block-cover__image-background wp-image-1907\" alt=\"\" src=\"https:\/\/age.pe.gov.br\/\/wp-content\/uploads\/2024\/05\/BG-pa\u0301ginas-1.png\" data-object-fit=\"cover\" srcset=\"https:\/\/age.pe.gov.br\/wp-content\/uploads\/2024\/05\/BG-pa\u0301ginas-1.png 1307w, https:\/\/age.pe.gov.br\/wp-content\/uploads\/2024\/05\/BG-pa\u0301ginas-1-300x82.png 300w, https:\/\/age.pe.gov.br\/wp-content\/uploads\/2024\/05\/BG-pa\u0301ginas-1-768x211.png 768w\" sizes=\"auto, (max-width: 1307px) 100vw, 1307px\" \/><div class=\"wp-block-cover__inner-container is-layout-constrained wp-block-cover-is-layout-constrained\">\n<h1 class=\"wp-block-heading has-text-align-left has-ast-global-color-5-color has-text-color\">Simulador<\/h1>\n<\/div><\/div>\n\n\n\n<div style=\"height:28px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div id=\"app\">\n<div class=\"container\">\n<div class=\"p-3\">\n<div class=\"row\">\n<div class=\"mb-3\">\n<h2 class=\"text-center text-white fw-bold\">{{ message }}<\/h2>\n<\/div>\n<\/div>\n<div class=\"row\">\n<div class=\"col\"><img decoding=\"async\" src=\"https:\/\/i.imgur.com\/dnvGFnM.png\" \/><\/div>\n<div class=\"col\"><!-- Campo de entrada para o valor solicitado (campo num\u00e9rico) -->\n<p class=\"text-valor-solicitado text-white\">Valor solicitado<\/p>\n\n<div class=\"div-valorSolicitado\"><label class=\"text-moeda\" for=\"inputNum\">R$<\/label>\n<input id=\"inputNum\" class=\"campo-input-valor text-moeda\" max=\"21000\" min=\"500\" type=\"number\" \/>\n<!-- Campo de entrada para o valor solicitado (campo de range) -->\n<div class=\"row div-range\"><input class=\"campo-range-valor\" max=\"21000\" min=\"500\" type=\"range\" \/><\/div>\n<\/div>\n<p class=\"text-valor-solicitado text-white\">Car\u00eancia<\/p>\n\n<div class=\"div-valorSolicitado\"><select class=\"form-select\" aria-label=\"Default select example\">\n<option value=\"Nao\">Sem car\u00eancia<\/option>\n<option value=\"sim\">Com car\u00eancia<\/option>\n<\/select><\/div>\n<p class=\"text-valor-solicitado text-white\">Parcelas<\/p>\n\n<div class=\"div-valorSolicitado\">\n<div class=\"row\">\n<div class=\"col-2 col-parcelas\">\n<p class=\"input-parcelas mb-0\">{{ inputRange2 }}<\/p>\n\n<\/div>\n<div class=\"col col-parcelas\"><input class=\"input-range-parcelas\" max=\"36\" min=\"6\" type=\"range\" \/><\/div>\n<\/div>\n<\/div>\n<div class=\"row div-btn-simular\">\n<div class=\"col\">\n<p class=\"text-valor-solicitado text-white\">J\u00e1 \u00e9 nosso cliente?<\/p>\n<input class=\"form-check-input\" type=\"checkbox\" \/><label class=\"text-white\">Marque se for renova\u00e7\u00e3o<\/label>\n\n<\/div>\n<div class=\"col\"><!-- Bot\u00e3o para simular -->\n<button class=\"btn fs-4 btn-simular fw-bold\" type=\"button\" data-bs-toggle=\"modal\" data-bs-target=\"#myModal\">Simular<\/button><\/div>\n<\/div>\n<\/div>\n<!-- Resultado da simula\u00e7\u00e3o -->\n<!-- Modal -->\n<div id=\"myModal\" class=\"modal fade\" tabindex=\"-1\" aria-labelledby=\"myModalLabel\" aria-hidden=\"true\">\n<div class=\"modal-dialog modal-dialog-scrollable\">\n<div class=\"modal-content\">\n<div class=\"modal-header\">\n<h1 id=\"myModalLabel\" class=\"modal-title fs-5\">Resultado da Simula\u00e7\u00e3o<\/h1>\n<\/div>\n<div class=\"modal-body\">\n<div>\n<div class=\"row\">\n<div>\n<ul class=\"list-group\">\n \t<li class=\"list-group-item d-flex justify-content-between align-items-center fw-bold\">Valor Solicitado:\n<span class=\"badge text-bg-primary rounded-pill fs-7\">{{ currencyValue }}<\/span><\/li>\n \t<li class=\"list-group-item d-flex justify-content-between align-items-center fw-bold\">Per\u00edodo (meses):\n<span class=\"badge text-bg-primary rounded-pill fs-7\">{{ inputRange2 }}<\/span><\/li>\n \t<li class=\"list-group-item d-flex justify-content-between align-items-center fw-bold\">Car\u00eancia:\n<span class=\"badge text-bg-primary rounded-pill fs-7\">{{ carencia === &#8216;sim&#8217; ? &#8216;Sim&#8217; : &#8216;Nao&#8217; }}<\/span><\/li>\n \t<li class=\"list-group-item d-flex justify-content-between align-items-center fw-bold\">Taxa de Juros:\n<span class=\"badge text-bg-primary rounded-pill fs-7\">{{ isChecked ? &#8216;1.8%&#8217; : &#8216;2.5%&#8217; }}<\/span><\/li>\n<\/ul>\n<\/div>\n<div><!-- Resultado da simula\u00e7\u00e3o -->\n<table class=\"table table-striped table-hover\">\n<thead>\n<tr>\n<th>N\u00b0<\/th>\n<th>Juros<\/th>\n<th>Amortiza\u00e7\u00e3o<\/th>\n<th>Valor Parcela<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>{{ index + 1 }}<\/td>\n<td>{{ parcela.juros }}<\/td>\n<td>{{ parcela.amortizacao }}<\/td>\n<td>{{ parcela.parcela }}<\/td>\n<\/tr>\n<tr>\n<td><strong>Total:<\/strong><\/td>\n<td><strong>{{ calcularTotal(&#8216;juros&#8217;) }}<\/strong><\/td>\n<td><strong>{{ calcularTotal(&#8216;amortizacao&#8217;) }}<\/strong><\/td>\n<td><strong>{{ calcularTotal(&#8216;parcela&#8217;) }}<\/strong><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<div class=\"row p-1\">\n\nOs valores das presta\u00e7\u00f5es s\u00e3o aproximados. As op\u00e7\u00f5es apresentadas n\u00e3o valem como proposta e representam apenas uma simula\u00e7\u00e3o com o intuito de subsidiar a tomada de decis\u00e3o. At\u00e9 a contrata\u00e7\u00e3o da opera\u00e7\u00e3o, a taxa de juros, prazo e demais condi\u00e7\u00f5es podem ser alterados sem pr\u00e9vio aviso. As opera\u00e7\u00f5es de cr\u00e9dito est\u00e3o sujeitas \u00e0 an\u00e1lise e aprova\u00e7\u00e3o da AGE. Taxa considerando rating A. As taxas variam de acordo com o rating do cliente.\nA Selic \u00e9 definida pelo Comit\u00ea de Pol\u00edtica Monet\u00e1ria do Bacen (Copom) em reuni\u00f5es que ocorrem em m\u00e9dia a cada 45 dias, podendo variar durante a vig\u00eancia do contrato.\nOutras tarifas podem ser aplicadas.\n\n<\/div>\n<\/div>\n<\/div>\n<div class=\"modal-footer\"><button class=\"btn btn-secondary\" type=\"button\" data-bs-dismiss=\"modal\">Fechar<\/button>\n<button class=\"btn btn-primary\" type=\"button\">Imprimir<\/button><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/bootstrap@5.3.3\/dist\/js\/bootstrap.bundle.min.js\" integrity=\"sha384-YvpcrYf0tY3lHB60NNkmXc5s9fDVZLESaAA55NDzOxhy9GkcIdslK1eN7N6jIeHz\" crossorigin=\"anonymous\"><\/script>\n\n<style type=\"text\/css\">\n    .container{<br \/>\n      background-image: url('https:\/\/i.imgur.com\/dwyPVOD.jpeg');<br \/>\n    }<br \/>\n    img{<br \/>\n      width: 80%;<br \/>\n    }<br \/>\n    option{<br \/>\n      color: #3a6bb1;<br \/>\n      font-weight: bold;<br \/>\n    }<br \/>\n    .text-moeda{<br \/>\n      color: #3a6bb1;<br \/>\n      font-size: 30px;<br \/>\n      font-weight: bold;<br \/>\n    }<br \/>\n    .div-valorSolicitado{<br \/>\n      background-color: white;<br \/>\n      border: 10px;<br \/>\n      border-radius: 10px;<br \/>\n      width: 100%;<br \/>\n      margin-bottom: 5%;<br \/>\n    }<br \/>\n    .div-range{<br \/>\n      width: 95%;<br \/>\n      margin-left: 2%;<br \/>\n    }<br \/>\n    .campo-input-valor{<br \/>\n      border: none;<br \/>\n      width: 40%;<br \/>\n    }<br \/>\n    .campo-range-valor{<br \/>\n      margin-bottom: 3%;<br \/>\n    }<\/p>\n<p>    .col-parcelas{<br \/>\n      display: flex;<br \/>\n      align-items: center;<br \/>\n      justify-content: center;<br \/>\n    }<\/p>\n<p>    .valor-parcelas{<br \/>\n      display: flex;<br \/>\n      align-items: center;<br \/>\n      justify-content: center;<br \/>\n    }<\/p>\n<p>    .input-range-parcelas{<br \/>\n      width: 95%;<br \/>\n    }<\/p>\n<p>    .input-parcelas{<br \/>\n      color: #3a6bb1;<br \/>\n      font-size: 30px;<br \/>\n      font-weight: bold;<br \/>\n    }<\/p>\n<p>    .btn-simular{<br \/>\n      background-color: #ffcb03;<br \/>\n      width: 100%;<br \/>\n    }<br \/>\n    .btn-simular:hover{<br \/>\n      background-color: #DAA520;<br \/>\n      color: white;<br \/>\n    }<\/p>\n<p>    .div-btn-simular{<br \/>\n      display: flex;<br \/>\n      align-items: center;<br \/>\n      justify-content: center;<br \/>\n    }<br \/>\n  <\/style>\n\n<script><br \/>\n    \/\/ Vue instance<br \/>\n    new Vue({<br \/>\n      el: '#app',<br \/>\n      data: {<br \/>\n        message: 'Simulador de Cr\u00e9dito',<br \/>\n        inputRange1: 500,<br \/>\n        inputRange2: 6,<br \/>\n        inputText: '',<br \/>\n        isChecked: false,<br \/>\n        carencia: 'Nao', \/\/ Valor padr\u00e3o \u00e9 \"Sem Car\u00eancia\"<br \/>\n        simulated: false, \/\/ Flag para mostrar ou ocultar o resultado da simula\u00e7\u00e3o<br \/>\n        resultadoParcelas: [] \/\/ Armazena os resultados das parcelas<br \/>\n      },<br \/>\n      computed: {<br \/>\n        currencyValue: function() {<br \/>\n          return 'R$ ' + this.inputRange1.toFixed(2).replace(\/\\d(?=(\\d{3})+\\.)\/g, '$&,');<br \/>\n        }<br \/>\n      },<br \/>\n      methods: {<br \/>\n        formatCurrency: function(event) {<br \/>\n          this.inputRange1 = parseFloat(event.target.value);<br \/>\n        },<br \/>\n        simular: function() {<br \/>\n          this.simulated = true;<br \/>\n          this.resultadoParcelas = this.calcularParcelas();<br \/>\n        },<br \/>\n        calcularParcelas: function() {<br \/>\n          \/\/ C\u00e1lculo das parcelas utilizando o sistema de amortiza\u00e7\u00e3o Price<br \/>\n          let valorSolicitado = this.inputRange1;<br \/>\n          let periodoMeses = this.inputRange2;<br \/>\n          let taxaJuros = this.isChecked ? 0.018 : 0.025;<br \/>\n          let valorParcela = (valorSolicitado * taxaJuros) \/ (1 - Math.pow(1 + taxaJuros, -periodoMeses));<br \/>\n          let parcelas = [];<\/p>\n<p>          \/\/ Se houver car\u00eancia, adiciona parcelas vazias para os meses de car\u00eancia<br \/>\n          if (this.carencia === 'sim') {<br \/>\n            for (let i = 0; i < 2; i++) {\n              parcelas.push({ juros: '0,00', amortizacao: '0,00', parcela: '0,00' });\n            }\n          }\n\n          \/\/ Calcula as parcelas mensais\n          for (let i = 0; i < periodoMeses; i++) {\n            let juros = valorSolicitado * taxaJuros;\n            let amortizacao = valorParcela - juros;\n            parcelas.push({\n              juros: 'R$ ' + juros.toFixed(2).replace(\/\\d(?=(\\d{3})+\\.)\/g, '$&#038;,'),\n              amortizacao: 'R$ ' + amortizacao.toFixed(2).replace(\/\\d(?=(\\d{3})+\\.)\/g, '$&#038;,'),\n              parcela: 'R$ ' + valorParcela.toFixed(2).replace(\/\\d(?=(\\d{3})+\\.)\/g, '$&#038;,')\n            });\n          }\n          return parcelas;\n        },\n        calcularTotal: function(propriedade) {\n          \/\/ Calcula o total da propriedade especificada (juros, amortizacao, parcela)\n          let total = this.resultadoParcelas.reduce((acc, parcela) => {<br \/>\n            return acc + parseFloat(parcela[propriedade].replace(\/[^\\d.,]\/g, '').replace(',', '.'));<br \/>\n          }, 0);<br \/>\n          return 'R$ ' + total.toFixed(2).replace(\/\\d(?=(\\d{3})+\\.)\/g, '$&,');<br \/>\n        }<br \/>\n      }<br \/>\n    });<br \/>\n    \/\/ Fun\u00e7\u00e3o para imprimir apenas o conte\u00fado do modal<br \/>\n    function printModal() {<br \/>\n      var printContents = document.getElementById(\"myModal\").innerHTML;<br \/>\n      var originalContents = document.body.innerHTML;<br \/>\n      document.body.innerHTML = printContents;<br \/>\n      window.print();<br \/>\n      document.body.innerHTML = originalContents;<br \/>\n    }<br \/>\n  <\/script>\n","protected":false},"excerpt":{"rendered":"<p>{{ message }} Valor solicitado R$ Car\u00eancia Sem car\u00eanciaCom car\u00eancia Parcelas {{ inputRange2 }} J\u00e1 \u00e9 nosso cliente? Marque se [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_eb_attr":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"disabled","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"_themeisle_gutenberg_block_has_review":false,"footnotes":""},"class_list":["post-2941","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/age.pe.gov.br\/index.php\/wp-json\/wp\/v2\/pages\/2941","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/age.pe.gov.br\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/age.pe.gov.br\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/age.pe.gov.br\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/age.pe.gov.br\/index.php\/wp-json\/wp\/v2\/comments?post=2941"}],"version-history":[{"count":4,"href":"https:\/\/age.pe.gov.br\/index.php\/wp-json\/wp\/v2\/pages\/2941\/revisions"}],"predecessor-version":[{"id":3569,"href":"https:\/\/age.pe.gov.br\/index.php\/wp-json\/wp\/v2\/pages\/2941\/revisions\/3569"}],"wp:attachment":[{"href":"https:\/\/age.pe.gov.br\/index.php\/wp-json\/wp\/v2\/media?parent=2941"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}