get("stAcao"); $obRFolhaPagamentoFolhaComplementar = new RFolhaPagamentoFolhaComplementar( new RFolhaPagamentoPeriodoMovimentacao ); switch ($stAcao) { case "incluir": Sessao::setTrataExcecao(true); include_once(CAM_GRH_FOL_MAPEAMENTO."TFolhaPagamentoRegistroEventoComplementar.class.php"); include_once(CAM_GRH_FOL_MAPEAMENTO."TFolhaPagamentoUltimoRegistroEventoComplementar.class.php"); include_once(CAM_GRH_FOL_MAPEAMENTO."TFolhaPagamentoRegistroEventoComplementarParcela.class.php"); include_once(CAM_GRH_FOL_MAPEAMENTO."TFolhaPagamentoEventoComplementarCalculado.class.php"); include_once(CAM_GRH_FOL_MAPEAMENTO."TFolhaPagamentoEventoComplementarCalculadoDependente.class.php"); include_once(CAM_GRH_FOL_MAPEAMENTO."TFolhaPagamentoLogErroCalculoComplementar.class.php"); include_once(CAM_GRH_FOL_MAPEAMENTO."TFolhaPagamentoEvento.class.php"); $obTPessoalContrato = new TPessoalContrato; $stFiltro = " WHERE registro = ".Sessao::read('inContrato'); $obTPessoalContrato->recuperaTodos($rsContrato,$stFiltro); include_once(CAM_GRH_FOL_MAPEAMENTO."TFolhaPagamentoPeriodoMovimentacao.class.php"); $obTFolhaPagamentoPeriodoMovimentacao = new TFolhaPagamentoPeriodoMovimentacao; $obTFolhaPagamentoPeriodoMovimentacao->recuperaUltimaMovimentacao($rsUltimaMovimentacao); include_once(CAM_GRH_FOL_MAPEAMENTO."TFolhaPagamentoContratoServidorComplementar.class.php"); $obTFolhaPagamentoContratoServidorComplementar = new TFolhaPagamentoContratoServidorComplementar; $obTFolhaPagamentoContratoServidorComplementar->setDado("cod_contrato" ,$rsContrato->getCampo("cod_contrato")); $obTFolhaPagamentoContratoServidorComplementar->setDado("cod_complementar" ,$request->get('inCodComplementar')); $obTFolhaPagamentoContratoServidorComplementar->setDado("cod_periodo_movimentacao" ,$rsUltimaMovimentacao->getCampo("cod_periodo_movimentacao")); $obTFolhaPagamentoContratoServidorComplementar->recuperaPorChave($rsContratoServidorComplementar); if ( $rsContratoServidorComplementar->getNumLinhas() < 0 ) { $obTFolhaPagamentoContratoServidorComplementar->inclusao(); } //Excluir todos registros de evento complementar para o contrato $stFiltro = " AND cod_contrato = ".$rsContrato->getCampo("cod_contrato"); $stFiltro .= " AND cod_periodo_movimentacao = ".$rsUltimaMovimentacao->getCampo("cod_periodo_movimentacao"); $stFiltro .= " AND cod_complementar = ".$request->get('inCodComplementar'); $obTFolhaPagamentoUltimoRegistroEventoComplementar = new TFolhaPagamentoUltimoRegistroEventoComplementar; $obTFolhaPagamentoUltimoRegistroEventoComplementar->recuperaRelacionamento($rsRegistroEventoComplementar,$stFiltro); while ( !$rsRegistroEventoComplementar->eof() ) { $obTFolhaPagamentoUltimoRegistroEventoComplementar->setDado("cod_registro" ,$rsRegistroEventoComplementar->getCampo("cod_registro")); $obTFolhaPagamentoUltimoRegistroEventoComplementar->setDado("cod_evento" ,$rsRegistroEventoComplementar->getCampo("cod_evento")); $obTFolhaPagamentoUltimoRegistroEventoComplementar->setDado("cod_configuracao" ,$rsRegistroEventoComplementar->getCampo("cod_configuracao")); $obTFolhaPagamentoUltimoRegistroEventoComplementar->setDado("timestamp" ,$rsRegistroEventoComplementar->getCampo("timestamp")); $obTFolhaPagamentoUltimoRegistroEventoComplementar->deletarUltimoRegistroEvento(); $rsRegistroEventoComplementar->proximo(); } $arCodigoEventos = array(); $arEventos = Sessao::read("eventos"); foreach ($arEventos as $arEvento) { $nuValor = ( $arEvento['nuValor'] != "" ) ? $arEvento['nuValor'] : 0; $nuQuantidade = ( $arEvento['nuQuantidade'] != "" ) ? $arEvento['nuQuantidade'] : 0; $obTFolhaPagamentoEvento = new TFolhaPagamentoEvento; $stFiltro = " WHERE codigo = '".$arEvento['inCodigo']."'"; $obTFolhaPagamentoEvento->recuperaTodos($rsEvento,$stFiltro); $obTFolhaPagamentoRegistroEventoComplementar = new TFolhaPagamentoRegistroEventoComplementar; $obTFolhaPagamentoRegistroEventoComplementarParcela = new TFolhaPagamentoRegistroEventoComplementarParcela; $obTFolhaPagamentoUltimoRegistroEventoComplementar = new TFolhaPagamentoUltimoRegistroEventoComplementar; $obTFolhaPagamentoEventoComplementarCalculado = new TFolhaPagamentoEventoComplementarCalculado; $obTFolhaPagamentoEventoComplementarCalculadoDependente = new TFolhaPagamentoEventoComplementarCalculadoDependente(); $obTFolhaPagamentoLogErroCalculoComplementar = new TFolhaPagamentoLogErroCalculoComplementar; $obTFolhaPagamentoRegistroEventoComplementar->obTFolhaPagamentoContratoServidorComplementar = &$obTFolhaPagamentoContratoServidorComplementar; $obTFolhaPagamentoUltimoRegistroEventoComplementar->obTFolhaPagamentoRegistroEventoComplementar = &$obTFolhaPagamentoRegistroEventoComplementar; $obTFolhaPagamentoRegistroEventoComplementarParcela->obTFolhaPagamentoUltimoRegistroEventoComplementar = &$obTFolhaPagamentoUltimoRegistroEventoComplementar; $obTFolhaPagamentoLogErroCalculoComplementar->obTFolhaPagamentoUltimoRegistroEventoComplementar = &$obTFolhaPagamentoUltimoRegistroEventoComplementar; $obTFolhaPagamentoEventoComplementarCalculado->obTFolhaPagamentoUltimoRegistroEventoComplementar = &$obTFolhaPagamentoUltimoRegistroEventoComplementar; $obTFolhaPagamentoEventoComplementarCalculadoDependente->obTFolhaPagamentoEventoComplementarCalculado = &$obTFolhaPagamentoEventoComplementarCalculado; $obTFolhaPagamentoRegistroEventoComplementar->setDado("cod_evento" ,$rsEvento->getCampo("cod_evento")); $obTFolhaPagamentoRegistroEventoComplementar->setDado("cod_configuracao",$arEvento['inCodConfiguracao']); $obTFolhaPagamentoRegistroEventoComplementar->setDado("valor" , $nuValor); $obTFolhaPagamentoRegistroEventoComplementar->setDado("quantidade" , $nuQuantidade); $obTFolhaPagamentoRegistroEventoComplementar->inclusao(); $obTFolhaPagamentoUltimoRegistroEventoComplementar->inclusao(); if ($arEvento['inQuantidadeParc'] != "") { $obTFolhaPagamentoRegistroEventoComplementarParcela->setDado("parcela" ,$arEvento['inQuantidadeParc']); $obTFolhaPagamentoRegistroEventoComplementarParcela->inclusao(); } } Sessao::encerraExcecao(); $stMensagem = "Necessário recalcular a folha. Matrícula: ".Sessao::read('inContrato'); if ($request->get('stOkRetorno') == "lista") { sistemaLegado::alertaAviso($pgList,$stMensagem,"incluir","aviso", Sessao::getId(), "../"); } else { sistemaLegado::alertaAviso($pgFilt,$stMensagem,"incluir","aviso", Sessao::getId(), "../"); } break; } ?>