<?php
session_start();
require("../../database/dbConection.php");
require("../include/funcoes_gsaudereg.php");
$UsuarioLogado  = $_SESSION['idUsuarioLogado'];
$idPerfilLogado = $_SESSION['idPerfilLogado'];
$agendaVisivel  = $_SESSION['agendaVisivel'];

$diaHoraHoje    = date("Y-m-d H:i");
# -- variáveis da listagem de vagas
$htmlRetorno          = "";
$codigoUnidadeHeader  = "";
$contadorUnidades     = 0;
$styleMarginTop       = "";
$setCorlinhaData      = "";
$dataAgendaCor        = "";
$contadorLinhasVagas  = 0;
$idProcedimento       = $_POST['idProcedimento'];
$idGrupoProcedimento  = $_POST['idGrupoProcedimento'];
$sexoPaciente         = $_POST['sexoPaciente'];
$idadePaciente        = $_POST['idadePaciente'];
$tipoVaga             = $_POST['tipoVaga'];

# -- capturar as unidades de referência -- #
$stmUnidadeReferencia = $rsConexao->prepare("SELECT codigo_estabelecimento_referencia FROM reg_tb_unidadereferencia WHERE codigo_estabelecimento_base='" . $_SESSION['unidadeLogada'] . "'");
$stmUnidadeReferencia->execute();

if ($stmUnidadeReferencia->rowCount() > 0) {
  $rsUnidadeReferencia  = $stmUnidadeReferencia->fetchAll(PDO::FETCH_ASSOC);
  $arrayUnidade   = $rsUnidadeReferencia;;
  $contarUnidade =  count($arrayUnidade);
  $idUnidadesReferencia = "";
  for ($contaReg = 0; $contaReg < $contarUnidade; $contaReg++) {
    $idUnidadesReferencia = $idUnidadesReferencia == "" ? $arrayUnidade[$contaReg]['codigo_estabelecimento_referencia'] : $idUnidadesReferencia . "," . $arrayUnidade[$contaReg]['codigo_estabelecimento_referencia'];
  }
} else {
  $idUnidadesReferencia = "00000";
}
#----- DEFINIR DATA PAGA VAGAS OCIOSAS -------#
$dataHoje = date("Y-m-d");
$dataHoje = DateTime::createFromFormat('Y-m-d', $dataHoje);
$dataHoje->add(new DateInterval('P6D'));
$dataVagaOciosa = $dataHoje->format('Y-m-d');
if ($idPerfilLogado == 11 || $idPerfilLogado == 12) {
  $whereOciosas = " AND (concat(reg_tb_agenda_sub.ano_agenda,'-',lpad(reg_tb_agenda_sub.mes_agenda,2,'0'),'-',lpad(reg_tb_agenda_sub.dia_agenda,2,'0'))<='$dataVagaOciosa')";
} else {
  $whereOciosas = "";
}
#---------------------------------------------#


#----- DEFINIR DATA PAGA VAGAS OCIOSAS -------#
$dataHoje = date("Y-m-d");
$dataHoje = DateTime::createFromFormat('Y-m-d', $dataHoje);
$dataHoje->add(new DateInterval('P6D'));
$dataVagaOciosa = $dataHoje->format('Y-m-d');
if ($idPerfilLogado == 11 || $idPerfilLogado == 12) {
  $whereOciosas = " AND (concat(reg_tb_agenda_sub.ano_agenda,'-',lpad(reg_tb_agenda_sub.mes_agenda,2,'0'),'-',lpad(reg_tb_agenda_sub.dia_agenda,2,'0'))<='$dataVagaOciosa')";
} else {
  $whereOciosas = "";
}
#---------------------------------------------#

#----- CARREGAR DADOS DOS PARÂMETROS DE AGENDAMENTO -------#
$stmConfiguracoes  = $rsConexao->prepare("SELECT * FROM reg_tb_configuracoes");
$stmConfiguracoes->execute();

$rsConfiguracoes  = $stmConfiguracoes->fetch(PDO::FETCH_OBJ);
$diasAberturaPrimeiraVez  = $rsConfiguracoes->diasabertura_pvez;
$diasAberturaRetorno      = $rsConfiguracoes->diasabertura_retorno;
$diasAberturaReserva      = $rsConfiguracoes->diasabertura_reserva;

