recuperaUltimaMovimentacao($rsUltimaMovimentacao);
$inCodPeriodoMovimentacao = $rsUltimaMovimentacao->getCampo("cod_periodo_movimentacao");
}
if ($inCodContrato != "") {
include_once(CAM_GRH_PES_MAPEAMENTO."TPessoalContrato.class.php");
$obTPessoalContrato = new TPessoalContrato();
$stFiltro = " AND cod_contrato = ".$inCodContrato;
$obTPessoalContrato->recuperaCgmDoRegistro($rsCgm,$stFiltro);
$rsValoresAcumuladosBase = new recordset();
$rsRotuloValoresAcumuladosBase = new recordset();
$rsValoresAcumuladosDesconto = new recordset();
$rsRotuloValoresAcumuladosDesconto = new recordset();
include_once(CAM_GRH_FOL_MAPEAMENTO."TFolhaPagamentoEventoCalculado.class.php");
$obTFolhaPagamentoEventoCalculado = new TFolhaPagamentoEventoCalculado();
$obTFolhaPagamentoEventoCalculado->setDado("cod_periodo_movimentacao",$inCodPeriodoMovimentacao);
$obTFolhaPagamentoEventoCalculado->setDado("cod_contrato",$rsCgm->getCampo("cod_contrato"));
$obTFolhaPagamentoEventoCalculado->setDado("cod_configuracao",$inCodConfiguracao);
$obTFolhaPagamentoEventoCalculado->setDado("cod_complementar",$inCodComplementar);
$obTFolhaPagamentoEventoCalculado->setDado("ordem","codigo");
$obTFolhaPagamentoEventoCalculado->recuperaEventosCalculadosFichaFinanceira($rsEventoCalculado);
switch ($inCodConfiguracao) {
case 0:
include_once(CAM_GRH_FOL_MAPEAMENTO."TFolhaPagamentoEventoComplementarCalculado.class.php");
$obTFolhaPagamentoEventoComplementarCalculado = new TFolhaPagamentoEventoComplementarCalculado();
$obTFolhaPagamentoEventoComplementarCalculado->setDado("cod_contrato",$rsCgm->getCampo("cod_contrato"));
$obTFolhaPagamentoEventoComplementarCalculado->setDado("numcgm",$rsCgm->getCampo("numcgm"));
$obTFolhaPagamentoEventoComplementarCalculado->setDado("cod_periodo_movimentacao",$inCodPeriodoMovimentacao);
$obTFolhaPagamentoEventoComplementarCalculado->setDado("natureza",'B');
$obTFolhaPagamentoEventoComplementarCalculado->recuperaValoresAcumuladosCalculo($rsValoresAcumuladosBase,'',' order by codigo');
$obTFolhaPagamentoEventoComplementarCalculado->recuperaRotuloValoresAcumuladosCalculo($rsRotuloValoresAcumuladosBase);
$obTFolhaPagamentoEventoComplementarCalculado->setDado("natureza",'D');
$obTFolhaPagamentoEventoComplementarCalculado->recuperaValoresAcumuladosCalculo($rsValoresAcumuladosDesconto,'',' order by codigo');
$obTFolhaPagamentoEventoComplementarCalculado->recuperaRotuloValoresAcumuladosCalculo($rsRotuloValoresAcumuladosDesconto);
break;
case 1:
$obTFolhaPagamentoEventoCalculado->setDado("cod_contrato",$rsCgm->getCampo("cod_contrato"));
$obTFolhaPagamentoEventoCalculado->setDado("numcgm",$rsCgm->getCampo("numcgm"));
$obTFolhaPagamentoEventoCalculado->setDado("cod_periodo_movimentacao",$inCodPeriodoMovimentacao);
$obTFolhaPagamentoEventoCalculado->setDado("natureza",'B');
$obTFolhaPagamentoEventoCalculado->recuperaValoresAcumuladosCalculo($rsValoresAcumuladosBase,'',' order by codigo');
$obTFolhaPagamentoEventoCalculado->recuperaValoresAcumuladosCalculoSalarioFamilia($rsValoresAcumuladosBaseSalarioFamilia,'',' order by codigo');
$obTFolhaPagamentoEventoCalculado->recuperaRotuloValoresAcumuladosCalculo($rsRotuloValoresAcumuladosBase);
$obTFolhaPagamentoEventoCalculado->recuperaRotuloValoresAcumuladosCalculoSalarioFamilia($rsRotuloValoresAcumuladosBaseSalarioFamilia);
$obTFolhaPagamentoEventoCalculado->setDado("natureza",'D');
$obTFolhaPagamentoEventoCalculado->recuperaValoresAcumuladosCalculo($rsValoresAcumuladosDesconto,'',' order by codigo');
$obTFolhaPagamentoEventoCalculado->recuperaRotuloValoresAcumuladosCalculo($rsRotuloValoresAcumuladosDesconto);
break;
case 2:
include_once(CAM_GRH_FOL_MAPEAMENTO."TFolhaPagamentoEventoFeriasCalculado.class.php");
$obTFolhaPagamentoEventoFeriasCalculado = new TFolhaPagamentoEventoFeriasCalculado();
$obTFolhaPagamentoEventoFeriasCalculado->setDado("cod_contrato",$rsCgm->getCampo("cod_contrato"));
$obTFolhaPagamentoEventoFeriasCalculado->setDado("numcgm",$rsCgm->getCampo("numcgm"));
$obTFolhaPagamentoEventoFeriasCalculado->setDado("cod_periodo_movimentacao",$inCodPeriodoMovimentacao);
$obTFolhaPagamentoEventoFeriasCalculado->setDado("natureza",'B');
$obTFolhaPagamentoEventoFeriasCalculado->recuperaValoresAcumuladosCalculo($rsValoresAcumuladosBase,'',' order by codigo');
$obTFolhaPagamentoEventoFeriasCalculado->recuperaRotuloValoresAcumuladosCalculo($rsRotuloValoresAcumuladosBase);
$obTFolhaPagamentoEventoFeriasCalculado->setDado("natureza",'D');
$obTFolhaPagamentoEventoFeriasCalculado->recuperaValoresAcumuladosCalculo($rsValoresAcumuladosDesconto,'',' order by codigo');
$obTFolhaPagamentoEventoFeriasCalculado->recuperaRotuloValoresAcumuladosCalculo($rsRotuloValoresAcumuladosDesconto);
break;
case 3:
include_once(CAM_GRH_FOL_MAPEAMENTO."TFolhaPagamentoEventoDecimoCalculado.class.php");
$obTFolhaPagamentoEventoDecimoCalculado = new TFolhaPagamentoEventoDecimoCalculado();
$obTFolhaPagamentoEventoDecimoCalculado->setDado("cod_contrato",$rsCgm->getCampo("cod_contrato"));
$obTFolhaPagamentoEventoDecimoCalculado->setDado("numcgm",$rsCgm->getCampo("numcgm"));
$obTFolhaPagamentoEventoDecimoCalculado->setDado("cod_periodo_movimentacao",$inCodPeriodoMovimentacao);
$obTFolhaPagamentoEventoDecimoCalculado->setDado("natureza",'B');
$obTFolhaPagamentoEventoDecimoCalculado->recuperaValoresAcumuladosCalculo($rsValoresAcumuladosBase,'',' order by codigo');
$obTFolhaPagamentoEventoDecimoCalculado->recuperaRotuloValoresAcumuladosCalculo($rsRotuloValoresAcumuladosBase);
$obTFolhaPagamentoEventoDecimoCalculado->setDado("natureza",'D');
$obTFolhaPagamentoEventoDecimoCalculado->recuperaValoresAcumuladosCalculo($rsValoresAcumuladosDesconto,'',' order by codigo');
$obTFolhaPagamentoEventoDecimoCalculado->recuperaRotuloValoresAcumuladosCalculo($rsRotuloValoresAcumuladosDesconto);
break;
case 4:
include_once(CAM_GRH_FOL_MAPEAMENTO."TFolhaPagamentoEventoRescisaoCalculado.class.php");
$obTFolhaPagamentoEventoRescisaoCalculado = new TFolhaPagamentoEventoRescisaoCalculado();
$obTFolhaPagamentoEventoRescisaoCalculado->setDado("cod_contrato",$rsCgm->getCampo("cod_contrato"));
$obTFolhaPagamentoEventoRescisaoCalculado->setDado("numcgm",$rsCgm->getCampo("numcgm"));
$obTFolhaPagamentoEventoRescisaoCalculado->setDado("cod_periodo_movimentacao",$inCodPeriodoMovimentacao);
$obTFolhaPagamentoEventoRescisaoCalculado->setDado("natureza",'B');
$obTFolhaPagamentoEventoRescisaoCalculado->recuperaValoresAcumuladosCalculo($rsValoresAcumuladosBase,'',' order by codigo');
$obTFolhaPagamentoEventoRescisaoCalculado->recuperaRotuloValoresAcumuladosCalculo($rsRotuloValoresAcumuladosBase);
include_once(CAM_GRH_FOL_MAPEAMENTO."TFolhaPagamentoEventoCalculado.class.php");
$obTFolhaPagamentoEventoCalculado = new TFolhaPagamentoEventoCalculado();
$obTFolhaPagamentoEventoCalculado->setDado("cod_contrato",$rsCgm->getCampo("cod_contrato"));
$obTFolhaPagamentoEventoCalculado->setDado("numcgm",$rsCgm->getCampo("numcgm"));
$obTFolhaPagamentoEventoCalculado->setDado("cod_periodo_movimentacao",$inCodPeriodoMovimentacao);
$obTFolhaPagamentoEventoCalculado->setDado("natureza",'B');
$obTFolhaPagamentoEventoCalculado->recuperaValoresAcumuladosCalculoSalarioFamilia($rsValoresAcumuladosBaseSalarioFamilia,'',' order by codigo');
$obTFolhaPagamentoEventoCalculado->recuperaRotuloValoresAcumuladosCalculoSalarioFamilia($rsRotuloValoresAcumuladosBaseSalarioFamilia);
$obTFolhaPagamentoEventoRescisaoCalculado->setDado("natureza",'D');
$obTFolhaPagamentoEventoRescisaoCalculado->recuperaValoresAcumuladosCalculo($rsValoresAcumuladosDesconto,'',' order by codigo');
$obTFolhaPagamentoEventoRescisaoCalculado->recuperaRotuloValoresAcumuladosCalculo($rsRotuloValoresAcumuladosDesconto);
break;
}
$stTabela0 = "
";
$stTabela0 .= "";
$stTabela0 .= "Período Consultado | ";
$stTabela0 .= ""." ".SistemaLegado::mesExtensoBR($inCodMes)." / ".$inAno." | ";
$stTabela0 .= "
";
$stTabela0 .= "";
$rsEventos = processarEventos($rsEventoCalculado,1);
$inCount1 = $rsEventos->getNumLinhas();
$stTabela1 = "";
$stTabela1 .= "";
$stTabela1 .= "Evento | ";
$stTabela1 .= "Descrição | ";
$stTabela1 .= "Desdobramento | ";
$stTabela1 .= "Quantidade | ";
$stTabela1 .= "Proventos | ";
$stTabela1 .= "Descontos |
";
while ( !$rsEventos->eof() ) {
$stTabela1 .= "".$rsEventos->getCampo('codigo')." | ";
$stTabela1 .= "".$rsEventos->getCampo('descricao')." | ";
$stTabela1 .= "".$rsEventos->getCampo('desdobramento_texto')." | ";
$stQuantidadeParc = $rsEventos->getCampo("quantidade_total_parcela") != "" ? '/'.$rsEventos->getCampo("quantidade_total_parcela") : "";
$stTabela1 .= "".$rsEventos->getCampo('quantidade_parcelas').$stQuantidadeParc." | ";
$stTabela1 .= "".$rsEventos->getCampo('proventos')." | ";
$stTabela1 .= "".$rsEventos->getCampo('descontos')." |
";
$rsEventos->proximo();
}
$stTabela1 .= "
";
$stTabela1 .= "";
$rsEventos = processarEventos($rsEventoCalculado,2);
$inCount2 = $rsEventos->getNumLinhas();
$stTabela2 = "";
$stTabela2 .= "";
$stTabela2 .= "Evento | ";
$stTabela2 .= "Descrição | ";
$stTabela2 .= "Desdobramento | ";
$stTabela2 .= "Quantidade | ";
$stTabela2 .= "Valor |
";
while ( !$rsEventos->eof() ) {
$stTabela2 .= "".$rsEventos->getCampo('codigo')." | ";
$stTabela2 .= "".$rsEventos->getCampo('descricao')." | ";
$stTabela2 .= "".$rsEventos->getCampo('desdobramento_texto')." | ";
$stTabela2 .= "".$rsEventos->getCampo('quantidade')." | ";
$stTabela2 .= "".$rsEventos->getCampo('descontos')." |
";
$rsEventos->proximo();
}
$stTabela2 .= "
";
$stTabela2 .= "";
$rsEventos = processarEventos($rsEventoCalculado,3);
$inCount3 = $rsEventos->getNumLinhas();
$stTabela3 = "";
$stTabela3 .= "";
$stTabela3 .= "Evento | ";
$stTabela3 .= "Descrição | ";
$stTabela3 .= "Desdobramento | ";
$stTabela3 .= "Quantidade | ";
$stTabela3 .= "Valor |
";
while ( !$rsEventos->eof() ) {
$stTabela3 .= "".$rsEventos->getCampo('codigo')." | ";
$stTabela3 .= "".$rsEventos->getCampo('descricao')." | ";
$stTabela3 .= "".$rsEventos->getCampo('desdobramento_texto')." | ";
$stTabela3 .= "".$rsEventos->getCampo('quantidade')." | ";
$stTabela3 .= "".$rsEventos->getCampo('descontos')." |
";
$rsEventos->proximo();
}
$stTabela3 .= "
";
$stTabela3 .= "";
$rsEventos = processarEventos($rsEventoCalculado,4);
$stTabela4 = "";
$stTabela4 .= "";
while ( !$rsEventos->eof() ) {
$stTabela4 .= "".$rsEventos->getCampo('descricao')." | ".$rsEventos->getCampo('proventos')." | ".$rsEventos->getCampo('descontos')." |
";
$rsEventos->proximo();
}
$stTabela4 .= "
";
$stTabela4 .= "";
$stTabela5 = "";
$stTabela5 .= "";
$stTabela5 .= "Evento | Descrição | Valor |
";
if ($inCount1 == -1 and $inCount2 == -1 and $inCount3 == -1) {
$rsValoresAcumuladosBase = new RecordSet;
$stRegistrosBase = "Não há contratos calculados";
}
while (!$rsValoresAcumuladosBase->eof()) {
$stTabela5 .= "".$rsValoresAcumuladosBase->getCampo('codigo')." | ".$rsValoresAcumuladosBase->getCampo('descricao')." | ".number_format($rsValoresAcumuladosBase->getCampo('valor'),2,',','.')." |
";
$rsValoresAcumuladosBase->proximo();
}
$stTabela5 .= "
";
$stTabela5 .= "";
if ($inCodConfiguracao == 1 or $inCodConfiguracao == 4) {
$stTabelaSalarioFamilia = "";
$stTabelaSalarioFamilia .= "";
$stTabelaSalarioFamilia .= "Evento | Descrição | Valor |
";
while (!$rsValoresAcumuladosBaseSalarioFamilia->eof()) {
$stTabelaSalarioFamilia .= "".$rsValoresAcumuladosBaseSalarioFamilia->getCampo('codigo')." | ".$rsValoresAcumuladosBaseSalarioFamilia->getCampo('descricao')." | ".number_format($rsValoresAcumuladosBaseSalarioFamilia->getCampo('valor'),2,',','.')." |
";
$rsValoresAcumuladosBaseSalarioFamilia->proximo();
}
$stTabelaSalarioFamilia .= "
";
$stTabelaSalarioFamilia .= "";
}
$stTabela6 = "";
$stTabela6 .= "";
$stTabela6 .= "Evento | Descrição | Valor |
";
if ($inCount1 == -1 and $inCount2 == -1 and $inCount3 == -1) {
$rsValoresAcumuladosDesconto = new RecordSet;
$stRegistrosDesconto = "Não há contratos calculados";
}
while (!$rsValoresAcumuladosDesconto->eof()) {
$stTabela6 .= "".$rsValoresAcumuladosDesconto->getCampo('codigo')." | ".$rsValoresAcumuladosDesconto->getCampo('descricao')." | ".number_format($rsValoresAcumuladosDesconto->getCampo('valor'),2,',','.')." |
";
$rsValoresAcumuladosDesconto->proximo();
}
$stTabela6 .= "
";
$stTabela6 .= "";
$stTabela7 = "";
$stTabela7 .= "";
$stTabela7 .= "(S)Folha Salário |
";
$stTabela7 .= "(C)Folha Complementar |
";
$stTabela7 .= "(F)Folha Férias |
";
$stTabela7 .= "
";
$stTabela7 .= "";
$obSpnSpan1_0 = new Span;
$obSpnSpan1_0->setId ( "SpnSpan1_0" );
$obSpnSpan1_1 = new Span;
$obSpnSpan1_1->setId ( "SpnSpan1_1" );
$obSpnSpan1_2 = new Span;
$obSpnSpan1_2->setId ( "SpnSpan1_2" );
$obSpnSpan1_3 = new Span;
$obSpnSpan1_3->setId ( "SpnSpan1_3" );
$obSpnSpan1_4 = new Span;
$obSpnSpan1_4->setId ( "SpnSpan1_4" );
$obSpnSpan1_5 = new Span;
$obSpnSpan1_5->setId ( "SpnSpan1_5" );
$obSpnSpan1_6 = new Span;
$obSpnSpan1_6->setId ( "SpnSpan1_6" );
$obSpnSpan1_7 = new Span;
$obSpnSpan1_7->setId ( "SpnSpan1_7" );
$obSpnSalarioFamilia1 = new Span();
$obSpnSalarioFamilia1->setId("spnSalarioFamilia");
$obSpnSalarioFamilia1->setValue($stTabelaSalarioFamilia);
$obFormulario = new Formulario;
$obFormulario->addTitulo ( "Ficha Financeira" );
$obFormulario->addSpan ( $obSpnSpan1_0 );
$obFormulario->addTitulo ( "Eventos Calculados" );
$obFormulario->addSpan ( $obSpnSpan1_1 );
$obFormulario->addTitulo ( "Bases de Cálculo" );
$obFormulario->addSpan ( $obSpnSpan1_2 );
$obFormulario->addTitulo ( "Eventos Informativos" );
$obFormulario->addSpan ( $obSpnSpan1_3 );
$obFormulario->addTitulo ( "Totais Calculados" );
$obFormulario->addSpan ( $obSpnSpan1_4 );
if ( $request->get('inCodConfiguracao') != 3 ) {
$obFormulario->addTitulo ( "Valores Acumulados com o Cálculo da Matrícula","center" );
$obFormulario->addTitulo ( "Matrícula(s): ".$rsRotuloValoresAcumuladosBase->getCampo("rotulo") ,"center" );
$obFormulario->addSpan ( $obSpnSpan1_5 );
if ($inCodConfiguracao == 1 or $inCodConfiguracao == 4) {
$obFormulario->addTitulo ( "Valores Acumulados para Cálculo do Salário Família","center" );
$obFormulario->addTitulo ( "Matrícula(s): ".$rsRotuloValoresAcumuladosBaseSalarioFamilia->getCampo("rotulo") ,"center" );
$obFormulario->addSpan ( $obSpnSalarioFamilia1 );
}
$obFormulario->addTitulo ( "Valores Acumulados até o Cálculo da Matrícula","center" );
$obFormulario->addTitulo ( "Matrícula(s): ".$rsRotuloValoresAcumuladosDesconto->getCampo("rotulo") ,"center" );
$obFormulario->addSpan ( $obSpnSpan1_6 );
$obFormulario->addSpan ( $obSpnSpan1_7 );
}
$obFormulario->montaInnerHtml();
$stJs .= "d.getElementById('SpnSpan1').innerHTML = '".$obFormulario->getHTML()."'; \n";
$stJs .= "d.getElementById('SpnSpan1_0').innerHTML = '".$stTabela0."'; \n";
$stJs .= "d.getElementById('SpnSpan1_1').innerHTML = '".$stTabela1."'; \n";
$stJs .= "d.getElementById('SpnSpan1_2').innerHTML = '".$stTabela2."'; \n";
$stJs .= "d.getElementById('SpnSpan1_3').innerHTML = '".$stTabela3."'; \n";
$stJs .= "d.getElementById('SpnSpan1_4').innerHTML = '".$stTabela4."'; \n";
if ( $request->get('inCodConfiguracao') != 3 ) {
$stJs .= "d.getElementById('SpnSpan1_5').innerHTML = '".$stTabela5."'; \n";
$stJs .= "d.getElementById('SpnSpan1_6').innerHTML = '".$stTabela6."'; \n";
$stJs .= "d.getElementById('SpnSpan1_7').innerHTML = '".$stTabela7."'; \n";
}
}
$stJs.="document.getElementById('fundo_carregando').style.visibility='hidden';";
if ($boExecuta) {
sistemaLegado::executaFrameOculto( $stJs );
} else {
return $stJs;
}
}
function processarEventos($rsEventos,$inNatureza)
{
$arEventos = ( $rsEventos->getNumLinhas() > 0 ) ? $rsEventos->getElementos() : array();
$arTemp = array();
$stNatureza1 = '';
$stNatureza2 = '';
$inCodEvento = 0;
$boTodos = false;
switch ($inNatureza) {
case 1:
$stNatureza1 = 'P';
$stNatureza2 = 'D';
break;
case 2:
$stNatureza1 = 'B';
$stNatureza2 = 'B';
break;
case 3:
$stNatureza1 = 'I';
$stNatureza2 = 'I';
break;
case 4:
$boTodos = true;
$nuTotalProventos = 0;
$nuTotalDescontos = 0;
break;
}
foreach ($arEventos as $arEvento) {
if( ($arEvento['natureza'] == $stNatureza1 or $arEvento['natureza'] == $stNatureza2)
and ($arEvento['cod_evento'] != $inCodEvento or $arEvento['desdobramento'] != $stDesdobramento or $arEvento['cod_configuracao'] != $inCodConfiguracao) ){
if ($arEvento['natureza'] == 'P') {
$arEvento['proventos'] = $arEvento['valor'];
} else {
$arEvento['proventos'] = "0,00";
}
if ($arEvento['natureza'] == 'D' or $arEvento['natureza'] == 'B' or $arEvento['natureza'] == 'I') {
$arEvento['descontos'] = $arEvento['valor'];
} else {
$arEvento['descontos'] = "0,00";
}
$arTemp[] = $arEvento;
$stTimestamp = isset($arEvento['timestamp_registro']) ? $arEvento['timestamp_registro'] : '' ;
$inCodEvento = $arEvento['cod_evento'];
$stDesdobramento = $arEvento['desdobramento'] ;
$inCodConfiguracao = isset($arEvento['cod_configuracao']) ? $arEvento['cod_configuracao'] : '' ;
}
if ($boTodos) {
if ($arEvento['natureza'] == 'P') {
$nuTotalProventos += $arEvento['valor'];
}
if ($arEvento['natureza'] == 'D') {
$nuTotalDescontos += $arEvento['valor'];
}
}
}
if ($boTodos) {
$arTemp[] = array("descricao"=>"Soma dos Proventos","proventos"=>$nuTotalProventos);
$arTemp[] = array("descricao"=>"Soma dos Descontos","descontos"=>$nuTotalDescontos);
$arTemp[] = array("descricao"=>"Líquido","proventos"=>$nuTotalProventos-$nuTotalDescontos);
}
$rsEventos = new recordset;
$rsEventos->preenche($arTemp);
if (!$boTodos) {
$rsEventos->addFormatacao("quantidade","NUMERIC_BR");
}
$rsEventos->addFormatacao("proventos","NUMERIC_BR");
$rsEventos->addFormatacao("descontos","NUMERIC_BR");
return $rsEventos;
}
switch ($_REQUEST["stCtrl"]) {
case "gerarSpan1":
$stJs = gerarSpan1();
break;
}
if ($stJs) {
// sistemaLegado::executaFrameOculto($stJs);
echo $stJs;
}
?>