import { Injectable, NotFoundException } from '@nestjs/common'; import { LeadRepository } from '../repository/lead.repository'; @Injectable() export class LeadService { constructor(private readonly leadRepository: LeadRepository) {} async getAllOrganizations() { const organizations = await this.leadRepository.getAllOrganizations(); return organizations.map((org) => ({ id: org.id, name: org.name, // Add other organization fields as needed })); } async getBrandsByOrganization(organizationId: number) { const brands = await this.leadRepository.getBrandsByOrganization(organizationId); if (!brands.length) { throw new NotFoundException( `No brands found for organization ID ${organizationId}`, ); } return brands.map((brand) => ({ id: brand.id, name: brand.name, organizationId: brand.organization_id, // Add other brand fields as needed })); } async getSchoolsByBrandAndOrganization( brandId: number, organizationId: number, ) { const schools = await this.leadRepository.getSchoolsByBrandAndOrganization( brandId, organizationId, ); if (!schools.length) { throw new NotFoundException( `No schools found for brand ID ${brandId} and organization ID ${organizationId}`, ); } return schools.map((school) => ({ id: school.id, name: school.name, brandId: school.brand_id, organizationId: school.organization_id, // Add other school fields as needed })); } }