$data_original = date('Y-m-d');
$data = new DateTime($data_original);
$data->add(new DateInterval('P30D'));
$data_atualizada = $data->format('Y-m-d');

$dataHojeLimitacao  = date("Y-m-d");

$geraDataLimitePVez = new DateTime($dataHojeLimitacao);
$geraDataLimitePVez->add(new DateInterval("P" . $diasAberturaPrimeiraVez . "D"));
$dataLimitePVez     = $geraDataLimitePVez->format('Y-m-d');

$geraDataLimiteRetorno = new DateTime($dataHojeLimitacao);
$geraDataLimiteRetorno->add(new DateInterval("P" . $diasAberturaRetorno . "D"));
$dataLimiteRetorno      = $geraDataLimiteRetorno->format('Y-m-d');


$geraDataLimiteReserva = new DateTime($dataHojeLimitacao);
$geraDataLimiteReserva->add(new DateInterval("P" . $diasAberturaReserva . "D"));
$dataLimiteReserva      = $geraDataLimiteReserva->format('Y-m-d');

#----------------------------------------------------------#
switch ($tipoVaga) {
  case "PVez":
    $whareTipoVaga      = "AND (quantidadevagas_pvez-quantidadegendada_pvez)>0 ";
    $complementoSQLVagaDisponivel = " (reg_tb_agenda_sub.quantidadevagas_pvez-reg_tb_agenda_sub.quantidadegendada_pvez) AS vagasDiponiveis ";
    $whareTipoVagaDisponivel  = "AND (quantidadevagas_pvez!='' AND quantidadevagas_pvez IS NOT NULL) AND (quantidadevagas_pvez-quantidadegendada_pvez)>0 ";
    $whereLimitaDiasAbertura  = " AND (concat(reg_tb_agenda_sub.ano_agenda,'-',reg_tb_agenda_sub.mes_agenda,'-',lpad(reg_tb_agenda_sub.dia_agenda,2,'0'))<='$dataLimitePVez') ";
    $descricaoVagasDiponiveis = "1ª Vez - disponível";
    break;
  case "retorno":
    $whareTipoVaga      = "AND (quantidadevagas_retorno-quantidadeagendada_retorno)>0";
    $complementoSQLVagaDisponivel = " (reg_tb_agenda_sub.quantidadevagas_retorno-reg_tb_agenda_sub.quantidadeagendada_retorno) AS vagasDiponiveis ";
    $whareTipoVagaDisponivel  = "AND (quantidadevagas_retorno!='' AND quantidadeagendada_retorno IS NOT NULL) AND (quantidadevagas_retorno-quantidadeagendada_retorno)>0 ";
    $whereLimitaDiasAbertura  = " AND (concat(reg_tb_agenda_sub.ano_agenda,'-',reg_tb_agenda_sub.mes_agenda,'-',lpad(reg_tb_agenda_sub.dia_agenda,2,'0'))<='$dataLimiteRetorno') ";
    $descricaoVagasDiponiveis = "Retorno - disponível";
    break;
  case "reserva":
    $whareTipoVaga      = "AND (quantidadevagas_reserva-quantidadeagendada_reserva)>0 ";
    $complementoSQLVagaDisponivel = " (reg_tb_agenda_sub.quantidadevagas_reserva-reg_tb_agenda_sub.quantidadeagendada_reserva) AS vagasDiponiveis ";
    $whareTipoVagaDisponivel  = "AND (quantidadevagas_reserva!='' AND quantidadeagendada_reserva IS NOT NULL) AND (quantidadevagas_reserva-quantidadeagendada_reserva)>0 ";
    $whereLimitaDiasAbertura  = " AND (concat(reg_tb_agenda_sub.ano_agenda,'-',reg_tb_agenda_sub.mes_agenda,'-',lpad(reg_tb_agenda_sub.dia_agenda,2,'0'))<='$dataLimiteReserva') ";
    $descricaoVagasDiponiveis = "Reserva - disponível";
    break;
}

