lecoffre-back/src/common/repositories/ContactRepository.ts
2023-10-19 11:44:58 +02:00

42 lines
1.0 KiB
TypeScript

import Database from "@Common/databases/database";
import BaseRepository from "@Repositories/BaseRepository";
import { Service } from "typedi";
import { Contacts, Customers } from "@prisma/client";
@Service()
export default class ContactRepository extends BaseRepository {
constructor(private database: Database) {
super();
}
protected get model() {
return this.database.getClient().contacts;
}
protected get instanceDb() {
return this.database.getClient();
}
/**
* @description : Find unique customer by email
*/
public async findSomeByEmail(email: string): Promise<(Contacts & {customers: Customers | null})[] | null> {
return this.model.findMany({
where: {
email: email,
},
include: { customers: true }
});
}
/**
* @description : Find unique customer by email
*/
public async findSomeByPhoneNumber(cell_phone_number: string): Promise<(Contacts & {customers: Customers | null})[] | null> {
return this.model.findMany({
where: {
cell_phone_number: cell_phone_number,
},
include: { customers: true }
});
}
}