Files
HKSingleParty/03_source/cms_backend/src/app/services/event.service.ts
2025-06-13 18:11:12 +08:00

71 lines
1.4 KiB
TypeScript

// src/app/services/event.service.ts
//
// PURPOSE:
// - Service for handling Event records
//
// RULES:
// - Follows same pattern as helloworld.service.ts
//
import type { Event } from '@prisma/client';
import prisma from '../lib/prisma';
type CreateEvent = {
eventDate: Date;
title: string;
joinMembers?: JSON[];
price: number;
currency: string;
duration_m: number;
ageBottom: number;
ageTop: number;
location: string;
avatar?: string;
memberId?: number;
};
type UpdateEvent = {
eventDate?: Date;
title?: string;
joinMembers?: JSON[];
price?: number;
currency?: string;
duration_m?: number;
ageBottom?: number;
ageTop?: number;
location?: string;
avatar?: string;
memberId?: number;
};
async function listEvents(): Promise<Event[]> {
return prisma.event.findMany();
}
// async function getEvent(eventId: number) {
// return prisma.event.findFirst({ where: { id: eventId } });
// }
// async function createNewEvent(createForm: CreateEvent) {
// return prisma.event.create({ data: createForm });
// }
// async function updateEvent(eventId: number, updateForm: UpdateEvent) {
// return prisma.event.update({
// where: { id: eventId },
// data: updateForm,
// });
// }
// async function deleteEvent(eventId: number) {
// return prisma.event.delete({ where: { id: eventId } });
// }
export {
listEvents,
// getEvent,
// updateEvent,
// deleteEvent,
// createNewEvent,
};