26 lines
766 B
TypeScript
26 lines
766 B
TypeScript
import {
|
|
findDisponiblesParCampus,
|
|
findDetailParCampus,
|
|
CatalogueFiltres,
|
|
MaterielDetail,
|
|
MaterielAvecCategorie,
|
|
} from '../repositories/materiel.repository';
|
|
import { AppError } from '../errors/app-error';
|
|
|
|
/* RG10 : après identification, seuls les matériels disponibles du campus de
|
|
l'étudiant sont affichés. */
|
|
export function listerCatalogue(
|
|
campusId: number,
|
|
filtres: CatalogueFiltres,
|
|
): Promise<MaterielAvecCategorie[]> {
|
|
return findDisponiblesParCampus(campusId, filtres);
|
|
}
|
|
|
|
export async function obtenirDetailMateriel(id: number, campusId: number): Promise<MaterielDetail> {
|
|
const materiel = await findDetailParCampus(id, campusId);
|
|
if (!materiel) {
|
|
throw new AppError(404, 'Materiel introuvable');
|
|
}
|
|
return materiel;
|
|
}
|