import { Parent, Query, ResolveField, Resolver } from '@nestjs/graphql';
import { Entry } from './models/entry.model';
import { PrismaService } from '../prisma/prisma.service';

@Resolver(() => Entry)
export class EntryResolver {
    constructor(private prismaService: PrismaService) {}

    @Query(() => [Entry])
    listEntries() {
        return this.prismaService.entry.findMany({
            take: 200,
        });
    }

    @ResolveField('agent')
    async agent(@Parent() entry: Entry) {
        const result = await this.prismaService.entry.findFirst({
            where: { id: entry.id },
            select: { agent: true },
        });

        return result.agent;
    }
}