forked from admin/zeropost-tool
f4860f0e70
- app/spending/page.js: расходы по периодам, разбивка по провайдерам и типам - app/api/usage/summary/route.js: прокси к engine /api/usage/summary - Header.js: ссылка «Расходы» для admin (TrendingUp иконка)
16 lines
549 B
JavaScript
16 lines
549 B
JavaScript
import { NextResponse } from 'next/server';
|
|
import { requireUser } from '@/lib/session';
|
|
import { engine } from '@/lib/engine';
|
|
|
|
export async function GET(req) {
|
|
const user = await requireUser();
|
|
if (!user?.isAdmin) return NextResponse.json({ error: 'Forbidden' }, { status: 403 });
|
|
const { searchParams } = new URL(req.url);
|
|
try {
|
|
const data = await engine.usageSummary(Object.fromEntries(searchParams));
|
|
return NextResponse.json(data);
|
|
} catch (err) {
|
|
return NextResponse.json({ error: err.message }, { status: 500 });
|
|
}
|
|
}
|