<?php
require '../conexao/conexao.php';

//$mes = '09';
//$ano = '2023';
//$filial = '2,4';
$vendedor = null;
$ano = $_GET['ano'] ?? null;
$mes = $_GET['mes'] ?? null;
$filial = $_GET['filial'] ?? null;

//Todal QTD Requisições
$qry_qtdrequis = "Select

count(A1.CODIGO) as soma

from ATENDIMENTO_A1 A1
inner join CLIENTE CL ON A1.CODIGO_CLIENTE = CL.CODIGO
inner join MEDICO ME ON A1.CODIGO_MEDICO = ME.CODIGO
where A1.TIPO_ATENDIMENTO = 1";

if (!empty($operacoes) && $operacoes != "NULL") {
  $qry_qtdrequis .= " AND A1.codigo_tipooperacao NOT IN ($operacoes)";
  // AND A1.codigo_tipooperacao NOT IN (5, 159, 174, 184, 185, 186, 187, 188, 190, 216, 221, 234, 235, 236, 237, 242, 246, 261, 296, 297)
}


// Adicionando condição de ano, se houver
if ($ano && $ano != "Todos") {
  $qry_qtdrequis .= " AND EXTRACT(YEAR FROM A1.aviada_dt) = " . intval($ano);
}

// Adicionando condição de mês, se houver
if ($mes && $mes != "Todos") {
  $qry_qtdrequis .= " AND EXTRACT(MONTH FROM A1.aviada_dt) = " . intval($mes);
}
if (!empty($periodo) && $periodo != "mes") {
  if ($periodo == 1) {
    $qry_qtdrequis .= " AND EXTRACT(DAY FROM A1.aviada_dt)  <= 15 ";
  } elseif ($periodo == 2) {
    $qry_qtdrequis .= " AND EXTRACT(DAY FROM A1.aviada_dt)  > 15 ";
  }
}
if (!empty($semana)) {
  if ($semana != "mes") {
    $qry_qtdrequis .= " AND  A1.aviada_dt BETWEEN '$data_inicio' AND '$data_fim'";
  }
}
if ($filial && $filial != "Todos") {
  // Verifica se $filial é uma string e não um array
  if (is_string($filial)) {
    // Certifique-se de que os valores sejam inteiros
    $filial = implode(",", array_map('intval', explode(",", $filial))); // Converte a string em array e depois para string separada por vírgulas
  }
  // Adiciona a condição de filial à consulta
  $qry_qtdrequis .= " AND A1.aviada_lj IN ($filial)";
}


$qryqtdrequis = ibase_query($connection, $qry_qtdrequis);
$row100 = ibase_fetch_assoc($qryqtdrequis);
$qtdrequis = $row100["SOMA"];
//echo $qry_qtdrequis;
//QTD Unids Marca Propria
$qry_qtdmarca = "SELECT 
  count(A1.CODIGO) as soma

           FROM atendimento_a3 A3
           INNER JOIN atendimento_a1 A1 ON A3.codigo_atend_a1 = A1.codigo
           INNER JOIN estoque_geral EG ON A3.codigo_produto = EG.codigo
           INNER JOIN medico MD ON MD.codigo = A1.codigo_medico
           LEFT JOIN medico_cr CR ON CR.codigo = MD.codigo_conselho_regional
           WHERE A1.tipo_atendimento = 2
               AND A3.excluirproduto_cf IS NULL
               AND A1.cancelamento_lj IS NULL
               AND A3.QUANTIDADE > 0
               AND A1.PAGAR_COMISSAO_FUNCIONARIO = '-1'
               AND A1.STATUS_MOV = '-1'";

if (!empty($operacoes) && $operacoes != "NULL") {
  $qry_qtdmarca .= " AND A1.codigo_tipooperacao NOT IN ($operacoes)";
  // AND A1.codigo_tipooperacao NOT IN (5, 159, 174, 184, 185, 186, 187, 188, 190, 216, 221, 234, 235, 236, 237, 242, 246, 261, 296, 297)
}

$qry_qtdmarca .= "AND (A3.codigo_produto IN ('3024873', '3025044') OR EG.codigo_estoque_classificacao IN (300002)) ";

if ($ano && $ano != "Todos") {
  $qry_qtdmarca .= " AND EXTRACT(YEAR FROM A1.entregue_dt) = " . intval($ano);
}
if ($mes && $mes != "Todos") {
  $qry_qtdmarca .= " AND EXTRACT(MONTH FROM A1.entregue_dt) = " . intval($mes);
}
if (!empty($periodo) && $periodo != "mes") {
  if ($periodo == 1) {
    $qry_qtdmarca .= " AND EXTRACT(DAY FROM A1.entregue_dt)  <= 15 ";
  } elseif ($periodo == 2) {
    $qry_qtdmarca .= " AND EXTRACT(DAY FROM A1.entregue_dt)  > 15 ";
  }
}
if (!empty($semana)) {
  if ($semana != "mes") {
    $qry_qtdmarca .= " AND  A1.entregue_dt BETWEEN '$data_inicio' AND '$data_fim'";
  }
}
if ($filial && $filial != "Todos") {
  $qry_qtdmarca .= " AND A1.aviada_lj in (" . ($filial) . ")";
}

//echo $qry_qtdmarca;

