<?php
session_start();
require("../../database/dbConection.php");
$idUsuarioLogado  = $_SESSION['idUsuarioLogado'];
$unidadeLogada    = $_SESSION['unidadeLogada'];
$dataHoje         = date("Y-m-d");
$opcaoPainel      = $_POST['opcaoPainel'];

switch ($opcaoPainel) {
  
  case 'painel-solicitante':

    # -- carrega solicitações aguardando agendamento
    $sqlSolicitacoes  = "SELECT FORMAT(COUNT(id_solicitacao), 0, 'pt_BR') AS totalRegistros FROM reg_tb_solicitacoes 
    WHERE (id_unidade_cadastrou='$unidadeLogada')
    AND (id_statussolicitacao='2')";
    $stmSolicitacao   = $rsConexao->prepare($sqlSolicitacoes);
    $stmSolicitacao->execute();
    $rsSolicitacao    = $stmSolicitacao->fetch(PDO::FETCH_OBJ);

    # -- carrega solicitações agendadas pendentes de entrega
    /*$sqlAgendados = "SELECT COUNT(id_agendamento) AS totalRegistros FROM reg_tb_agendamentos 
    WHERE (id_unidade_cadastrou='$unidadeLogada')
    AND (id_statussolicitacao='3')";*/
    $sqlAgendados = "SELECT COUNT(reg_tb_agendamentos.id_agendamento) AS totalRegistros
    FROM reg_tb_solicitacoes
    INNER JOIN reg_tb_agendamentos ON (reg_tb_solicitacoes.id_solicitacao = reg_tb_agendamentos.id_solicitacao)
    WHERE (reg_tb_solicitacoes.id_unidade_cadastrou = '$unidadeLogada')
    AND (reg_tb_agendamentos.status_agendamento='A')
    AND (reg_tb_agendamentos.data_atendimento >= '$dataHoje')";
    $stmAgendados   = $rsConexao->prepare($sqlAgendados);
    $stmAgendados->execute();
    $rsAgendados    = $stmAgendados->fetch(PDO::FETCH_OBJ);

    # -- carrega solicitações aguardando análise
    $sqlAnalise = "SELECT COUNT(id_solicitacao) AS totalRegistros FROM reg_tb_solicitacoes 
    WHERE (id_unidade_cadastrou='$unidadeLogada')
    AND (id_statussolicitacao='1')";
    $stmAnalise   = $rsConexao->prepare($sqlAnalise);
    $stmAnalise->execute();
    $rsAnalise    = $stmAnalise->fetch(PDO::FETCH_OBJ);

    # -- carrega solicitações devolvidas
    $sqlDevoldias = "SELECT COUNT(id_solicitacao) AS totalRegistros FROM reg_tb_solicitacoes 
    WHERE (id_unidade_cadastrou='$unidadeLogada')
    AND (id_statussolicitacao='10')";
    $stmDevoldias = $rsConexao->prepare($sqlDevoldias);
    $stmDevoldias->execute();
    $rsDevoldias  = $stmDevoldias->fetch(PDO::FETCH_OBJ);

    # -- carrega solicitações indeferidas
    $sqlIndeferidas = "SELECT COUNT(id_solicitacao) AS totalRegistros FROM reg_tb_solicitacoes 
    WHERE (id_unidade_cadastrou='$unidadeLogada')
    AND (id_statussolicitacao='9')";
    $stmIndeferidas = $rsConexao->prepare($sqlIndeferidas);
    $stmIndeferidas->execute();
    $rsIndeferidas  = $stmIndeferidas->fetch(PDO::FETCH_OBJ);

    echo json_encode([
      'totalSolicitacoesPendentes' => $rsSolicitacao,
      'totalAgendadosEntregar' => $rsAgendados,
      'totalSolicitacoesAnalise' => $rsAnalise,
      'totalSolicitacoesDevolvidas' => $rsDevoldias,
      'totalSolicitacoesIndeferidas' => $rsIndeferidas,
    ]);

  break;

  case "recepcao-senha":
    $dataHoje = date("Y-m-d");
    $sqlDadosSenha = "SELECT 
    (SELECT COUNT(*) 
     FROM reg_tb_painelchamada_senha 
     WHERE date_format(datahora_cadastro,'%Y-%m-%d')='$dataHoje') 
     AS totalCadastrado,   
 
    (SELECT COUNT(*) 
     FROM reg_tb_painelchamada_senha
     WHERE date_format(datahora_cadastro,'%Y-%m-%d')='$dataHoje'
     AND status_senha='AG')
     AS totalAguardando,
    
    (SELECT COUNT(*) 
     FROM reg_tb_painelchamada_senha
     WHERE date_format(datahora_cadastro,'%Y-%m-%d')='$dataHoje'
     AND status_senha='EA')
     AS totalAtendimento";
 
    $stmDadosSenha = $rsConexao->prepare($sqlDadosSenha);
    $stmDadosSenha ->execute();
    $rsDadosSenha  = $stmDadosSenha->fetch(PDO::FETCH_OBJ); 

    echo json_encode([
      'dadosPainelSenha' => $rsDadosSenha
    ]);    
  break;
}
