"use server"; import prisma from "@/lib/db"; import type { PaymentType } from "@/lib/types"; import { revalidatePath } from "next/cache"; export async function createPayment(data: PaymentType) { console.log("data", data); const payment = await prisma.payment.create({ data: { amount: data.amount, numberOfMonths: data.numberOfMonths, paid: data.paid, userId: data.userId, devices: { connect: data.deviceIds.map((id) => { return { id, }; }), }, }, }); revalidatePath("/devices"); return payment; } type VerifyPaymentType = { paymentId?: string; benefName: string; accountNo?: string; absAmount: string; time: string; }; export async function verifyPayment(data: VerifyPaymentType) { console.log({ data }); try { const payment = await prisma.payment.findUnique({ where: { id: data.paymentId, }, }); const response = await fetch( "https://verifypaymentsapi.baraveli.dev/verify-payment", { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify(data), }, ); const json = await response.json(); console.log(json); if (json.success === true) { await prisma.payment.update({ where: { id: payment?.id, }, data: { paid: true, }, }); } revalidatePath("/payment[paymentId]"); return json; } catch (error) { console.error(error); } }