Files
HiveGrid-Wireframes/hivegrid-cloud/apps/web/app/utils/db/registration.db.server.ts
T

76 lines
1.9 KiB
TypeScript

import { db } from "../db.server";
export async function getRegistrationByEmail(email: string) {
return await db.registration.findFirst({
where: {
email,
},
});
}
export async function getRegistrationByToken(token: string) {
return await db.registration.findUnique({
where: {
token,
},
});
}
export async function createRegistration(data: {
email: string;
firstName: string;
lastName: string;
token: string;
company: string | null;
selectedSubscriptionPriceId: string | null;
leadConversionLeadId?: string | null;
leadConversionToken?: string | null;
leadConversionPlanId?: string | null;
ipAddress: string | null;
slug: string | null;
}) {
return await db.registration.create({
data: {
email: data.email,
firstName: data.firstName,
lastName: data.lastName,
token: data.token,
company: data.company,
selectedSubscriptionPriceId: data.selectedSubscriptionPriceId,
leadConversionLeadId: data.leadConversionLeadId ?? null,
leadConversionToken: data.leadConversionToken ?? null,
leadConversionPlanId: data.leadConversionPlanId ?? null,
ipAddress: data.ipAddress,
slug: data.slug,
},
});
}
export async function updateRegistration(
id: string,
data: {
firstName?: string;
lastName?: string;
company?: string | null;
createdTenantId?: string | null;
token?: string;
leadConversionLeadId?: string | null;
leadConversionToken?: string | null;
leadConversionPlanId?: string | null;
}
) {
return await db.registration.update({
where: { id },
data: {
firstName: data.firstName,
lastName: data.lastName,
company: data.company,
createdTenantId: data.createdTenantId,
token: data.token,
leadConversionLeadId: data.leadConversionLeadId,
leadConversionToken: data.leadConversionToken,
leadConversionPlanId: data.leadConversionPlanId,
},
});
}