$qryqtdmarca = ibase_query($connection, $qry_qtdmarca);
$row101 = ibase_fetch_assoc($qryqtdmarca);
$qtdmarca = $row101["SOMA"];

//QTD Unids Marca Propria + Revenda
$qry_qtdmarcarevendaproria = "SELECT
  count(A1.CODIGO) as soma
 from ATENDIMENTO_A1 A1
  left join UTIL_REL_AG1 (1) AG ON AG.AG1_OP > 0
  inner join FUNCIONARIO FU ON FU.CODIGO = IIF(AG.AG1_OP = 1, A1.CODIGO_FUNCIONARIO_COMISSAO, A1.AVIADA_CF)
  WHERE A1.TIPO_ATENDIMENTO = 2";

if (!empty($operacoes) && $operacoes != "NULL") {
  $qry_qtdmarcarevendaproria .= " AND A1.codigo_tipooperacao NOT IN ($operacoes)";
  // AND A1.codigo_tipooperacao NOT IN (5, 159, 174, 184, 185, 186, 187, 188, 190, 216, 221, 234, 235, 236, 237, 242, 246, 261, 296, 297)
}


if ($ano && $ano != "Todos") {
  $qry_qtdmarcarevendaproria .= " AND EXTRACT(YEAR FROM A1.entregue_dt) = " . intval($ano);
}
if ($mes && $mes != "Todos") {
  $qry_qtdmarcarevendaproria .= " AND EXTRACT(MONTH FROM A1.entregue_dt) = " . intval($mes);
}
if (!empty($periodo) && $periodo != "mes") {
  if ($periodo == 1) {
    $qry_qtdmarcarevendaproria .= " AND EXTRACT(DAY FROM A1.entregue_dt)  <= 15 ";
  } elseif ($periodo == 2) {
    $qry_qtdmarcarevendaproria .= " AND EXTRACT(DAY FROM A1.entregue_dt)  > 15 ";
  }
}
if (!empty($semana)) {
  if ($semana != "mes") {
    $qry_qtdmarcarevendaproria .= " AND  A1.entregue_dt BETWEEN '$data_inicio' AND '$data_fim'";
  }
}
if ($filial && $filial != "Todos") {
  $qry_qtdmarcarevendaproria .= " AND A1.aviada_lj in (" . ($filial) . ")";
}

//echo $qry_qtdmarcarevendaproria;

$qryqtdmarcarevenda = ibase_query($connection, $qry_qtdmarcarevendaproria);
$row102 = ibase_fetch_assoc($qryqtdmarcarevenda);
$qtdmarcarevenda = $row102["SOMA"];


//QTD Unids Marca Propria + Revenda - ALGUNS PRODUTOS
$qry_qtdmarcarevenda = "SELECT
  count(A1.CODIGO) as soma
 from ATENDIMENTO_A1 A1
  left join UTIL_REL_AG1 (1) AG ON AG.AG1_OP > 0
  inner join FUNCIONARIO FU ON FU.CODIGO = IIF(AG.AG1_OP = 1, A1.CODIGO_FUNCIONARIO_COMISSAO, A1.AVIADA_CF)
  WHERE A1.TIPO_ATENDIMENTO = 2 ";

if ($ano && $ano != "Todos") {
  $qry_qtdmarcarevenda .= " AND EXTRACT(YEAR FROM A1.entregue_dt) = " . intval($ano);
}
if ($mes && $mes != "Todos") {
  $qry_qtdmarcarevenda .= " AND EXTRACT(MONTH FROM A1.entregue_dt) = " . intval($mes);
}
if (!empty($periodo) && $periodo != "mes") {
  if ($periodo == 1) {
    $qry_qtdmarcarevenda .= " AND EXTRACT(DAY FROM A1.entregue_dt)  <= 15 ";
  } elseif ($periodo == 2) {
    $qry_qtdmarcarevenda .= " AND EXTRACT(DAY FROM A1.entregue_dt)  > 15 ";
  }
}
if (!empty($semana)) {
  if ($semana != "mes") {
    $qry_qtdmarcarevenda .= " AND  A1.entregue_dt BETWEEN '$data_inicio' AND '$data_fim'";
  }
}
if ($filial && $filial != "Todos") {
  $qry_qtdmarcarevenda .= " AND A1.aviada_lj in (" . ($filial) . ")";
}



$qryqtdmarcarevenda = ibase_query($connection, $qry_qtdmarcarevenda);
$row104 = ibase_fetch_assoc($qryqtdmarcarevenda);
$qtdmarcarevendamenosprod = $row104["SOMA"];
//echo $qry_qtdmarcarevenda;


//Calculo aproveitamento...

//$geral = number_format((($qtdmarcarevendamenosprod/$qtdrequis)*100), 2, ',', '.');
//$marca = number_format((($qtdmarca/$qtdrequis)*100), 2, ',', '.');
$geral = ($qtdrequis != 0) ? number_format((($qtdmarcarevendamenosprod / $qtdrequis) * 100), 2, ',', '.') : 0;
$marca = ($qtdrequis != 0) ? number_format((($qtdmarca / $qtdrequis) * 100), 2, ',', '.') : 0;

// Agora você pode usar $geral e $marca em sua lógica ou impressão.

//echo 'Qtd_Requis'.$qtdrequis;
//echo 'Qtd'.$qtdmarcarevendamenosprod;
//  echo 'geral '. $geral;
// echo ' marca '. $marca;
