N-FIN-7: add payment page UI

This commit is contained in:
Markus Thielker 2024-03-11 00:37:26 +01:00
parent 8941760827
commit e0b3063916
No known key found for this signature in database
2 changed files with 230 additions and 3 deletions

View file

@ -1,7 +1,63 @@
import { getUser } from '@/auth';
import { prismaClient } from '@/prisma';
import React from 'react';
import PaymentPageClientContent from '@/components/paymentPageClientComponents';
import paymentCreateUpdate from '@/lib/actions/paymentCreateUpdate';
import paymentDelete from '@/lib/actions/paymentDelete';
export default async function PaymentsPage() {
const user = await getUser();
const payments = await prismaClient.payment.findMany({
where: {
userId: user?.id,
},
orderBy: [
{
date: 'desc',
},
{
id: 'desc',
},
],
});
const entities = await prismaClient.entity.findMany({
where: {
userId: user?.id,
},
orderBy: [
{
name: 'asc',
},
{
id: 'asc',
},
],
});
const categories = await prismaClient.category.findMany({
where: {
userId: user?.id,
},
orderBy: [
{
name: 'asc',
},
{
id: 'asc',
},
],
});
return (
<main className="flex items-center justify-center min-h-screen text-3xl">
Payments
</main>
<PaymentPageClientContent
payments={payments}
entities={entities}
categories={categories}
onSubmit={paymentCreateUpdate}
onDelete={paymentDelete}
className="flex flex-col justify-center space-y-4 p-10"/>
);
}