# - VERIFICA PERFIL DO USUÁRIO E PERMISSÃO PARA ACESSAR AS AGENDAS -- #
if($idPerfilLogado!=20){
  if($idPerfilLogado!=1 && $idPerfilLogado!=14){
    $whereOCI = "timestampdiff(DAY,curdate(),concat(reg_tb_agenda_sub.ano_agenda,'-',reg_tb_agenda_sub.mes_agenda,'-',lpad(reg_tb_agenda_sub.dia_agenda,2,'0')))<0)";
    $whereAgendaLocalGeralOCI = " AND (reg_tb_agenda.disponibilidade_agenda='$agendaVisivel') ";
    $whereAgendaLocalGeralOCI .= " AND (reg_tb_agenda.exclusivo_oci='N' OR (reg_tb_agenda.exclusivo_oci='S' AND $whereOCI)";
  }else{
    $whereAgendaLocalGeralOCI = "";
  }
}else{
  $whereOCI = "timestampdiff(DAY,curdate(),concat(reg_tb_agenda_sub.ano_agenda,'-',reg_tb_agenda_sub.mes_agenda,'-',lpad(reg_tb_agenda_sub.dia_agenda,2,'0')))>-1";
  $whereAgendaLocalGeralOCI = " AND ((reg_tb_agenda.disponibilidade_agenda='G') OR (reg_tb_agenda.exclusivo_oci='S' AND $whereOCI))";
}

$sqlAgendaProcedimento = "SELECT COUNT(id_agenda_sub) AS temProcedimento 
FROM reg_tb_agenda_sub 
WHERE (id_procedimento ='$idProcedimento' AND reg_tb_agenda_sub.status_agenda = 'A')";
$stmAgendaProcedimento  = $rsConexao->prepare($sqlAgendaProcedimento);
$stmAgendaProcedimento->execute();
$rsAgendaProcedimento   = $stmAgendaProcedimento->fetch(PDO::FETCH_OBJ);

