23 lines
657 B
TypeScript
23 lines
657 B
TypeScript
import { NextResponse } from 'next/server';
|
|
import db from '@/lib/db';
|
|
|
|
export async function GET() {
|
|
try {
|
|
const query = `
|
|
SELECT m.tahun_angkatan, s.status_kuliah, COUNT(*) AS jumlah
|
|
FROM mahasiswa m
|
|
JOIN status_mahasiswa s ON m.nim = s.nim
|
|
WHERE s.status_kuliah IN ('Lulus', 'Cuti', 'Aktif', 'DO')
|
|
GROUP BY m.tahun_angkatan, s.status_kuliah;
|
|
`;
|
|
|
|
const [rows] = await db.query(query);
|
|
return NextResponse.json(rows);
|
|
} catch (error) {
|
|
console.error('Error fetching status data:', error);
|
|
return NextResponse.json(
|
|
{ error: 'Failed to fetch status data' },
|
|
{ status: 500 }
|
|
);
|
|
}
|
|
}
|