<?php
/**
 * BACKEND: ATUALIZAÇÃO DE STATUS (BAIXA DE TÍTULO)
 * Altera o status da parcela na tabela REG_C141 utilizando MySQLi
 */

// 1. Inclui a configuração centralizada onde a variável $mysqli é instanciada
require_once "../configuracao/conexao.php";

header('Content-Type: application/json; charset=utf-8');

try {
    // 2. Validação dos dados recebidos via POST
    if (isset($_POST['codigo']) && isset($_POST['novo_status'])) {
        
        $id = $_POST['codigo'];
        $status = $_POST['novo_status'];

        /**
         * 3. Execução do Update com Prepared Statements (MySQLi)
         * Mantém a conformidade com a estrutura do Bloco C do SPED.
         */
        $sql = "UPDATE reg_c141 SET reg_c141_status = ? WHERE codigo = ?";
        
        $stmt = $mysqli->prepare($sql);
        
        if (!$stmt) {
            throw new Exception("Erro na preparação da query: " . $mysqli->error);
        }

        // "si" indica: s = string (status), i = integer (codigo/id)
        $stmt->bind_param("si", $status, $id);
        
        if ($stmt->execute()) {
            echo json_encode([
                "success" => true, 
                "message" => "Título baixado com sucesso!"
            ]);
        } else {
            echo json_encode([
                "success" => false, 
                "error" => "Não foi possível atualizar o registro: " . $stmt->error
            ]);
        }

        $stmt->close();

    } else {
        echo json_encode([
            "success" => false, 
            "error" => "Dados insuficientes para completar a baixa."
        ]);
    }

} catch (Exception $e) {
    http_response_code(500);
    echo json_encode([
        "success" => false, 
        "error" => "Erro de Processamento",
        "details" => $e->getMessage()
    ]);
}