setBolLigado(false);
InfraDebug::getInstance()->setBolDebugInfra(true);
InfraDebug::getInstance()->limpar();
$objSessaoSEI = SessaoSEI::getInstance();
//$objSessaoSEI->validarLink();
$objSessaoSEI->validarPermissao('pen_procedimento_expedir');
$objGenericoBD = new GenericoBD(BancoSEI::getInstance());
if(array_key_exists('metodo', $_GET)) {
ob_clean();
header('Content-type: text/xml');
switch ($_GET['metodo']){
// @join_tec US008.02 (#23092)
case 'baixarReciboEnvio':
header('Content-Disposition: attachment; filename="recibo_de_envio_do_tramite.xml"');
// print ''.PHP_EOL;
$objBancoSEI = BancoSEI::getInstance();
$objBancoSEI->abrirConexao();
try {
if(array_key_exists('id_tramite', $_GET) && array_key_exists('id_tarefa', $_GET)) {
$objReciboTramiteRN = new ReciboTramiteRN();
$arrObjReciboTramiteDTO = $objReciboTramiteRN->downloadReciboEnvio($_GET['id_tramite']);
if(empty($arrObjReciboTramiteDTO)) {
throw new InfraException('O recibo ainda não foi recebido.');
}
$objReciboTramiteHashDTO = new ReciboTramiteHashDTO();
$objReciboTramiteHashDTO->setNumIdTramite($_GET['id_tramite']);
$objReciboTramiteHashDTO->setStrTipoRecibo(ProcessoEletronicoRN::$STA_TIPO_RECIBO_ENVIO);
$objReciboTramiteHashDTO->retStrHashComponenteDigital();
$arrObjReciboTramiteHashDTO = $objGenericoBD->listar($objReciboTramiteHashDTO);
foreach($arrObjReciboTramiteDTO as $objReciboTramiteDTO) {
$dthTimeStamp = InfraData::getTimestamp($objReciboTramiteDTO->getDthRecebimento());
print '';
print ''.$objReciboTramiteDTO->getNumIdTramite().'';
print ''.$objReciboTramiteDTO->getStrNumeroRegistro().'';
print ''.date('c', $dthTimeStamp).'';
if($arrObjReciboTramiteHashDTO && is_array($arrObjReciboTramiteHashDTO)){
$arrObjReciboTramiteHashDTO = InfraArray::converterArrInfraDTO($arrObjReciboTramiteHashDTO, 'HashComponenteDigital');
ksort($arrObjReciboTramiteHashDTO);
foreach($arrObjReciboTramiteHashDTO as $hash){
print ''.$hash.'';
}
}
print '';
print ''.$objReciboTramiteDTO->getStrCadeiaCertificado().'';
print ''.$objReciboTramiteDTO->getStrHashAssinatura().'';
}
}
}
catch(InfraException $e){
ob_clean();
print ''.PHP_EOL;
print '';
print ''.$e->getStrDescricao().'';
print '';
}
break;
// @join_tec US008.03 (#23092)
case 'baixarReciboRecebimento':
header('Content-Disposition: attachment; filename="recibo_de_conclusao_do_tramite.xml"');
// print ''.PHP_EOL;
$objBancoSEI = BancoSEI::getInstance();
$objBancoSEI->abrirConexao();
try {
if(array_key_exists('id_tramite', $_GET) && array_key_exists('id_tarefa', $_GET)) {
$objReciboTramiteRN = new ReciboTramiteRN();
$arrObjReciboTramiteDTO = $objReciboTramiteRN->listarPorAtividade($_GET['id_tramite'], $_GET['id_tarefa']);
if(empty($arrObjReciboTramiteDTO)) {
throw new InfraException('O recibo ainda não foi recebido.');
}
$objReciboTramiteHashDTO = new ReciboTramiteHashDTO();
$objReciboTramiteHashDTO->setNumIdTramite($_GET['id_tramite']);
$objReciboTramiteHashDTO->retStrHashComponenteDigital();
if($_GET['id_tarefa'] == ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_EXPEDIDO)){
$objReciboTramiteHashDTO->setStrTipoRecibo(ProcessoEletronicoRN::$STA_TIPO_RECIBO_CONCLUSAO_RECEBIDO);
}else{
$objReciboTramiteHashDTO->setStrTipoRecibo(ProcessoEletronicoRN::$STA_TIPO_RECIBO_CONCLUSAO_ENVIADO);
}
$arrObjReciboTramiteHashDTO = $objGenericoBD->listar($objReciboTramiteHashDTO);
foreach($arrObjReciboTramiteDTO as $objReciboTramiteDTO) {
$dthTimeStamp = InfraData::getTimestamp($objReciboTramiteDTO->getDthRecebimento());
print '';
print ''.$objReciboTramiteDTO->getNumIdTramite().'';
print ''.$objReciboTramiteDTO->getStrNumeroRegistro().'';
print ''.date('c', $dthTimeStamp).'';
$strHashAssinatura = $objReciboTramiteDTO->getStrHashAssinatura();
if($arrObjReciboTramiteHashDTO && is_array($arrObjReciboTramiteHashDTO)){
$arrObjReciboTramiteHashDTO = InfraArray::converterArrInfraDTO($arrObjReciboTramiteHashDTO, 'HashComponenteDigital');
ksort($arrObjReciboTramiteHashDTO);
foreach($arrObjReciboTramiteHashDTO as $hash){
print ''.$hash.'';
}
}
print '';
print ''.$objReciboTramiteDTO->getStrCadeiaCertificado().'';
print ''.$objReciboTramiteDTO->getStrHashAssinatura().'';
}
}
}
catch(InfraException $e){
ob_clean();
print ''.PHP_EOL;
print '';
print ''.$e->getStrDescricao().'';
print '';
}
break;
}
exit(0);
}
$strProprioLink = 'controlador.php?acao='.$_GET['acao'].'&acao_origem='.$_GET['acao_origem'].'&acao_retorno='.$_GET['acao_retorno'].'&id_procedimento='.$_GET['id_procedimento'];
$strTitulo = 'Consultar Recibos';
//$arrComandos = array();
//$arrComandos[] = '';
//$arrComandos[] = '';
if(!array_key_exists('id_procedimento', $_GET) || empty($_GET['id_procedimento'])) {
throw new InfraException('Código do procedimento não foi informado');
}
$objProcedimentoAndamentoDTO = new ProcedimentoAndamentoDTO();
$objProcedimentoAndamentoDTO->retTodos();
$objProcedimentoAndamentoDTO->retNumIdEstruturaDestino();
$objProcedimentoAndamentoDTO->retNumIdEstruturaOrigem();
$objProcedimentoAndamentoDTO->setOrdDblIdTramite(InfraDTO::$TIPO_ORDENACAO_ASC);
$objProcedimentoAndamentoDTO->setOrdDthData(InfraDTO::$TIPO_ORDENACAO_ASC);
$objProcedimentoAndamentoDTO->setDblIdProcedimento($_GET['id_procedimento']);
if(array_key_exists('txtTextoPesquisa', $_POST) && !empty($_POST['txtTextoPesquisa'])) {
$objProcedimentoAndamentoDTO->setStrMensagem('%'.$_POST['txtTextoPesquisa'].'%', InfraDTO::$OPER_LIKE);
}
$objPaginaSEI = PaginaSEI::getInstance();
$objPaginaSEI->setTipoPagina(InfraPagina::$TIPO_PAGINA_SIMPLES);
//$objPaginaSEI->prepararOrdenacao($objProcedimentoAndamentoDTO, 'IdProcedimento', InfraDTO::$TIPO_ORDENACAO_ASC);
$objPaginaSEI->prepararPaginacao($objProcedimentoAndamentoDTO);
$objBancoSEI = BancoSEI::getInstance();
$objBancoSEI->abrirConexao();
$objProcedimentoAndamentoBD = new ProcedimentoAndamentoBD($objBancoSEI);
$arrObjProcedimentoAndamentoDTO = $objProcedimentoAndamentoBD->listar($objProcedimentoAndamentoDTO);
$objPaginaSEI->processarPaginacao($objProcedimentoAndamentoDTO);
$numRegistros = count($arrObjProcedimentoAndamentoDTO);
if(!empty($arrObjProcedimentoAndamentoDTO)){
$arrAgruparProcedimentoAndamentoDTO = array();
foreach($arrObjProcedimentoAndamentoDTO as &$objProcedimentoAndamentoDTO){
if(ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_EXPEDIDO) == $objProcedimentoAndamentoDTO->getNumTarefa())
$numIdEstrutura = $objProcedimentoAndamentoDTO->getNumIdEstruturaDestino();
elseif (ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_RECEBIDO) == $objProcedimentoAndamentoDTO->getNumTarefa())
$numIdEstrutura = $objProcedimentoAndamentoDTO->getNumIdEstruturaOrigem();
$key = $objProcedimentoAndamentoDTO->getDblIdTramite() . '-' . $numIdEstrutura . '-' . $objProcedimentoAndamentoDTO->getNumTarefa();
$arrAgruparProcedimentoAndamentoDTO[$key][] = $objProcedimentoAndamentoDTO;
}
$strResultado = '';
$strResultado .= '
'."\n";
//$strResultado .= ''.$objPaginaSEI->gerarCaptionTabela('estados do processo', $numRegistros).'';
$strResultado .= '';
//$strResultado .= ''.$objPaginaSEI->getThCheck().' | '."\n";
$strResultado .= 'Data | '."\n";
$strResultado .= 'Operação | '."\n";
$strResultado .= 'Situação | '."\n";
$strResultado .= '
'."\n";
$strCssTr = '';
$idCount = 1;
foreach($arrAgruparProcedimentoAndamentoDTO as $key => $arrObjProcedimentoAndamentoDTO) {
list($dblIdTramite, $numIdEstrutura, $numTarefa) = explode('-', $key);
$objReturn = PenAtividadeRN::retornaAtividadeDoTramiteFormatado($dblIdTramite, $numIdEstrutura, $numTarefa);
$strResultado .= '';
$strResultado .= ''
. ' '
. ''.$objReturn->strMensagem.' | ';
$strResultado .= '';
// @join_tec US008.03 (#23092) | @join_tec US008.13 (#23092)
if($numTarefa == ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_EXPEDIDO)){
$strResultado .= ' ';
}
// @join_tec US008.01 (#23092)
if($objReturn->bolReciboExiste) {
$strResultado .= ' ';
}
$strResultado .= ' | ';
$strResultado .= '
';
foreach($arrObjProcedimentoAndamentoDTO as $objProcedimentoAndamentoDTO) {
$strCssTr = ($strCssTr == 'infraTrClara') ? 'infraTrEscura' : 'infraTrClara';
$strResultado .= '
'."\n";
$i++;
}
$idCount++;
}
$strResultado .= '
';
}
}
catch(Exception $e){
$objPaginaSEI->processarExcecao($e);
}
$objPaginaSEI->montarDocType();
$objPaginaSEI->abrirHtml();
$objPaginaSEI->abrirHead();
$objPaginaSEI->montarMeta();
$objPaginaSEI->montarTitle(':: '.$objPaginaSEI->getStrNomeSistema().' - '.$strTitulo.' ::');
$objPaginaSEI->montarStyle();
?>
montarJavaScript(); ?>
fecharHead();
$objPaginaSEI->abrirBody($strTitulo,'onload="inicializar();"');
?>
fecharBody(); ?>
fecharHtml(); ?>