import { QUERY_CONSTANTS } from '@/common/queryConstants' import { BusinessActivitySelect } from '@/generated/prisma/models' import { PrismaService } from '@/prisma/prisma.service' import { Injectable } from '@nestjs/common' @Injectable() export class BusinessActivitiesQueryService { constructor(private readonly prisma: PrismaService) {} readonly baseSelect: BusinessActivitySelect = { ...QUERY_CONSTANTS.BUSINESS_ACTIVITIES.summarySelect, } async findAllByConsumer(consumer_id: string, select: BusinessActivitySelect) { const businessActivities = await this.prisma.businessActivity.findMany({ where: { consumer_id }, select, }) return businessActivities.map(QUERY_CONSTANTS.BUSINESS_ACTIVITIES.mappedData) } async findOneByConsumer( consumer_id: string, id: string, select: BusinessActivitySelect, orThrow = false, ) { // if (orThrow) { // return await this.prisma.businessActivity.findUniqueOrThrow({ // where: { consumer_id, id }, // select, // }) // } const businessActivity = await this.prisma.businessActivity.findUnique({ where: { consumer_id, id }, select, }) return QUERY_CONSTANTS.BUSINESS_ACTIVITIES.mappedData(businessActivity) } }