pelagia-portal/App/app/(portal)/admin/companies/page.tsx
2026-05-31 01:56:33 +05:30

36 lines
1 KiB
TypeScript

import { auth } from "@/auth";
import { db } from "@/lib/db";
import { hasPermission } from "@/lib/permissions";
import { redirect } from "next/navigation";
import { CompaniesTable } from "./companies-table";
import type { Metadata } from "next";
export const metadata: Metadata = { title: "Company Management" };
export default async function AdminCompaniesPage() {
const session = await auth();
if (!session?.user) redirect("/login");
if (!hasPermission(session.user.role, "manage_vessels_accounts")) redirect("/dashboard");
const companies = await db.company.findMany({
orderBy: { name: "asc" },
});
return (
<CompaniesTable
companies={companies.map((c) => ({
id: c.id,
name: c.name,
code: c.code,
gstNumber: c.gstNumber,
address: c.address,
telephone: c.telephone,
mobile: c.mobile,
email: c.email,
invoiceEmail: c.invoiceEmail,
invoiceAddress: c.invoiceAddress,
isActive: c.isActive,
}))}
/>
);
}