if ($rsAgendaProcedimento->temProcedimento > 0) {

  $sqlUnidadesVagas = "SELECT reg_tb_agenda_sub.id_agenda_sub,
  reg_tb_agenda.codigoestabelecimento_cnes,
  ucase(tb_estabelecimento.nfantasia_estabelecimento) AS nomeUnidade
  FROM reg_tb_agenda
  INNER JOIN tb_estabelecimento ON (reg_tb_agenda.codigoestabelecimento_cnes=tb_estabelecimento.codigoestabelecimento_cnes)
  INNER JOIN reg_tb_agenda_sub ON (reg_tb_agenda_sub.id_agenda = reg_tb_agenda.id_agenda)
  LEFT OUTER JOIN reg_tb_parametro_profissional ON (reg_tb_parametro_profissional.codigoprofissional_cnes = reg_tb_agenda.codigoprofissional_cnes)
  WHERE (reg_tb_agenda_sub.id_procedimento='$idProcedimento') 
  $whereAgendaLocalGeralOCI
  $whareTipoVaga
  AND (reg_tb_agenda.status_agenda='A')
  AND (reg_tb_agenda_sub.status_agenda='A')
  AND (concat(reg_tb_agenda_sub.ano_agenda,'-',reg_tb_agenda_sub.mes_agenda,'-',lpad(reg_tb_agenda_sub.dia_agenda,2,'0'), ' ', reg_tb_agenda_sub.horario_inicioagenda)>'$diaHoraHoje')
  $whereLimitaDiasAbertura
  AND (reg_tb_agenda_sub.unidade_afastada='N')
  $whereOciosas
  AND (reg_tb_agenda_sub.profissional_afastado='N')
  AND (reg_tb_parametro_profissional.sexo_permitido='A' OR reg_tb_parametro_profissional.sexo_permitido='$sexoPaciente')
  AND (reg_tb_parametro_profissional.idade_maxima>='$idadePaciente' AND reg_tb_parametro_profissional.idade_minima<='$idadePaciente')
  AND (reg_tb_agenda.codigoestabelecimento_cnes IN($idUnidadesReferencia))
  GROUP BY reg_tb_agenda.codigoestabelecimento_cnes
  ORDER BY tb_estabelecimento.nfantasia_estabelecimento";
} else {

  $sqlUnidadesVagas = "SELECT reg_tb_agenda.codigoestabelecimento_cnes, 
  ucase(tb_estabelecimento.nfantasia_estabelecimento) AS nomeUnidade,
  reg_tb_agenda_grupoprocedimento.id_procedimento
  FROM reg_tb_agenda 
  INNER JOIN tb_estabelecimento ON (reg_tb_agenda.codigoestabelecimento_cnes=tb_estabelecimento.codigoestabelecimento_cnes) 
  INNER JOIN reg_tb_agenda_sub ON (reg_tb_agenda_sub.id_agenda = reg_tb_agenda.id_agenda) 
  INNER JOIN reg_tb_agenda_grupoprocedimento ON (reg_tb_agenda_sub.id_agenda = reg_tb_agenda_grupoprocedimento.id_agenda) 
  LEFT OUTER JOIN reg_tb_parametro_profissional ON (reg_tb_parametro_profissional.codigoprofissional_cnes = reg_tb_agenda.codigoprofissional_cnes) 
  WHERE (reg_tb_agenda_sub.id_grupo_procedimento='$idGrupoProcedimento' AND reg_tb_agenda_sub.id_grupo_procedimento!='1') 
  $whereAgendaLocalGeralOCI
  $whareTipoVaga
  AND (reg_tb_agenda.status_agenda='A') 
  AND (reg_tb_agenda_sub.status_agenda='A') 
  AND (concat(reg_tb_agenda_sub.ano_agenda,'-',reg_tb_agenda_sub.mes_agenda,'-',lpad(reg_tb_agenda_sub.dia_agenda,2,'0'), ' ', reg_tb_agenda_sub.horario_inicioagenda)>'$diaHoraHoje') 
  $whereLimitaDiasAbertura
  AND (reg_tb_agenda_sub.unidade_afastada='N') 
  AND (reg_tb_agenda_sub.profissional_afastado='N') 
  AND (reg_tb_parametro_profissional.sexo_permitido='A' OR reg_tb_parametro_profissional.sexo_permitido='$sexoPaciente') 
  AND (reg_tb_parametro_profissional.idade_maxima>='$idadePaciente' AND reg_tb_parametro_profissional.idade_minima<='$idadePaciente') 
  AND (reg_tb_agenda_grupoprocedimento.id_procedimento='$idProcedimento')
  AND (reg_tb_agenda.codigoestabelecimento_cnes IN($idUnidadesReferencia))
  GROUP BY reg_tb_agenda.codigoestabelecimento_cnes 
  ORDER BY tb_estabelecimento.nfantasia_estabelecimento";
}

$stmUnidadesVagas  = $rsConexao->prepare($sqlUnidadesVagas);
$stmUnidadesVagas->execute();

