Repository Public
1// Auteur : Simon-Pierre Boucher — contact@spboucher.ai2// Bassin de comparables pour l'atelier « mon évaluation » d'une annonce.3import { NextRequest, NextResponse } from "next/server";4import { buildComps } from "@/lib/comps";56export const dynamic = "force-dynamic";78export function GET(req: NextRequest) {9 const q = req.nextUrl.searchParams;10 const uid = q.get("uid");11 if (!uid) return NextResponse.json({ error: "uid requis" }, { status: 400 });12 const num = (k: string) => {13 const v = Number(q.get(k));14 return Number.isFinite(v) && v > 0 ? v : undefined;15 };16 try {17 const res = buildComps(uid, {18 months: num("months"),19 radiusKm: num("radius"),20 includeListings: q.get("listings") !== "0",21 limit: num("limit"),22 });23 if (!res) return NextResponse.json({ error: "annonce introuvable ou non géolocalisée" }, { status: 404 });24 return NextResponse.json(res);25 } catch (e) {26 return NextResponse.json({ error: String(e) }, { status: 500 });27 }28}29