<?php
include_once('../config.php');
include_once('../header.php');

$mensagem = "";

// 1. FILTRO DE DATAS
$data_inicio = $_POST['data_inicio'] ?? date('Y-m-d', strtotime('first day of last month'));
$data_fim = $_POST['data_fim'] ?? date('Y-12-31');

// 2. LÓGICA DE RECEBIMENTO (TOTAL OU PARCIAL)
if(isset($_POST['btn_receber'])){
    $id_conta = $_POST['id_conta'];
    $valor_pago = $_POST['valor_pago'];
    $agora = date('Y-m-d H:i:s');
    
    $busca = $conn->query("SELECT CLIENTE_NOME, VALOR_TOTAL FROM CONTAS_RECEBER WHERE ID='$id_conta'");
    $dados = $busca->fetch_assoc();

    if($dados){
        $valor_devedor_atual = $dados['VALOR_TOTAL'];
        $cliente = $dados['CLIENTE_NOME'];
        $descricao_caixa = "REC. FIADO: " . $cliente;

        if($valor_pago >= $valor_devedor_atual){
            // PAGAMENTO TOTAL
            $conn->query("UPDATE CONTAS_RECEBER SET STATUS='PAGO', VALOR_TOTAL=0, DATA_PAGAMENTO='$agora' WHERE ID='$id_conta'");
            $valor_para_caixa = $valor_devedor_atual;
            $mensagem = "PAGAMENTO TOTAL RECEBIDO!";
        } else {
            // PAGAMENTO PARCIAL
            $novo_valor = $valor_devedor_atual - $valor_pago;
            $conn->query("UPDATE CONTAS_RECEBER SET VALOR_TOTAL='$novo_valor' WHERE ID='$id_conta'");
            $valor_para_caixa = $valor_pago;
            $mensagem = "PAGAMENTO PARCIAL REGISTRADO! RESTA: R$ " . number_format($novo_valor, 2, ',', '.');
        }
        
        // LANÇA O VALOR QUE ENTROU DE FATO NO LIVRO CAIXA
        $conn->query("INSERT INTO LIVRO_CAIXA (TIPO, DESCRICAO, VALOR) VALUES ('ENTRADA', '$descricao_caixa', '$valor_para_caixa')");
    }
}

// 3. LÓGICA PARA EXCLUIR
if(isset($_GET['excluir'])){
    $id_excluir = $_GET['excluir'];
    $conn->query("DELETE FROM CONTAS_RECEBER WHERE ID='$id_excluir'");
    header("Location: contas_receber.php?msg=EXCLUIDO");
    exit();
}
?>

<style>
    .module-wrapper { display: flex; flex-direction: column; width: 100%; height: 100%; padding: 10px; box-sizing: border-box; }
    .filter-bar { background-color: #fff; border: 1px solid #ccc; padding: 10px; margin-bottom: 15px; display: flex; align-items: flex-end; gap: 15px; }
    .filter-group { display: flex; flex-direction: column; }
    .filter-group label { font-size: 10px; font-weight: bold; margin-bottom: 3px; color: #555; }
    .filter-group input { padding: 5px; border: 1px solid #999; font-size: 11px; background-color: #fff8e1; }
    
    .status-badge { padding: 3px 8px; border-radius: 3px; font-size: 9px; font-weight: bold; color: white; }
    .bg-pendente { background-color: #d9534f; }
    .bg-pago { background-color: #5cb85c; }
    
    .datagrid-table { width: 100%; border-collapse: collapse; font-size: 11px; }
    .datagrid-table th { background-color: #e0e0e0; padding: 8px; border: 1px solid #ccc; text-align: left; }
    .datagrid-table td { padding: 8px; border: 1px solid #eee; }
    
    .form-receber { display: flex; gap: 5px; align-items: center; }
    .input-valor { width: 70px; padding: 3px; font-size: 10px; border: 1px solid #999; }
    .btn-acao { background-color: #5cb85c; color: white; border: none; padding: 4px 8px; cursor: pointer; font-weight: bold; font-size: 9px; }
</style>

<div class="module-wrapper">
    <div style="font-weight: bold; margin-bottom: 10px; color: #d9534f;">GESTÃO DE FIADO E RECEBIMENTOS</div>

    <?php if($mensagem != ""): ?>
        <div style="background:#d4edda; color:#155724; padding:10px; border:1px solid #c3e6cb; margin-bottom:10px; font-weight:bold; text-align:center;">
            <?php echo $mensagem; ?>
        </div>
    <?php endif; ?>

    <form action="contas_receber.php" method="POST" class="filter-bar">
        <div class="filter-group">
            <label>VENCIMENTOS DESDE:</label>
            <input type="date" name="data_inicio" value="<?php echo $data_inicio; ?>">
        </div>
        <div class="filter-group">
            <label>ATÉ:</label>
            <input type="date" name="data_fim" value="<?php echo $data_fim; ?>">
        </div>
        <button type="submit" class="btn-acao" style="background:#00569e; height:28px;">🔍 FILTRAR</button>
    </form>

    <div style="flex: 1; border: 1px solid #ccc; background: #fff; overflow: auto;">
        <table class="datagrid-table">
            <thead>
                <tr>
                    <th>CLIENTE</th>
                    <th>VALOR DEVEDOR</th>
                    <th>VENCIMENTO</th>
                    <th>STATUS</th>
                    <th style="text-align: center;">VALOR A RECEBER</th>
                </tr>
            </thead>
            <tbody>
                <?php
                $sql = "SELECT * FROM CONTAS_RECEBER WHERE DATA_VENCIMENTO BETWEEN '$data_inicio' AND '$data_fim' ORDER BY STATUS DESC, DATA_VENCIMENTO ASC";
                $contas = $conn->query($sql);
                
                while($c = $contas->fetch_assoc()): ?>
                <tr>
                    <td style="font-weight: bold;"><?php echo $c['CLIENTE_NOME']; ?></td>
                    <td style="color: #c00; font-weight: bold;">R$ <?php echo number_format($c['VALOR_TOTAL'], 2, ',', '.'); ?></td>
                    <td><?php echo date('d/m/Y', strtotime($c['DATA_VENCIMENTO'])); ?></td>
                    <td>
                        <span class="status-badge <?php echo ($c['STATUS'] == 'PENDENTE') ? 'bg-pendente' : 'bg-pago'; ?>">
                            <?php echo ($c['STATUS'] == 'PENDENTE') ? 'EM ABERTO' : 'QUITADO'; ?>
                        </span>
                    </td>
                    <td style="text-align: center;">
                        <?php if($c['STATUS'] == 'PENDENTE'): ?>
                            <form action="contas_receber.php" method="POST" class="form-receber">
                                <input type="hidden" name="id_conta" value="<?php echo $c['ID']; ?>">
                                <input type="number" step="0.01" name="valor_pago" class="input-valor" value="<?php echo $c['VALOR_TOTAL']; ?>" required>
                                <button type="submit" name="btn_receber" class="btn-acao">💰 BAIXAR</button>
                            </form>
                        <?php else: ?>
                            <span style="color:#999;">PAGO EM <?php echo date('d/m/Y', strtotime($c['DATA_PAGAMENTO'])); ?></span>
                        <?php endif; ?>
                    </td>
                </tr>
                <?php endwhile; ?>
            </tbody>
        </table>
    </div>
</div>
</body>
</html>