import { redirect } from "next/navigation" import { and, eq } from "drizzle-orm" import { db } from "@/lib/db" import { leases as leasesTable } from "@/lib/db/schema" import { getSessionUser } from "@/lib/session" import { getEffectiveOwnerId } from "@/lib/account" import { BulkGenerateForm } from "./bulk-generate-form" export const metadata = { title: "Generate Rent" } export default async function GenerateRentPage() { const user = await getSessionUser() if (!user) redirect("/login") const ownerId = await getEffectiveOwnerId(user.id) const leases = await db.query.leases.findMany({ where: and(eq(leasesTable.user_id, ownerId), eq(leasesTable.status, "active")), columns: { id: true, rent_amount: true }, with: { tenant: { columns: { first_name: true, last_name: true } }, property: { columns: { name: true } }, unit: { columns: { unit_number: true } }, }, }) return (
Create pending rent payments for all active tenants in one click