import { NextRequest, NextResponse } from "next/server";
import { query } from "@/lib/db";

export async function POST(req: NextRequest) {
  const { id, id_categoria, codigo, descricao, multa, fianca, pena_meses, definicao, action } = await req.json();

  if (action === "delete") {
    if (!id) return NextResponse.json({ ok: false, erro: "ID obrigatório." });
    await query("DELETE FROM artigos WHERE id = ?", [id]);
    return NextResponse.json({ ok: true });
  }

  if (!codigo?.trim() || !descricao?.trim() || !id_categoria) {
    return NextResponse.json({ ok: false, erro: "Campos obrigatórios: código, descrição, categoria." });
  }

  if (id) {
    await query(
      "UPDATE artigos SET id_categoria = ?, codigo = ?, descricao = ?, multa = ?, fianca = ?, pena_meses = ?, definicao = ? WHERE id = ?",
      [id_categoria, codigo.trim(), descricao.trim(), multa || 0, fianca || 0, pena_meses || 0, definicao || "", id]
    );
  } else {
    await query(
      "INSERT INTO artigos (id_categoria, codigo, descricao, multa, fianca, pena_meses, definicao) VALUES (?, ?, ?, ?, ?, ?, ?)",
      [id_categoria, codigo.trim(), descricao.trim(), multa || 0, fianca || 0, pena_meses || 0, definicao || ""]
    );
  }

  return NextResponse.json({ ok: true });
}
