1import { NextRequest, NextResponse } from 'next/server';
2import { fieldpineServerApi } from '@/lib/server/fieldpineApi';
3import { getStoredAuth } from '@/lib/server/auth';
6 * OpenAPI Stock2 Movements Endpoint
7 * GET /api/v1/openapi/stock2/movements?locid=1&pid=123&from=2024-01-01&to=2024-12-31
8 * Track stock movements in and out
10export async function GET(request: NextRequest) {
12 const authData = await getStoredAuth();
13 if (!authData || !authData.authenticated) {
14 return NextResponse.json(
15 { error: 'Authentication required' },
20 const { searchParams } = new URL(request.url);
21 const params: Record<string, string | number> = {};
23 const locid = searchParams.get('locid');
24 if (locid) params.locid = parseInt(locid);
26 const pid = searchParams.get('pid');
27 if (pid) params.pid = parseInt(pid);
29 const from = searchParams.get('from');
30 if (from) params.from = from;
32 const to = searchParams.get('to');
33 if (to) params.to = to;
35 const detail = searchParams.get('detail');
36 if (detail) params.detail = detail;
38 const movements = await fieldpineServerApi.apiCall("/Stock2/Movements", {
40 cookie: authData.apiKey,
44 return NextResponse.json({
51 console.error('Stock2 Movements API error:', error);
52 return NextResponse.json(
53 { error: 'Failed to fetch stock movements' },