<?php
session_start();
require("../../database/dbConection.php");

$usuarioLogado    = $_SESSION['idUsuarioLogado'];
$chaveConfirmacao = rand(10000000, 99999999);
$dataHoraRegistro = date('Y-m-d H:i');

$OpcaoAtendimento = $_POST['OpcaoAtendimento'];

switch ($OpcaoAtendimento) {
  case "executante-adicionar-atendimento-extra":
    $dataHoje         = date('Y-m-d');
    $horaAgora        = date("H:i");
    $idPaciente       = $_POST['idPaciente'];
    $idProfissional   = $_POST['idProfissional'];
    $explodeDados     = explode("##", $_POST['idProcedimento']);
    $idProcedimento   = $explodeDados[0];
    $idAgenda         = $explodeDados[1];
    $unidadeLogada    = $_SESSION['unidadeLogada'];

    $stmHorarioAgenda = $rsConexao->prepare("SELECT horario_inicioagenda FROM reg_tb_agenda WHERE id_agenda='$idAgenda'");
    $stmHorarioAgenda->execute();
    $rsHorarioAgenda  = $stmHorarioAgenda->fetch(PDO::FETCH_OBJ);
    $horarioAtendimento = $rsHorarioAgenda->horario_inicioagenda;
    $sqlGravarAtendimento = "INSERT INTO reg_tb_agendamentos_atender(
      id_paciente,
      id_agenda,
      codigoestabelecimento_cnes,
      codigoprofissional_cnes,
      data_atendimento,
      horario_atendimento,
      tipo_atendimento_painel,
      status_atendimento_painel,
      status_atendimento_painel_mostrar,
      hora_confirmacao_painel,
      origem_atendimento
    )VALUES(
      :setPaciente,
      :setAgenda,
      :setEstabelecimento,
      :setProfissional,
      '$dataHoje',
      '$horarioAtendimento',
      'N',
      'Aguardando',
      'Aguardando',
      '$horaAgora',
      'extra'
    )";
    $stmGravarAtendimento = $rsConexao->prepare($sqlGravarAtendimento);
    $stmGravarAtendimento->bindParam(":setPaciente", $idPaciente, PDO::PARAM_STR);
    $stmGravarAtendimento->bindParam(":setAgenda", $idAgenda, PDO::PARAM_STR);
    $stmGravarAtendimento->bindParam(":setEstabelecimento", $unidadeLogada, PDO::PARAM_STR);
    $stmGravarAtendimento->bindParam(":setProfissional", $idProfissional, PDO::PARAM_STR);
    $stmGravarAtendimento->execute();

    # -- carregar lista atualizada -- #
    $htmlRetorno = "";
    $sqlAgendamentos = "SELECT tb_paciente.id_paciente,
    ucase(tb_paciente.nome_paciente) AS nomePaciente,
    TIMESTAMPDIFF(YEAR, tb_paciente.datanasc, NOW()) AS idadePaciente,
    tb_paciente.celular1,
    tb_paciente.celular2,
    tb_paciente.celular3,
    tb_paciente.cns_paciente,
    tb_paciente.sexo,
    tb_paciente.condicaosaude_pcd,
    tb_paciente.condicaosaude_pcddescricao,
    ucase(tb_profissional.nome_profissional) AS nomeProfissional,
    tb_profissional.codigoprofissional_cnes,
    reg_tb_agendamentos.horario_atendimento,
    reg_tb_agendamentos_atender.status_atendimento_painel,
    reg_tb_agendamentos_atender.tipo_atendimento_painel,
    reg_tb_agendamentos_atender.observacao_recepcao_painel,
    reg_tb_agenda.id_agenda
    FROM reg_tb_agenda
    INNER JOIN tb_profissional ON (reg_tb_agenda.codigoprofissional_cnes = tb_profissional.codigoprofissional_cnes)
    INNER JOIN reg_tb_agendamentos ON (reg_tb_agenda.id_agenda = reg_tb_agendamentos.id_agenda)
    INNER JOIN tb_paciente ON (tb_paciente.id_paciente = reg_tb_agendamentos.id_paciente)
    LEFT OUTER JOIN reg_tb_agendamentos_atender ON (reg_tb_agendamentos.id_paciente = reg_tb_agendamentos_atender.id_paciente)
    WHERE (reg_tb_agenda.codigoestabelecimento_cnes = '$unidadeLogada')
    AND (reg_tb_agendamentos.status_agendamento = 'E' OR reg_tb_agendamentos.status_agendamento = 'V' OR reg_tb_agendamentos.status_agendamento = 'A')
    AND (reg_tb_agendamentos.data_atendimento = '$dataHoje')
    GROUP BY tb_paciente.nome_paciente
    ORDER BY reg_tb_agendamentos.horario_atendimento ASC, tb_paciente.nome_paciente ASC";

    $stmAtendimentos = $rsConexao->prepare($sqlAgendamentos);
    $stmAtendimentos->execute();

    if ($stmAtendimentos->rowCount() > 0) {
      $rsAtendimentos = $stmAtendimentos->fetchAll(PDO::FETCH_ASSOC);
      foreach ($rsAtendimentos as $fieldAtendimentos) {
        $idPaciente         = $fieldAtendimentos['id_paciente'];
        $idAgenda           = $fieldAtendimentos['id_agenda'];
        $nomePaciente       = $fieldAtendimentos['nomePaciente'];
        $cnsPaciente        = $fieldAtendimentos['cns_paciente'];
        $idadePaciente      = $fieldAtendimentos['idadePaciente'];
        $sexoPaciente       = $fieldAtendimentos['sexo'] == "M" ? "MASCULINO" : "FEMININO";
        $telefonePaciente   = $fieldAtendimentos['celular1'] != "" ? $fieldAtendimentos['celular1'] : "";
        $telefonePaciente   = $fieldAtendimentos['celular2'] != "" ? $telefonePaciente . "<br>" . $fieldAtendimentos['celular2'] : $telefonePaciente;
        $telefonePaciente   = $fieldAtendimentos['celular3'] != "" ? $telefonePaciente . "<br>" . $fieldAtendimentos['celular3'] : $telefonePaciente;
        $horaAtendimento    = $fieldAtendimentos['horario_atendimento'];
        $chaveHorarioAtend  = str_replace(":", "", $fieldAtendimentos['horario_atendimento']);
        $nomeProfissional   = $fieldAtendimentos['nomeProfissional'];
        $codigoProfissional = $fieldAtendimentos['codigoprofissional_cnes'];
        $descricaoPCD       = $fieldAtendimentos['condicaosaude_pcddescricao'];
        $pacientePCD        = $fieldAtendimentos['condicaosaude_pcd'] == "S" ? $pacientePCD = "- <b><i title='$descricaoPCD' style='color:red; font-size:11pt' class='icofont icofont-paralysis-disability'></i></b>" : "";
        $statusAtendimentoPainel = $fieldAtendimentos['status_atendimento_painel'];

        $tipoAtendimentopainel  = $fieldAtendimentos['tipo_atendimento_painel'];
        $observacaorecepcao     = $fieldAtendimentos['observacao_recepcao_painel'];

        # -- VERIFICAR STATUS DO ATENDIMENTO NO PAINEL --#
        switch ($statusAtendimentoPainel) {
          case "":
            $htmlAtendimentoPainel = "<div class='div-statuPainel-NaoConfirmado'>
            Status: Não Confirmado
          </div>";
            break;
          case "Aguardando":
            $htmlAtendimentoPainel = "<div class='div-statuPainel-Aguardando'>
            Status: $statusAtendimentoPainel
          </div>";
            break;
          case "Em Atendimento":
            $htmlAtendimentoPainel = "<div class='div-statuPainel-EmAtendimento'>
            Status: $statusAtendimentoPainel
          </div>";
            break;
          case "Atendido":
            $htmlAtendimentoPainel = "<div class='div-statuPainel-Atendido'>
            Status: $statusAtendimentoPainel
          </div>";
            break;
        }

        $cmdConfirmarPresenca = 'onClick="confirmarPresenca(' . "'abrir-popup','$idPaciente##$idAgenda##$nomePaciente')" . '"';
        $btnConfirmarPresenca = "<i id='btnConfirma$idPaciente' class='icofont icofont-checked nova_fonte_blue' style='font-size:18pt !important' title='Confirmar presença.' $cmdConfirmarPresenca></i>";

        if ($fieldAtendimentos['status_atendimento_painel'] != "Em Atendimento" && $fieldAtendimentos['status_atendimento_painel'] != "Finalizado") {
          $cmdCancelarConfirmacao = 'onclick="cancelarConfirmacaoPresenca(' . "'$idPaciente')" . '"';
          $btnCancelarConfirmacao = "<i class='icofont icofont-close-squared-alt nova_fonte_delete' style='font-size:17pt !important' title='Cancelar confirmação de presença.' $cmdCancelarConfirmacao></i>";
        } else {
          $btnCancelarConfirmacao = "";
        }

        # -- CARREGAR PROCEDIMENTOS AGENDADOS --#
        $sqlProcedimento = "SELECT reg_tb_procedimento.nome_procedimento,
      reg_tb_agendamentos.id_paciente,
      reg_tb_agendamentos.id_agendamento
      FROM reg_tb_procedimento
      INNER JOIN reg_tb_agendamentos ON (reg_tb_procedimento.id_procedimento = reg_tb_agendamentos.id_procedimento)
      INNER JOIN tb_paciente ON (tb_paciente.id_paciente = reg_tb_agendamentos.id_paciente)
      INNER JOIN reg_tb_agenda ON (reg_tb_agenda.id_agenda = reg_tb_agendamentos.id_agenda)
      INNER JOIN tb_profissional ON (reg_tb_agenda.codigoprofissional_cnes = tb_profissional.codigoprofissional_cnes)
      WHERE (reg_tb_agenda.codigoestabelecimento_cnes='$unidadeLogada')
      AND (reg_tb_agendamentos.status_agendamento='E' OR reg_tb_agendamentos.status_agendamento='V')
      AND (reg_tb_agendamentos.data_atendimento='$dataHoje')        
      AND (reg_tb_agendamentos.horario_atendimento='$horaAtendimento')        
      AND (reg_tb_agendamentos.id_paciente='$idPaciente')
      GROUP BY (reg_tb_procedimento.nome_procedimento)
      ORDER BY (reg_tb_procedimento.nome_procedimento)";
        $stmProcedimento = $rsConexao->prepare($sqlProcedimento);
        $stmProcedimento->execute();
        if ($stmProcedimento->rowCount()) {
          $rsProcedimento = $stmProcedimento->fetchAll(PDO::FETCH_ASSOC);
          $nomeProcedimento    = "";
          foreach ($rsProcedimento as $fieldProcedimento) {
            if ($nomeProcedimento == "") {
              $nomeProcedimento  = "&bull; " . mb_strtoupper($fieldProcedimento['nome_procedimento']);
            } else {
              $nomeProcedimento  = "$nomeProcedimento<br>&bull; " . mb_strtoupper($fieldProcedimento['nome_procedimento']);
            }
          }
        }

        echo "<tr style='background-color:#fff'>
        <td align='center' style='width:100px'>
          $btnConfirmarPresenca
          $btnCancelarConfirmacao
        </td>
        <td align='center' style='font-size:10pt;width:40px'>$horaAtendimento</td>
        <td style='font-size:9pt; padding:8px;'>
          <b>
            <table width='100%' style='background-color:transparent !important;'>
              <tr>
                <td style='background-color:transparent; border:0px; padding:0px; font-size:11pt'>
                  Paciente: $nomePaciente $pacientePCD
                </td>
                <td style='background-color:transparent; border:0px; padding:0px; text-align:right; font-size:9pt;'>
                  <table align='right'>
                    <tr>
                      <td style='padding:2px; border:0px' id='tdStatus$idPaciente-$idAgenda'>
                        $htmlAtendimentoPainel
                      </td>
                  </tr>
                </table>
              </td>
            </tr>
          </table>              
          <hr style='margin-top:1px; border-top: 1px dashed #860000'>
          <div style='width:auto; padding:2px; color:#027fbe;margin-top:-10px'>
            Profissional: $nomeProfissional
          </div>
          <div style='width:auto; padding:2px; color:#0d5e03'>
              $nomeProcedimento
          </div>
        </b>
      </td>
        <td align='center' style='font-size:9pt; width:100px'>$cnsPaciente</td>
        <td align='center' style='font-size:9pt; width:50px'>$idadePaciente</td>
        <td align='center' style='font-size:9pt; width:80px'>$sexoPaciente</td>
        <td align='center' style='font-size:8pt; width:100px'>$telefonePaciente</td>
    </tr>";
      }
    }
    # -- exibir pacientes de atendimento extra -- #
    $sqlAtendimentoExtra = "SELECT tb_paciente.id_paciente,
    ucase(tb_paciente.nome_paciente) AS nomePaciente,
    tb_paciente.cns_paciente,
    timestampdiff(year,tb_paciente.datanasc,curdate()) AS idadePaciente,
    tb_paciente.sexo,
    tb_paciente.celular1,
    tb_paciente.celular2,
    tb_paciente.celular3,
    tb_paciente.condicaosaude_pcd,
    tb_paciente.condicaosaude_pcddescricao,
    ucase(tb_profissional.nome_profissional) AS nomeProfissional,
    tb_profissional.codigoprofissional_cnes,
    reg_tb_agendamentos_atender.id_agenda,
    reg_tb_agendamentos_atender.status_atendimento_painel,
    reg_tb_agendamentos_atender.tipo_atendimento_painel,
    reg_tb_agendamentos_atender.observacao_recepcao_painel,
    reg_tb_agendamentos_atender.horario_atendimento
    FROM tb_paciente
    INNER JOIN reg_tb_agendamentos_atender ON (tb_paciente.id_paciente = reg_tb_agendamentos_atender.id_paciente)
    INNER JOIN tb_profissional ON (tb_profissional.codigoprofissional_cnes = reg_tb_agendamentos_atender.codigoprofissional_cnes)
    WHERE (reg_tb_agendamentos_atender.codigoestabelecimento_cnes = '$unidadeLogada')
    AND (reg_tb_agendamentos_atender.data_atendimento = '$dataHoje')
    AND (reg_tb_agendamentos_atender.origem_atendimento = 'extra')
    GROUP BY tb_paciente.nome_paciente
    ORDER BY reg_tb_agendamentos_atender.horario_atendimento ASC, tb_paciente.nome_paciente ASC";
    $stmAtendimentoExtra = $rsConexao->prepare($sqlAtendimentoExtra);
    $stmAtendimentoExtra->execute();

    if ($stmAtendimentoExtra->rowCount() > 0) {
      $rsAtendimentoExtra = $stmAtendimentoExtra->fetchAll(PDO::FETCH_ASSOC);
      foreach ($rsAtendimentoExtra as $fieldAtendimentoExtra) {
        $idPaciente         = $fieldAtendimentoExtra['id_paciente'];
        $idAgenda           = $fieldAtendimentoExtra['id_agenda'];
        $nomePaciente       = $fieldAtendimentoExtra['nomePaciente'];
        $cnsPaciente        = $fieldAtendimentoExtra['cns_paciente'];
        $idadePaciente      = $fieldAtendimentoExtra['idadePaciente'];
        $sexoPaciente       = $fieldAtendimentoExtra['sexo'] == "M" ? "MASCULINO" : "FEMININO";
        $telefonePaciente   = $fieldAtendimentoExtra['celular1'] != "" ? $fieldAtendimentoExtra['celular1'] : "";
        $telefonePaciente   = $fieldAtendimentoExtra['celular2'] != "" ? $telefonePaciente . "<br>" . $fieldAtendimentoExtra['celular2'] : $telefonePaciente;
        $telefonePaciente   = $fieldAtendimentoExtra['celular3'] != "" ? $telefonePaciente . "<br>" . $fieldAtendimentoExtra['celular3'] : $telefonePaciente;
        $horaAtendimento    = $fieldAtendimentoExtra['horario_atendimento'];
        $nomeProfissional   = $fieldAtendimentoExtra['nomeProfissional'];
        $codigoProfissional = $fieldAtendimentoExtra['codigoprofissional_cnes'];
        $descricaoPCD       = $fieldAtendimentoExtra['condicaosaude_pcddescricao'];
        $pacientePCD        = $fieldAtendimentoExtra['condicaosaude_pcd'] == "S" ? $pacientePCD = "- <b><i title='$descricaoPCD' style='color:red; font-size:11pt' class='icofont icofont-paralysis-disability'></i></b>" : "";
        $statusAtendimentoPainel = $fieldAtendimentoExtra['status_atendimento_painel'];

        $tipoAtendimentopainel  = $fieldAtendimentoExtra['tipo_atendimento_painel'];
        $observacaorecepcao     = $fieldAtendimentoExtra['observacao_recepcao_painel'];

        # -- VERIFICAR STATUS DO ATENDIMENTO NO PAINEL --#
        switch ($statusAtendimentoPainel) {
          case "":
            $htmlAtendimentoPainel = "<div class='div-statuPainel-NaoConfirmado'>
            Status: Não Confirmado
          </div>";
            break;
          case "Aguardando":
            $htmlAtendimentoPainel = "<div class='div-statuPainel-Aguardando'>
            Status: $statusAtendimentoPainel
          </div>";
            break;
          case "Em Atendimento":
            $htmlAtendimentoPainel = "<div class='div-statuPainel-EmAtendimento'>
            Status: $statusAtendimentoPainel
          </div>";
            break;
          case "Atendido":
            $htmlAtendimentoPainel = "<div class='div-statuPainel-Atendido'>
            Status: $statusAtendimentoPainel
          </div>";
            break;
        }

        $cmdConfirmarPresenca = 'onClick="confirmarPresenca(' . "'abrir-popup','$idPaciente##$idAgenda##$nomePaciente')" . '"';
        $btnConfirmarPresenca = "<i id='btnConfirma$idPaciente' class='icofont icofont-checked nova_fonte_blue' style='font-size:18pt !important' title='Confirmar presença.' $cmdConfirmarPresenca></i>";

        if ($fieldAtendimentoExtra['status_atendimento_painel'] != "Em Atendimento" && $fieldAtendimentoExtra['status_atendimento_painel'] != "Finalizado") {
          $cmdCancelarConfirmacao = 'onclick="cancelarConfirmacaoPresenca(' . "'$idPaciente')" . '"';
          $btnCancelarConfirmacao = "<i class='icofont icofont-close-squared-alt nova_fonte_delete' style='font-size:17pt !important' title='Cancelar confirmação de presença.' $cmdCancelarConfirmacao></i>";
        } else {
          $btnCancelarConfirmacao = "";
        }

        echo "<tr style='background-color:#fde3e3'>
          <td align='center'>
            $btnConfirmarPresenca
            $btnCancelarConfirmacao
          </td>
          <td align='center' style='font-size:10pt'>$horaAtendimento</td>
          <td style='font-size:9pt; padding:8px;'>
            <b>
              <table width='100%' style='background-color:transparent !important;'>
                <tr>
                  <td style='background-color:#fde3e3; border:0px; padding:0px; font-size:11pt'>
                    Paciente: $nomePaciente $pacientePCD - <font color='#860000'><b>EXTRA</b></font>
                  </td>                
                  <td style='background-color:#fde3e3; border:0px; padding:0px; text-align:right; font-size:9pt;'>
                    <table align='right'>
                      <tr>
                        <td style='padding:2px; border:0px;background-color:#fde3e3' id='tdStatus$idPaciente-$idAgenda'>
                          $htmlAtendimentoPainel
                        </td>
                    </tr>
                  </table>                    
                </td>
              </tr>
            </table>              
            <hr style='margin-top:1px; border-top: 1px dashed #860000'>
            <div style='width:auto; padding:2px; color:#027fbe;margin-top:-10px'>
              Profissional: $nomeProfissional
            </div>
          </b>
        </td>
        <td align='center' style='font-size:9pt'>$cnsPaciente</td>
        <td align='center' style='font-size:9pt'>$idadePaciente</td>
        <td align='center' style='font-size:9pt'>$sexoPaciente</td>
        <td align='center' style='font-size:8pt'>$telefonePaciente</td>
      </tr>";
      }
    }
    break;

  case "agendamentos-executante-painel-atualizastatus":
    $cpfValidaProfissional = $_SESSION['cpfValidaProfissional'];
    $sqlAgendamentos = "SELECT tb_paciente.id_paciente,
    ucase(tb_paciente.nome_paciente) AS nomePaciente,
    TIMESTAMPDIFF(YEAR, tb_paciente.datanasc, NOW()) AS idadePaciente,
    tb_paciente.celular1,
    tb_paciente.celular2,
    tb_paciente.celular3,
    tb_paciente.cns_paciente,
    tb_paciente.sexo,
    tb_paciente.condicaosaude_pcd,
    tb_paciente.condicaosaude_pcddescricao,
    ucase(tb_profissional.nome_profissional) AS nomeProfissional,
    tb_profissional.codigoprofissional_cnes,
    reg_tb_agendamentos.horario_atendimento,
    reg_tb_agendamentos_atender.status_atendimento_painel,
    reg_tb_agendamentos_atender.tipo_atendimento_painel,
    reg_tb_agendamentos_atender.observacao_recepcao_painel,
    reg_tb_agenda.id_agenda
    FROM reg_tb_agenda
    INNER JOIN tb_profissional ON (reg_tb_agenda.codigoprofissional_cnes = tb_profissional.codigoprofissional_cnes)
    INNER JOIN reg_tb_agendamentos ON (reg_tb_agenda.id_agenda = reg_tb_agendamentos.id_agenda)
    INNER JOIN tb_paciente ON (tb_paciente.id_paciente = reg_tb_agendamentos.id_paciente)
    LEFT OUTER JOIN reg_tb_agendamentos_atender ON (reg_tb_agendamentos.id_paciente = reg_tb_agendamentos_atender.id_paciente)
    WHERE (reg_tb_agenda.codigoestabelecimento_cnes = '$unidadeLogada')
    AND (reg_tb_agendamentos.status_agendamento = 'E' OR reg_tb_agendamentos.status_agendamento = 'V' OR reg_tb_agendamentos.status_agendamento = 'A')
    AND (reg_tb_agendamentos.data_atendimento = '$dataHoje')
    GROUP BY tb_paciente.nome_paciente
    ORDER BY reg_tb_agendamentos.horario_atendimento ASC, tb_paciente.nome_paciente ASC";

    $stmAtendimentos = $rsConexao->prepare($sqlAgendamentos);
    $stmAtendimentos->execute();

    if ($stmAtendimentos->rowCount() > 0) {
      $rsAtendimentos = $stmAtendimentos->fetchAll(PDO::FETCH_ASSOC);
      foreach ($rsAtendimentos as $fieldAtendimentos) {
        $idPaciente         = $fieldAtendimentos['id_paciente'];
        $idAgenda           = $fieldAtendimentos['id_agenda'];
        $nomePaciente       = $fieldAtendimentos['nomePaciente'];
        $cnsPaciente        = $fieldAtendimentos['cns_paciente'];
        $idadePaciente      = $fieldAtendimentos['idadePaciente'];
        $sexoPaciente       = $fieldAtendimentos['sexo'] == "M" ? "MASCULINO" : "FEMININO";
        $telefonePaciente   = $fieldAtendimentos['celular1'] != "" ? $fieldAtendimentos['celular1'] : "";
        $telefonePaciente   = $fieldAtendimentos['celular2'] != "" ? $telefonePaciente . "<br>" . $fieldAtendimentos['celular2'] : $telefonePaciente;
        $telefonePaciente   = $fieldAtendimentos['celular3'] != "" ? $telefonePaciente . "<br>" . $fieldAtendimentos['celular3'] : $telefonePaciente;
        $horaAtendimento    = $fieldAtendimentos['horario_atendimento'];
        $chaveHorarioAtend  = str_replace(":", "", $fieldAtendimentos['horario_atendimento']);
        $nomeProfissional   = $fieldAtendimentos['nomeProfissional'];
        $codigoProfissional = $fieldAtendimentos['codigoprofissional_cnes'];
        $descricaoPCD       = $fieldAtendimentos['condicaosaude_pcddescricao'];
        $pacientePCD        = $fieldAtendimentos['condicaosaude_pcd'] == "S" ? $pacientePCD = "- <b><i title='$descricaoPCD' style='color:red; font-size:11pt' class='icofont icofont-paralysis-disability'></i></b>" : "";
        $statusAtendimentoPainel = $fieldAtendimentos['status_atendimento_painel'];

        $tipoAtendimentopainel  = $fieldAtendimentos['tipo_atendimento_painel'];
        $observacaorecepcao     = $fieldAtendimentos['observacao_recepcao_painel'];

        # -- VERIFICAR STATUS DO ATENDIMENTO NO PAINEL --#
        switch ($statusAtendimentoPainel) {
          case "":
            $htmlAtendimentoPainel = "<div class='div-statuPainel-NaoConfirmado'>
            Status: Não Confirmado
          </div>";
            break;
          case "Aguardando":
            $htmlAtendimentoPainel = "<div class='div-statuPainel-Aguardando'>
            Status: $statusAtendimentoPainel
          </div>";
            break;
          case "Em Atendimento":
            $htmlAtendimentoPainel = "<div class='div-statuPainel-EmAtendimento'>
            Status: $statusAtendimentoPainel
          </div>";
            break;
          case "Atendido":
            $htmlAtendimentoPainel = "<div class='div-statuPainel-Atendido'>
            Status: $statusAtendimentoPainel
          </div>";
            break;
        }

        $cmdConfirmarPresenca = 'onClick="confirmarPresenca(' . "'abrir-popup','$idPaciente##$idAgenda##$nomePaciente')" . '"';
        $btnConfirmarPresenca = "<i id='btnConfirma$idPaciente' class='icofont icofont-checked nova_fonte_blue' style='font-size:18pt !important' title='Confirmar presença.' $cmdConfirmarPresenca></i>";

        if ($fieldAtendimentos['status_atendimento_painel'] != "Em Atendimento" && $fieldAtendimentos['status_atendimento_painel'] != "Finalizado") {
          $cmdCancelarConfirmacao = 'onclick="cancelarConfirmacaoPresenca(' . "'$idPaciente')" . '"';
          $btnCancelarConfirmacao = "<i class='icofont icofont-close-squared-alt nova_fonte_delete' style='font-size:17pt !important' title='Cancelar confirmação de presença.' $cmdCancelarConfirmacao></i>";
        } else {
          $btnCancelarConfirmacao = "";
        }

        # -- CARREGAR PROCEDIMENTOS AGENDADOS --#
        $sqlProcedimento = "SELECT reg_tb_procedimento.nome_procedimento,
      reg_tb_agendamentos.id_paciente,
      reg_tb_agendamentos.id_agendamento
      FROM reg_tb_procedimento
      INNER JOIN reg_tb_agendamentos ON (reg_tb_procedimento.id_procedimento = reg_tb_agendamentos.id_procedimento)
      INNER JOIN tb_paciente ON (tb_paciente.id_paciente = reg_tb_agendamentos.id_paciente)
      INNER JOIN reg_tb_agenda ON (reg_tb_agenda.id_agenda = reg_tb_agendamentos.id_agenda)
      INNER JOIN tb_profissional ON (reg_tb_agenda.codigoprofissional_cnes = tb_profissional.codigoprofissional_cnes)
      WHERE (reg_tb_agenda.codigoestabelecimento_cnes='$unidadeLogada')
      AND (reg_tb_agendamentos.status_agendamento='E' OR reg_tb_agendamentos.status_agendamento='V')
      AND (reg_tb_agendamentos.data_atendimento='$dataHoje')        
      AND (reg_tb_agendamentos.horario_atendimento='$horaAtendimento')        
      AND (reg_tb_agendamentos.id_paciente='$idPaciente')
      GROUP BY (reg_tb_procedimento.nome_procedimento)
      ORDER BY (reg_tb_procedimento.nome_procedimento)";
        $stmProcedimento = $rsConexao->prepare($sqlProcedimento);
        $stmProcedimento->execute();
        if ($stmProcedimento->rowCount()) {
          $rsProcedimento = $stmProcedimento->fetchAll(PDO::FETCH_ASSOC);
          $nomeProcedimento    = "";
          foreach ($rsProcedimento as $fieldProcedimento) {
            if ($nomeProcedimento == "") {
              $nomeProcedimento  = "&bull; " . mb_strtoupper($fieldProcedimento['nome_procedimento']);
            } else {
              $nomeProcedimento  = "$nomeProcedimento<br>&bull; " . mb_strtoupper($fieldProcedimento['nome_procedimento']);
            }
          }
        }

        $htmlRetorno .= "<tr style='background-color:#fff'>
        <td align='center' style='width:100px'>
          $btnConfirmarPresenca
          $btnCancelarConfirmacao
        </td>
        <td align='center' style='font-size:10pt;width:40px'>$horaAtendimento</td>
        <td style='font-size:9pt; padding:8px;'>
          <b>
            <table width='100%' style='background-color:transparent !important;'>
              <tr>
                <td style='background-color:transparent; border:0px; padding:0px; font-size:11pt'>
                  Paciente: $nomePaciente $pacientePCD
                </td>
                <td style='background-color:transparent; border:0px; padding:0px; text-align:right; font-size:9pt;'>
                  <table align='right'>
                    <tr>
                      <td style='padding:2px; border:0px' id='tdStatus$idPaciente-$idAgenda'>
                        $htmlAtendimentoPainel
                      </td>
                  </tr>
                </table>
              </td>
            </tr>
          </table>              
          <hr style='margin-top:1px; border-top: 1px dashed #860000'>
          <div style='width:auto; padding:2px; color:#027fbe;margin-top:-10px'>
            Profissional: $nomeProfissional
          </div>
          <div style='width:auto; padding:2px; color:#0d5e03'>
              $nomeProcedimento
          </div>
        </b>
      </td>
        <td align='center' style='font-size:9pt; width:100px'>$cnsPaciente</td>
        <td align='center' style='font-size:9pt; width:50px'>$idadePaciente</td>
        <td align='center' style='font-size:9pt; width:80px'>$sexoPaciente</td>
        <td align='center' style='font-size:8pt; width:100px'>$telefonePaciente</td>
    </tr>";
      }
    }
    # -- exibir pacientes de atendimento extra -- #
    $sqlAtendimentoExtra = "SELECT tb_paciente.id_paciente,
    ucase(tb_paciente.nome_paciente) AS nomePaciente,
    tb_paciente.cns_paciente,
    timestampdiff(year,tb_paciente.datanasc,curdate()) AS idadePaciente,
    tb_paciente.sexo,
    tb_paciente.celular1,
    tb_paciente.celular2,
    tb_paciente.celular3,
    tb_paciente.condicaosaude_pcd,
    tb_paciente.condicaosaude_pcddescricao,
    ucase(tb_profissional.nome_profissional) AS nomeProfissional,
    tb_profissional.codigoprofissional_cnes,
    reg_tb_agendamentos_atender.id_agenda,
    reg_tb_agendamentos_atender.status_atendimento_painel,
    reg_tb_agendamentos_atender.tipo_atendimento_painel,
    reg_tb_agendamentos_atender.observacao_recepcao_painel,
    reg_tb_agendamentos_atender.horario_atendimento
    FROM tb_paciente
    INNER JOIN reg_tb_agendamentos_atender ON (tb_paciente.id_paciente = reg_tb_agendamentos_atender.id_paciente)
    INNER JOIN tb_profissional ON (tb_profissional.codigoprofissional_cnes = reg_tb_agendamentos_atender.codigoprofissional_cnes)
    WHERE (reg_tb_agendamentos_atender.codigoestabelecimento_cnes = '$unidadeLogada')
    AND (reg_tb_agendamentos_atender.data_atendimento = '$dataHoje')
    AND (reg_tb_agendamentos_atender.origem_atendimento = 'extra')
    GROUP BY tb_paciente.nome_paciente
    ORDER BY reg_tb_agendamentos_atender.horario_atendimento ASC, tb_paciente.nome_paciente ASC";
    $stmAtendimentoExtra = $rsConexao->prepare($sqlAtendimentoExtra);
    $stmAtendimentoExtra->execute();

    if ($stmAtendimentoExtra->rowCount() > 0) {
      $rsAtendimentoExtra = $stmAtendimentoExtra->fetchAll(PDO::FETCH_ASSOC);
      foreach ($rsAtendimentoExtra as $fieldAtendimentoExtra) {
        $idPaciente         = $fieldAtendimentoExtra['id_paciente'];
        $idAgenda           = $fieldAtendimentoExtra['id_agenda'];
        $nomePaciente       = $fieldAtendimentoExtra['nomePaciente'];
        $cnsPaciente        = $fieldAtendimentoExtra['cns_paciente'];
        $idadePaciente      = $fieldAtendimentoExtra['idadePaciente'];
        $sexoPaciente       = $fieldAtendimentoExtra['sexo'] == "M" ? "MASCULINO" : "FEMININO";
        $telefonePaciente   = $fieldAtendimentoExtra['celular1'] != "" ? $fieldAtendimentoExtra['celular1'] : "";
        $telefonePaciente   = $fieldAtendimentoExtra['celular2'] != "" ? $telefonePaciente . "<br>" . $fieldAtendimentoExtra['celular2'] : $telefonePaciente;
        $telefonePaciente   = $fieldAtendimentoExtra['celular3'] != "" ? $telefonePaciente . "<br>" . $fieldAtendimentoExtra['celular3'] : $telefonePaciente;
        $horaAtendimento    = $fieldAtendimentoExtra['horario_atendimento'];
        $nomeProfissional   = $fieldAtendimentoExtra['nomeProfissional'];
        $codigoProfissional = $fieldAtendimentoExtra['codigoprofissional_cnes'];
        $descricaoPCD       = $fieldAtendimentoExtra['condicaosaude_pcddescricao'];
        $pacientePCD        = $fieldAtendimentoExtra['condicaosaude_pcd'] == "S" ? $pacientePCD = "- <b><i title='$descricaoPCD' style='color:red; font-size:11pt' class='icofont icofont-paralysis-disability'></i></b>" : "";
        $statusAtendimentoPainel = $fieldAtendimentoExtra['status_atendimento_painel'];

        $tipoAtendimentopainel  = $fieldAtendimentoExtra['tipo_atendimento_painel'];
        $observacaorecepcao     = $fieldAtendimentoExtra['observacao_recepcao_painel'];

        # -- VERIFICAR STATUS DO ATENDIMENTO NO PAINEL --#
        switch ($statusAtendimentoPainel) {
          case "":
            $htmlAtendimentoPainel = "<div class='div-statuPainel-NaoConfirmado'>
            Status: Não Confirmado
          </div>";
            break;
          case "Aguardando":
            $htmlAtendimentoPainel = "<div class='div-statuPainel-Aguardando'>
            Status: $statusAtendimentoPainel
          </div>";
            break;
          case "Em Atendimento":
            $htmlAtendimentoPainel = "<div class='div-statuPainel-EmAtendimento'>
            Status: $statusAtendimentoPainel
          </div>";
            break;
          case "Atendido":
            $htmlAtendimentoPainel = "<div class='div-statuPainel-Atendido'>
            Status: $statusAtendimentoPainel
          </div>";
            break;
        }

        $cmdConfirmarPresenca = 'onClick="confirmarPresenca(' . "'abrir-popup','$idPaciente##$idAgenda##$nomePaciente')" . '"';
        $btnConfirmarPresenca = "<i id='btnConfirma$idPaciente' class='icofont icofont-checked nova_fonte_blue' style='font-size:18pt !important' title='Confirmar presença.' $cmdConfirmarPresenca></i>";

        if ($fieldAtendimentoExtra['status_atendimento_painel'] != "Em Atendimento" && $fieldAtendimentoExtra['status_atendimento_painel'] != "Finalizado") {
          $cmdCancelarConfirmacao = 'onclick="cancelarConfirmacaoPresenca(' . "'$idPaciente')" . '"';
          $btnCancelarConfirmacao = "<i class='icofont icofont-close-squared-alt nova_fonte_delete' style='font-size:17pt !important' title='Cancelar confirmação de presença.' $cmdCancelarConfirmacao></i>";
        } else {
          $btnCancelarConfirmacao = "";
        }

        $htmlRetorno .= "<tr style='background-color:#fde3e3'>
          <td align='center'>
            $btnConfirmarPresenca
            $btnCancelarConfirmacao
          </td>
          <td align='center' style='font-size:10pt'>$horaAtendimento</td>
          <td style='font-size:9pt; padding:8px;'>
            <b>
              <table width='100%' style='background-color:transparent !important;'>
                <tr>
                  <td style='background-color:#fde3e3; border:0px; padding:0px; font-size:11pt'>
                    Paciente: $nomePaciente $pacientePCD - <font color='#860000'><b>EXTRA</b></font>
                  </td>                
                  <td style='background-color:#fde3e3; border:0px; padding:0px; text-align:right; font-size:9pt;'>
                    <table align='right'>
                      <tr>
                        <td style='padding:2px; border:0px;background-color:#fde3e3' id='tdStatus$idPaciente-$idAgenda'>
                          $htmlAtendimentoPainel
                        </td>
                    </tr>
                  </table>                    
                </td>
              </tr>
            </table>              
            <hr style='margin-top:1px; border-top: 1px dashed #860000'>
            <div style='width:auto; padding:2px; color:#027fbe;margin-top:-10px'>
              Profissional: $nomeProfissional
            </div>
          </b>
        </td>
        <td align='center' style='font-size:9pt'>$cnsPaciente</td>
        <td align='center' style='font-size:9pt'>$idadePaciente</td>
        <td align='center' style='font-size:9pt'>$sexoPaciente</td>
        <td align='center' style='font-size:8pt'>$telefonePaciente</td>
      </tr>";
      }
    }
    echo $htmlRetorno;
    break;
}
