<?php
/**
 * MORFO ENGINE - PROCESSAMENTO DE CONSULTA
 * Ajuste de cores: NF e Pedidos em vermelho se > 0
 */

require_once("../configuracao/conexao.php"); 

$codIni      = $_POST['cod_ini'] ?? '0';
$codFim      = $_POST['cod_fim'] ?? '999999';
$busca       = $_POST['busca_txt'] ?? '';
$filtroSaldo = $_POST['filtro_saldo'] ?? 'T';

$sql = "SELECT 
            h.reg_h010_cod_item, 
            p.reg_0200_descr_item, 
            h.reg_h010_unid, 
            h.reg_h010_qtd_nf,
            h.reg_h010_qtd_pedido,
            h.reg_h010_qtd,       -- Disponível (Kardex)
            p.reg_0200_preco      
        FROM reg_h010 h
        INNER JOIN reg_0200 p ON h.reg_h010_cod_item = p.reg_0200_cod_item
        WHERE h.reg_h010_cod_item BETWEEN ? AND ?";

$params = [$codIni, $codFim];
$types  = "ss";

if (!empty($busca)) {
    $sql .= " AND p.reg_0200_descr_item LIKE ?";
    $params[] = "%$busca%";
    $types .= "s";
}

if ($filtroSaldo == 'P') $sql .= " AND h.reg_h010_qtd > 0";
elseif ($filtroSaldo == 'N') $sql .= " AND h.reg_h010_qtd < 0";
elseif ($filtroSaldo == 'Z') $sql .= " AND (h.reg_h010_qtd = 0 OR h.reg_h010_qtd IS NULL)";

$sql .= " ORDER BY h.reg_h010_cod_item ASC";

$stmt = $mysqli->prepare($sql);
$stmt->bind_param($types, ...$params);
$stmt->execute();
$result = $stmt->get_result();

if ($result->num_rows > 0) {
    while ($row = $result->fetch_assoc()) {
        
        $estoque_kardex = (float)$row['reg_h010_qtd'];
        $qtd_nf         = (float)$row['reg_h010_qtd_nf'];
        $qtd_pedido     = (float)$row['reg_h010_qtd_pedido'];
        
        // Lógica de Cores solicitada:
        // NF e Pedido ficam vermelhos se houver quantidade
        $corNf     = ($qtd_nf > 0) ? "color:red;" : "color:#000;";
        $corPedido = ($qtd_pedido > 0) ? "color:red;" : "color:#666;";
        
        // Disponível: Vermelho se negativo, Azul se positivo (Destaque do Kardex)
        $corDisp = ($estoque_kardex < 0) ? "color:red;" : "color:blue; font-weight:bold;";

        echo "<tr>";
        echo "<td>" . $row['reg_h010_cod_item'] . "</td>";
        echo "<td>" . mb_strtoupper($row['reg_0200_descr_item']) . "</td>";
        echo "<td align='center'>" . $row['reg_h010_unid'] . "</td>";
        
        // Coluna 4: Qtd. NF (Em vermelho se > 0)
        echo "<td align='right' style='{$corNf}'>" . number_format($qtd_nf, 3, ',', '.') . "</td>";
        
        // Coluna 5: Resv. Pedido (Em vermelho se > 0)
        echo "<td align='right' style='{$corPedido}'>" . number_format($qtd_pedido, 3, ',', '.') . "</td>";
        
        // Coluna 6: Disponível (Kardex)
        echo "<td align='right' style='{$corDisp}'>" . number_format($estoque_kardex, 3, ',', '.') . "</td>";
        
        // Coluna 7: Preço
        echo "<td align='right' style='font-weight:bold;'>R$ " . number_format($row['reg_0200_preco'], 2, ',', '.') . "</td>";
        echo "</tr>";
    }
} else {
    echo "<tr><td colspan='7' align='center' style='padding:40px;'>Nenhum item encontrado.</td></tr>";
}

$stmt->close();
$mysqli->close();
?>