if ($stmUnidadesVagas->rowCount() > 0) {

  $rsUnidadesVagas = $stmUnidadesVagas->fetchAll(PDO::FETCH_ASSOC);
  foreach ($rsUnidadesVagas as $fieldUnidade) {
    $codigoUnidade    = $fieldUnidade['codigoestabelecimento_cnes'];
    $nomeUnidade      = $fieldUnidade['nomeUnidade'];
    $unidadeWhere     = $fieldUnidade['codigoestabelecimento_cnes'];
    if ($fieldUnidade['codigoestabelecimento_cnes'] != $codigoUnidadeHeader) {
      $contadorUnidades = $contadorUnidades + 1;
      if ($contadorUnidades > 1) {
        $styleMarginTop = "style='margin-top:-22px !important;'";
      }
      $htmlRetorno .= "<div id='accordionWrap$contadorUnidades' $styleMarginTop>
      <div class='card collapse-icon accordion-icon-rotate;'>
        <div id='heading42' class='card-header bg-blue' style='padding:10px !important'>
          <a data-toggle='collapse' data-parent='#accordionWrap$contadorUnidades' href='#acordProcedimentos$contadorUnidades' aria-expanded='false' aria-controls='acordProcedimentos$contadorUnidades' class='card-title lead white collapsed'>
            <i class='icofont icofont-hospital'></i> <b>$nomeUnidade</b>
          </a>
        </div>
        <div id='acordProcedimentos$contadorUnidades' role='tabpanel' aria-labelledby='heading42' class='border-blue card-collapse collapse' aria-expanded='false'>
          <div class='card-content'>
            <div class='card-body' style='padding:10px !important; font-weight: bold;'>
              <table>";
      $stmAgendaGrupo = $rsConexao->prepare("SELECT COUNT(id_agenda_sub) AS temProcedimento FROM reg_tb_agenda_sub WHERE id_procedimento='$idProcedimento'");
      $stmAgendaGrupo->execute();
      $rsAgendaGrupo  = $stmAgendaGrupo->fetch(PDO::FETCH_OBJ);
      if ($rsAgendaGrupo->temProcedimento > 0) {
        $sqlListarVagas = "SELECT 'COM PROCEDIMENTO' AS teste,  reg_tb_agenda_sub.id_agenda_sub, 
                    reg_tb_agenda.id_agenda,
                    reg_tb_agenda.codigoestabelecimento_cnes,
                    reg_tb_agenda.status_agenda,
                    reg_tb_agenda.disponibilidade_agenda,
                    reg_tb_agenda.exclusivo_oci,
                    concat(lpad(reg_tb_agenda_sub.dia_agenda,2,'0'),'/',lpad(reg_tb_agenda_sub.mes_agenda,2,'0'),'/',reg_tb_agenda_sub.ano_agenda) as dataAgenda, 
                    concat(reg_tb_agenda_sub.ano_agenda,'-',lpad(reg_tb_agenda_sub.mes_agenda,2,'0'),'-',lpad(reg_tb_agenda_sub.dia_agenda,2,'0')) as diaSemana, 
                    reg_tb_agenda_sub.horario_inicioagenda,
                    ucase(tb_profissional.nome_profissional) AS nomeProfissinoal, 
                    $complementoSQLVagaDisponivel
                    FROM reg_tb_agenda
                    INNER JOIN tb_profissional ON (reg_tb_agenda.codigoprofissional_cnes = tb_profissional.codigoprofissional_cnes)
                    INNER JOIN reg_tb_agenda_sub ON (reg_tb_agenda_sub.id_agenda = reg_tb_agenda.id_agenda) 
                    LEFT OUTER JOIN reg_tb_parametro_profissional ON (reg_tb_parametro_profissional.codigoprofissional_cnes = reg_tb_agenda.codigoprofissional_cnes)
                    WHERE (reg_tb_agenda_sub.id_procedimento='$idProcedimento') 
                    $whereAgendaLocalGeralOCI
                    AND (reg_tb_agenda.codigoestabelecimento_cnes = '$unidadeWhere')
                    AND (reg_tb_agenda.status_agenda = 'A')
                    AND (reg_tb_agenda_sub.status_agenda='A')
                    AND (concat(reg_tb_agenda_sub.ano_agenda,'-',reg_tb_agenda_sub.mes_agenda,'-',reg_tb_agenda_sub.dia_agenda, ' ', reg_tb_agenda_sub.horario_inicioagenda)>'$diaHoraHoje')
                    $whereLimitaDiasAbertura
                    $whereOciosas
                    AND (reg_tb_agenda_sub.profissional_afastado='N')
                    AND (reg_tb_agenda_sub.unidade_afastada='N')
                    AND (reg_tb_parametro_profissional.sexo_permitido='A' OR reg_tb_parametro_profissional.sexo_permitido='$sexoPaciente')
                    AND (reg_tb_parametro_profissional.idade_maxima>='$idadePaciente' AND reg_tb_parametro_profissional.idade_minima<='$idadePaciente')                   
                    $whareTipoVagaDisponivel
                    GROUP BY concat(lpad(reg_tb_agenda_sub.dia_agenda, 2, '0'),'/',lpad(reg_tb_agenda_sub.mes_agenda, 2, '0'),'/',reg_tb_agenda_sub.ano_agenda),
                    concat(reg_tb_agenda_sub.ano_agenda,'-',lpad(reg_tb_agenda_sub.mes_agenda, 2, '0'),'-',lpad(reg_tb_agenda_sub.dia_agenda, 2, '0')),
                    reg_tb_agenda_sub.horario_inicioagenda, 
                    ucase(tb_profissional.nome_profissional),reg_tb_agenda.disponibilidade_agenda                  
                    ORDER BY concat(reg_tb_agenda_sub.ano_agenda,'-',lpad(reg_tb_agenda_sub.mes_agenda,2,'0'),'-',lpad(reg_tb_agenda_sub.dia_agenda,2,'0')) ASC,
                    reg_tb_agenda_sub.horario_inicioagenda ASC";
                } else {
                  $sqlListarVagas = "SELECT 'SEM PROCEDIMENTO' AS teste, reg_tb_agenda_sub.id_agenda_sub, 
                  reg_tb_agenda.id_agenda,
                  reg_tb_agenda.codigoestabelecimento_cnes,
                  reg_tb_agenda.status_agenda,
                  reg_tb_agenda.exclusivo_oci,
                  reg_tb_agenda.disponibilidade_agenda,
                  concat(lpad(reg_tb_agenda_sub.dia_agenda,2,'0'),'/',lpad(reg_tb_agenda_sub.mes_agenda,2,'0'),'/',reg_tb_agenda_sub.ano_agenda) as dataAgenda,
                  concat(reg_tb_agenda_sub.ano_agenda,'-',lpad(reg_tb_agenda_sub.mes_agenda,2,'0'),'-',lpad(reg_tb_agenda_sub.dia_agenda,2,'0')) as diaSemana, 
                  reg_tb_agenda_sub.horario_inicioagenda,
                  ucase(tb_profissional.nome_profissional) AS nomeProfissinoal, 
                  $complementoSQLVagaDisponivel
                  FROM reg_tb_agenda
                  INNER JOIN tb_profissional ON (reg_tb_agenda.codigoprofissional_cnes = tb_profissional.codigoprofissional_cnes)
                  INNER JOIN reg_tb_agenda_sub ON (reg_tb_agenda_sub.id_agenda = reg_tb_agenda.id_agenda) 
                  INNER JOIN reg_tb_agenda_grupoprocedimento ON (reg_tb_agenda_grupoprocedimento.id_agenda = reg_tb_agenda.id_agenda) 
                  LEFT OUTER JOIN reg_tb_parametro_profissional ON (reg_tb_parametro_profissional.codigoprofissional_cnes = reg_tb_agenda.codigoprofissional_cnes)
                  WHERE (reg_tb_agenda_grupoprocedimento.id_grupo_procedimento='$idGrupoProcedimento') 
                  $whereAgendaLocalGeralOCI
                  AND (reg_tb_agenda_grupoprocedimento.id_procedimento='$idProcedimento')
                  AND (reg_tb_agenda.codigoestabelecimento_cnes = '$unidadeWhere')
                  AND (reg_tb_agenda.status_agenda = 'A')
                  AND (reg_tb_agenda_sub.status_agenda='A')
                  AND (concat(reg_tb_agenda_sub.ano_agenda,'-',reg_tb_agenda_sub.mes_agenda,'-',lpad(reg_tb_agenda_sub.dia_agenda,2,'0'), ' ', reg_tb_agenda_sub.horario_inicioagenda)>'$diaHoraHoje')
                  $whereLimitaDiasAbertura
                  $whereOciosas
                  AND (reg_tb_agenda_sub.profissional_afastado='N')
                  AND (reg_tb_agenda_sub.unidade_afastada='N')
                  AND (reg_tb_parametro_profissional.sexo_permitido='A' OR reg_tb_parametro_profissional.sexo_permitido='$sexoPaciente')
                  AND (reg_tb_parametro_profissional.idade_maxima>='$idadePaciente' AND reg_tb_parametro_profissional.idade_minima<='$idadePaciente')
                  $whareTipoVagaDisponivel
                  GROUP BY concat(lpad(reg_tb_agenda_sub.dia_agenda, 2, '0'),'/',lpad(reg_tb_agenda_sub.mes_agenda, 2, '0'),'/',reg_tb_agenda_sub.ano_agenda),
                    concat(reg_tb_agenda_sub.ano_agenda,'-',lpad(reg_tb_agenda_sub.mes_agenda, 2, '0'),'-',lpad(reg_tb_agenda_sub.dia_agenda, 2, '0')),
                    reg_tb_agenda_sub.horario_inicioagenda, 
                    ucase(tb_profissional.nome_profissional), reg_tb_agenda.disponibilidade_agenda
                  ORDER BY concat(reg_tb_agenda_sub.ano_agenda,'-',lpad(reg_tb_agenda_sub.mes_agenda,2,'0'),'-',lpad(reg_tb_agenda_sub.dia_agenda,2,'0')) ASC,
                  reg_tb_agenda_sub.horario_inicioagenda ASC";
              }

              $stmListarVagas = $rsConexao->prepare($sqlListarVagas);
              $stmListarVagas->execute();

              if ($stmListarVagas->rowCount() > 0) {
                $rsListarVagas  = $stmListarVagas->fetchAll(PDO::FETCH_ASSOC);
                foreach ($rsListarVagas as $fieldVagas) {
                  $contadorLinhasVagas  = $contadorLinhasVagas + 1;
                  $nomeProfissinoal = $fieldVagas['nomeProfissinoal'];
                  $idAgenda         = $fieldVagas['id_agenda'];
                  $idAgendaVaga     = $fieldVagas['id_agenda_sub'];
                  $dataAgenda       = $fieldVagas['dataAgenda'];
                  $datavaga         = $fieldVagas['diaSemana'];
                  $diaSemana        = traduzirDiaSemanaAgendamento("retorna-nome-completo", date('l', strtotime($fieldVagas['diaSemana'])));
                  $horarioAgenda    = $fieldVagas['horario_inicioagenda'];
                  $vagasDiponiveis  = $fieldVagas['vagasDiponiveis'];
                  $vagasDiponiveis  = "<span class='quadro-vagas'>$descricaoVagasDiponiveis : <font style='font-size:10pt'>$vagasDiponiveis</font></span>";
                  $agendaDisponivel = $fieldVagas['disponibilidade_agenda'] == "G" ? " <span class='quadro-tipo-agenda-geral'>Agenda Geral</span>" : " <span class='quadro-tipo-agenda-local'>Agenda Local</span>";
                  $exclusivoOCI     = $fieldVagas['exclusivo_oci'];

                  if ($fieldVagas['disponibilidade_agenda'] == "G" && $exclusivoOCI=="S") {
                    $exclusivoOCI = "<span class='quadro-tipo-agenda-oci'>Exclusivo OCI</span>";
                  }else{
                    $exclusivoOCI = "";
                  }


                  if ($dataAgendaCor != $fieldVagas['dataAgenda'] && $contadorLinhasVagas > 1) {
                    $setCorlinhaData = "style='border-top: 2px solid #2ea6f1'";
                  } else {
                    $setCorlinhaData = "style='border-bottom: 1px solid #e4e4e4; border-top: 1px solid #e4e4e4'";
                  }
                  $htmlRetorno .= "<tr $setCorlinhaData>
                    <td align='center' width='20px' height='30px'>
                      <input type='radio' id='checkProcedimento#$idAgenda#$idAgendaVaga#$tipoVaga#$datavaga#$nomeProfissinoal' name='checkProcedimento' class='form-control checkbox-seleciona-procedimento-grupo' onchange='pegarIdVagaSelecionada(this.id)'>
                    </td>
                    <td style='padding-left:10px'>
                      $dataAgenda - $diaSemana - $horarioAgenda - $nomeProfissinoal - $vagasDiponiveis $agendaDisponivel $exclusivoOCI
                    </td>
                    </tr>";
          $dataAgendaCor = $dataAgenda;
        }
      }
      $htmlRetorno .= "</table>
              </div>
            </div>
          </div>
        </div>
      </div>";
    }
    $codigoUnidadeHeader  = $codigoUnidade;
  }
  echo $htmlRetorno;
} else {
  echo "nenhumaVaga";
}
