/* =====================================================================
   routes/orders.js — POST /api/orders, legt eine Überweisungs-Bestellung (Vorkasse) an.
   1:1 portiert aus functions/api/orders.js. Lehnt zahlungsart:"paypal" bewusst ab (Betrugsschutz
   — PayPal-Bestellungen entstehen NUR über routes/paypal.js, nach echter Zahlungsprüfung).
   ===================================================================== */

import { Router } from "express";
import { erstelleBestellung } from "../lib/bestellung-erstellen.js";

export const ordersRouter = Router();

ordersRouter.post("/api/orders", async (req, res) => {
  const body = req.body || {};
  const zahlungsart = String(body.zahlungsart || "");

  if (zahlungsart === "paypal") {
    return res.status(400).json({
      ok: false,
      error: "PayPal-Bestellungen laufen über den PayPal-Button im Checkout, nicht über diese Route.",
    });
  }
  if (zahlungsart !== "ueberweisung") {
    return res.status(400).json({ ok: false, error: "Ungültige oder nicht unterstützte Zahlungsart." });
  }

  const ergebnis = await erstelleBestellung(body, { status: "zahlungOffen" });
  if (!ergebnis.ok) {
    return res.status(ergebnis.httpStatus || 500).json({ ok: false, error: ergebnis.error });
  }
  return res.status(201).json({ ok: true, id: ergebnis.id, bestellnummer: ergebnis.bestellnummer });
});
