–>
const setResult = () => {
$('#labelIndenizadoVar').html('') if (parseInt($("#motivo").val()) === 1) { $("#aviso option[value='1']").text("Não cumprido") } else { $("#aviso option[value='1']").text("Indenizado") }
const dateInicioVinculo = new Date($("#inicio_vinculo").val()); const dateFimVinculo = new Date($("#fim_vinculo").val()); var inicio = $("#inicio_vinculo").val().split('-') var fim = $("#fim_vinculo").val().split('-')
const differenceDates = dateDifference(dateInicioVinculo, dateFimVinculo); // console.log('diferença de datas: ', Math.floor(differenceDates.diffInYears)); var anosTrabalhados = Math.floor(differenceDates.diffInYears)
// Calcular SALDO SALÁRIO -----------------------------------------------------------------------------------
if ((parseInt($("#fim_vinculo").val().split('-')[1]) === parseInt($("#inicio_vinculo").val().split('-')[1])) && (parseInt($("#fim_vinculo").val().split('-')[0]) === parseInt($("#inicio_vinculo").val().split('-')[0]))) { $("#saldo_salario").val( ((parseInt($("#salario").val()) / $("#dias_mes_rescisao").val()) * (parseInt($("#fim_vinculo").val().split('-')[2]) - parseInt($("#inicio_vinculo").val().split('-')[2]))).toFixed(2) ); } else { $("#saldo_salario").val( ((parseInt($("#salario").val()) / $("#dias_mes_rescisao").val()) * (parseInt($("#fim_vinculo").val().split('-')[2]))).toFixed(2) ); } if ((parseInt($("#motivo").val()) === 1) && (parseInt($("#aviso").val()) === 1)) { $("#desconto_salario").val(parseInt(parseInt($("#salario").val()))) $('#desconto_salario_desconto_result').html('') $('#desconto_salario_desconto_result').append('Desconto: ' + formatarMoeda((parseInt($("#salario").val()))) + ' (Saída imediada)' ) } else { $("#desconto_salario").val(0) $('#desconto_salario_desconto_result').html('') } var aliquota = getAliquotaInss() $("#saldo_salario_desconto").val( ((parseInt($("#saldo_salario").val()) * aliquota)).toFixed(2) ); if ($("#salario").val() && $("#dias_mes_rescisao").val()) { $('#saldo_salario_result').html('') if ((parseInt($("#fim_vinculo").val().split('-')[1]) === parseInt($("#inicio_vinculo").val().split('-')[1])) && (parseInt($("#fim_vinculo").val().split('-')[0]) === parseInt($("#inicio_vinculo").val().split('-')[0]))) { $('#saldo_salario_result').append('Saldo: ' + formatarMoeda((parseInt($("#salario").val()) / $("#dias_mes_rescisao").val()) * (parseInt($("#fim_vinculo").val().split('-')[2]) - parseInt($("#inicio_vinculo").val().split('-')[2]))) + ' (' + (parseInt($("#fim_vinculo").val().split('-')[2]) - parseInt($("#inicio_vinculo").val().split('-')[2])) + ' dias trabalhados)' ) } else { $('#saldo_salario_result').append('Saldo: ' + formatarMoeda((parseInt($("#salario").val()) / $("#dias_mes_rescisao").val()) * (parseInt($("#fim_vinculo").val().split('-')[2]))) + ' (' + (parseInt($("#fim_vinculo").val().split('-')[2])) + ' dias trabalhados)' ) } $('#saldo_salario_desconto_result').html('') if (Number(inicio[0]) < 2020) { $('#saldo_salario_desconto_result').append('INSS: ' + formatarMoeda((parseInt($("#saldo_salario").val()) * aliquota)) + ' (Aliquota: ' + aliquota * 100 + '%) *referência 2020') } else { $('#saldo_salario_desconto_result').append('INSS: ' + formatarMoeda((parseInt($("#saldo_salario").val()) * aliquota)) + ' (Aliquota: ' + aliquota * 100 + '%) *referência ' + inicio[0]) } } // DIAS AVISO PRÉVIO --------------------------------------------------------------------------------------------- var dias_aviso_direito = 30 if (anosTrabalhados > 0 && parseInt($("#motivo").val()) === 2) { dias_aviso_direito = 30 dias_aviso_direito = dias_aviso_direito + ((anosTrabalhados) * 3) if (dias_aviso_direito > 90) { dias_aviso_direito = 90 } }
if (parseInt($("#motivo").val()) === 3) { $("#prazo_aviso").val(0) dias_aviso_direito = 0 }
// DIAS INDENIZADOS ----------------------------------------------------------------------------------------------
var dias_indenizados = (parseInt($("#aviso").val()) === 1) ? dias_aviso_direito : dias_aviso_direito - 30 $("#dias_indenizados").val(dias_indenizados)
//Data último dia de trabalho ------------------------------------------------------------------------------------
const dateUltimoDia = (parseInt($("#aviso").val()) === 1) ? addDaysToDate(new Date($("#fim_vinculo").val()), 1) : addDaysToDate(new Date($("#fim_vinculo").val()), 30)
const dataUltimo = new Date(dateUltimoDia);
const anoUltimo = dataUltimo.getFullYear(); const mesUltimo = String(dataUltimo.getMonth() + 1).padStart(2, '0'); // Adiciona zero à esquerda se necessário const diaUltimo = String(dataUltimo.getDate()).padStart(2, '0'); // Adiciona zero à esquerda se necessário
const dataUltimoFormatada = `${anoUltimo}-${mesUltimo}-${diaUltimo}`;
$("#ultimo_dia").val(dataUltimoFormatada)
// PROJEÇÃO DO AVISO -------------------------------------------------------------------------------------------
const dateProjecao = addDaysToDate(new Date($("#fim_vinculo").val()), dias_aviso_direito) console.log('dateProjecao', dateProjecao) const dataProj = new Date(dateProjecao);
// Extrai ano, mês e dia, ajustando o mês (pois o mês em JavaScript é baseado em zero) const anoProjecao = dataProj.getFullYear(); const mesProjecao = String(dataProj.getMonth() + 1).padStart(2, '0'); // Adiciona zero à esquerda se necessário const diaProjecao = String(dataProj.getDate()).padStart(2, '0'); // Adiciona zero à esquerda se necessário
// Formata no padrão desejado YYYY-MM-DD const dataProjecaoFormatada = `${anoProjecao}-${mesProjecao}-${diaProjecao}`; // console.log('dateprojecao', dataProjecaoFormatada) $("#projecao_aviso").val(dataProjecaoFormatada)
// MESES INDENIZADOS ---------------------------------------------------------------------------------------------
var meses_indenizados = calcularDiferencaMeses($("#ultimo_dia").val(), $("#projecao_aviso").val()) $("#meses_indenizados").val(meses_indenizados)
// console.log('meses_indenizados', meses_indenizados, $("#fim_vinculo").val(), $("#projecao_aviso").val()) // 13º PROPORCIONAL -------------------------------------------------------------------------------------------
var meses_13 = parseInt(diaUltimo) > 14 ? parseInt(mesUltimo) : (parseInt(mesUltimo - 1)) console.log('meses_13', meses_13) console.log('mes ultimo', mesUltimo) console.log('mes data projetada', dataProjecaoFormatada.split('-')[1])
if ((parseInt(mesUltimo) > 9) && (parseInt(dataProjecaoFormatada.split('-')[1]) < 5)) { meses_13 = parseInt(mesUltimo) + parseInt(dataProjecaoFormatada.split('-')[1]) } if (parseInt($("#fim_vinculo").val().split('-')[0]) === parseInt($("#inicio_vinculo").val().split('-')[0])) { meses_13 = parseInt(mesUltimo) - parseInt($("#inicio_vinculo").val().split('-')[1]) if (meses_13 < 0) { meses_13 = (12 - parseInt($("#inicio_vinculo").val().split('-')[1])) + parseInt(dataProjecaoFormatada.split('-')[1]) } if (parseInt($("#inicio_vinculo").val().split('-')[2]) < 15) { meses_13++; } if (parseInt(dataProjecaoFormatada.split('-')[2]) < 15) { meses_13--; } } if (parseInt($("#motivo").val()) !== 3) { // console.log('meses 13', meses_13) // console.log('ultimo mes', mesUltimo) $("#13_proporcional").val( ((parseInt($("#salario").val()) / 12) * (meses_13)).toFixed(2) ); $("#13_proporcional_desconto").val( ((parseInt($("#13_proporcional").val()) * aliquota)).toFixed(2) ); if ((parseInt($("#aviso").val())) === 0) { $("#13_indenizado").val( ((((parseInt($("#salario").val())) / 30) * (dias_aviso_direito))).toFixed(2) ); } else { $("#13_indenizado").val( //meses_13--, ((((parseInt($("#salario").val())) / 30) * (dias_aviso_direito - 30))).toFixed(2) ); } if ($("#salario").val()) { $('#13_proporcional_result').html('') if ((parseInt($("#aviso").val()))) { $('#13_proporcional_result').append('Proporcional: ' + formatarMoeda((parseInt($("#salario").val()) / 12) * (meses_13)) + ' (' + (meses_13) + ' meses trabalhados)' + 'Indenizado: ' + formatarMoeda((((parseInt($("#salario").val())) / 30) * (dias_aviso_direito))) + '' + 'Período Trabalhado: de ' + parseInt($("#inicio_vinculo").val().split('-')[2]) + '/' + parseInt($("#inicio_vinculo").val().split('-')[1]) + '/' + parseInt($("#inicio_vinculo").val().split('-')[0]) + ' a ' + dataUltimoFormatada.split('-')[2] + '/' + dataUltimoFormatada.split('-')[1] + '/' + dataUltimoFormatada.split('-')[0] + '' + 'Período Indenizado: de ' + dataUltimoFormatada.split('-')[2] + '/' + dataUltimoFormatada.split('-')[1] + '/' + dataUltimoFormatada.split('-')[0] + ' a ' + dataProjecaoFormatada.split('-')[2] + '/' + dataProjecaoFormatada.split('-')[1] + '/' + dataProjecaoFormatada.split('-')[0] ) } else { $('#13_proporcional_result').append('Proporcional: ' + formatarMoeda((parseInt($("#salario").val()) / 12) * (meses_13)) + ' (' + (meses_13) + ' meses trabalhados)' + 'Indenizado: ' + formatarMoeda((((parseInt($("#salario").val())) / 30) * (dias_aviso_direito - 30))) + '' + 'Período Trabalhado de: ' + parseInt($("#inicio_vinculo").val().split('-')[2]) + '/' + parseInt($("#inicio_vinculo").val().split('-')[1]) + '/' + parseInt($("#inicio_vinculo").val().split('-')[0]) + ' a ' + dataUltimoFormatada.split('-')[2] + '/' + dataUltimoFormatada.split('-')[1] + '/' + dataUltimoFormatada.split('-')[0] + '' + 'Período Indenizado: de ' + dataUltimoFormatada.split('-')[2] + '/' + dataUltimoFormatada.split('-')[1] + '/' + dataUltimoFormatada.split('-')[0] + ' a ' + dataProjecaoFormatada.split('-')[2] + '/' + dataProjecaoFormatada.split('-')[1] + '/' + dataProjecaoFormatada.split('-')[0] ) } $('#13_proporcional_desconto_result').html('') if (Number(inicio[0]) < 2020) { $('#13_proporcional_desconto_result').append('INSS: ' + formatarMoeda((parseInt($("#13_proporcional").val()) * aliquota)) + ' (Aliquota: ' + aliquota * 100 + '%) *referência 2020') } else { $('#13_proporcional_desconto_result').append('INSS: ' + formatarMoeda((parseInt($("#13_proporcional").val()) * aliquota)) + ' (Aliquota: ' + aliquota * 100 + '%) *referência ' + inicio[0]) } } } else { $("#13_proporcional").val( (0).toFixed(2) ); $("#13_proporcional_desconto").val( (0).toFixed(2) ); $('#13_proporcional_result').html('') $('#13_proporcional_result').append('Proporcional: ' + 'Justa causa sem direito' + 'Indenizado: Justa causa sem direito' ) $('#13_proporcional_desconto_result').html('') $('#13_proporcional_desconto_result').append('INSS: R$ 0,00') }
// AVISO PRÉVIO INDENIZADO ---------------------------------------------------------------------------------
$("#aviso_direito").val(dias_aviso_direito); $("#prazo_aviso").val(parseInt($("#aviso").val()) * 30) if (parseInt($("#aviso").val()) !== 0) { if (parseInt($("#motivo").val()) !== 3) { $("#aviso_previo_indenizado").val( ((parseInt($("#salario").val()) / 30) * (parseInt($("#aviso_direito").val()))).toFixed(2) ); } else { $("#aviso_previo_indenizado").val( (0).toFixed(2) ); }
$('#aviso_previo_indenizado_result').html('') $('#aviso_previo_indenizado_result').append('Indenização: ' + formatarMoeda((parseInt($("#salario").val()) / 30) * (parseInt($("#aviso_direito").val()))) ) } else {
$("#aviso_previo_indenizado").val( ((((parseInt($("#salario").val())) / 30) * ((parseInt($("#aviso_direito").val()) - 30)))).toFixed(2) );
$('#aviso_previo_indenizado_result').html('') if (((parseInt($("#salario").val())) / 30) * ((parseInt($("#aviso_direito").val()) - 30)) > 0) { $('#aviso_previo_indenizado_result').append('Indenização: ' + formatarMoeda(((parseInt($("#salario").val())) / 30) * ((parseInt($("#aviso_direito").val()) - 30))) ) } else { $('#aviso_previo_indenizado_result').append('Sem indenização ') }
}
// Calcular FÉRIAS PROPORCIONAIS ---------------------------------------------------------------------------
var firstMonthVacation = parseInt(inicio[2]) < 15 ? 1 : 0; var lastMonthVacation = parseInt(dataUltimoFormatada.split('-')[2]) > 14 ? 1 : 0; const dateInitVacation = getInitVacation(); const differenceDatesVacation = dateDifference(dateInitVacation, dateProjecao); console.log('inicio ferias', dateInitVacation) console.log('differenca de datas', differenceDatesVacation)
var ferias_prop = (($("#salario").val() / 12) * (Math.round(differenceDatesVacation.diffInMonths) + lastMonthVacation + firstMonthVacation)); if (parseInt($("#motivo").val()) !== 3) { $("#ferias_proporcionais").val( ((ferias_prop + (ferias_prop / 3))).toFixed(2) ); } else { $("#ferias_proporcionais").val(0); } if (differenceDates.diffInYears >= 1) { // Calcular Férias Vencidas $("#ferias_vencidas").val( ((parseInt($("#salario").val()) + (parseInt($("#salario").val()) / 3)) * parseInt($("#ferias").val())).toFixed(2) ) // Calcular Férias em Dobro $("#ferias_em_dobro").val( (((parseInt($("#salario").val()) + (parseInt($("#salario").val()) / 3)) * 2) * parseInt($("#ferias_dobro").val())).toFixed(2) ) } else { $("#ferias_vencidas").val((parseInt(0)).toFixed(2)) // Calcular Férias em Dobro $("#ferias_em_dobro").val((((parseInt(0)))).toFixed(2)) } $('#ferias_result').html('') if (parseInt($("#motivo").val()) !== 3) { $('#ferias_result').append('Proporcionais: ' + formatarMoeda((ferias_prop + (ferias_prop / 3))) + ' (' + ((Math.round(differenceDatesVacation.diffInMonths)) || 0) + ' meses)' + 'Período Trabalhado: de ' + parseInt($("#inicio_vinculo").val().split('-')[2]) + '/' + parseInt($("#inicio_vinculo").val().split('-')[1]) + '/' + parseInt($("#inicio_vinculo").val().split('-')[0]) + ' a ' + dataUltimoFormatada.split('-')[2] + '/' + dataUltimoFormatada.split('-')[1] + '/' + dataUltimoFormatada.split('-')[0] + '' + 'Período Indenizado: de ' + dataUltimoFormatada.split('-')[2] + '/' + dataUltimoFormatada.split('-')[1] + '/' + dataUltimoFormatada.split('-')[0] + ' a ' + dataProjecaoFormatada.split('-')[2] + '/' + dataProjecaoFormatada.split('-')[1] + '/' + dataProjecaoFormatada.split('-')[0] + 'Vencidas: ' + formatarMoeda((parseInt($("#salario").val()) + (parseInt($("#salario").val()) / 3)) * parseInt($("#ferias").val())) + 'Em dobro: ' + formatarMoeda(((parseInt($("#salario").val()) + (parseInt($("#salario").val()) / 3)) * 2) * parseInt($("#ferias_dobro").val())) ) } else { $('#ferias_result').append('Proporcionais: ' + 'Justa causa sem direito' + 'Vencidas: ' + formatarMoeda((parseInt($("#salario").val()) + (parseInt($("#salario").val()) / 3)) * parseInt($("#ferias").val())) + 'Em dobro: ' + formatarMoeda(((parseInt($("#salario").val()) + (parseInt($("#salario").val()) / 3)) * 2) * parseInt($("#ferias_dobro").val())) ) }
if (parseInt($("#motivo").val()) === 2) { var multa_fgts = parseInt($("#saldo_fgts").val()) * 0.4 || 0 $("#multa_fgts").val(multa_fgts);
$('#fgts_result').html('') $('#fgts_result').append('Multa: ' + formatarMoeda(multa_fgts)) } else {
$("#multa_fgts").val(0);
$('#fgts_result').html('') $('#fgts_result').append('Multa: Não tem direito ') }
var total_vencimentos = 0 var total1 = parseInt($("#saldo_salario").val()) || 0 var total2 = parseInt($("#13_proporcional").val()) || 0 var total3 = parseInt($("#13_indenizado").val()) || 0 var total4 = parseInt($("#ferias_proporcionais").val()) || 0 var total5 = parseInt($("#ferias_vencidas").val()) || 0 var total6 = parseInt($("#ferias_em_dobro").val()) || 0 var total7 = parseInt($("#multa_fgts").val()) || 0 total_vencimentos = total1 + total2 + total3 + total4 + total5 + total6 + total7
var total_descontos = 0 var desconto1 = parseInt($("#saldo_salario_desconto").val()) || 0 var desconto2 = parseInt($("#13_proporcional_desconto").val()) || 0 var desconto3 = parseInt($("#desconto_salario").val()) || 0 total_descontos = desconto1 + desconto2 + desconto3
var total_liquido = total_vencimentos - total_descontos $('#resultado_receber').html('') $('#resultado_receber').append( formatarMoeda(total_vencimentos) ) $('#resultado_pagar').html('') $('#resultado_pagar').append( formatarMoeda(total_descontos) ) $('#total_liquido').html('') $('#total_liquido').append( formatarMoeda(total_liquido) ) }
$("#inicio_vinculo").change(function () { // $('#salario').append(12121); // console.log('inicio vinculo: ' + $("#inicio_vinculo").val()); var inicio = $("#inicio_vinculo").val().split('-'); // console.log('data inicio ', inicio[2] + '/' + inicio[1] + '/' + inicio[0]); $("#fim_vinculo").prop("disabled", false); setResult() }) $("#fim_vinculo").change(function () { // $('#salario').append(12121); // console.log('fim vinculo: ' + $("#fim_vinculo").val()); var fim = $("#fim_vinculo").val().split('-'); // console.log('data fim ', fim[2] + '/' + fim[1] + '/' + fim[0]); $("#dias_mes_rescisao").prop("disabled", false); $("#motivo").prop("disabled", false);
setResult()
}) $("#dias_mes_rescisao").change(function () { setResult() // updateInputs() }) $("#motivo").change(function () { $("#salario").prop("disabled", false); setResult() }) $("#salario").change(function () { $("#ferias").prop("disabled", false); $("#ferias_dobro").prop("disabled", false); $("#aviso").prop("disabled", false); $("#filhos").prop("disabled", false);
// $('#salario').append(12121); setResult() }) $("#aviso").change(function () { // $('#salario').append(12121); // console.log('aviso: ' + $("#aviso").val()); setResult() }) $("#prazo_aviso").change(function () { // console.log('prazo aviso: ' + $("#prazo_aviso").val()); setResult() }) $("#ferias").change(function () { // $('#salario').append(12121); // console.log('aviso: ' + $("#aviso").val()); setResult() }) $("#ferias_dobro").change(function () { // $('#salario').append(12121); // console.log('aviso: ' + $("#aviso").val()); setResult() }) $("#saldo_fgts").change(function () { setResult() })