import type { Prisma, TipoServicio } from "@prisma/client"; /** * Regla única de qué trabajos ofrece un jefe mecánico. * * Los jefes cargan sus propios trabajos desde `/jefe/servicios` (`jefeMecanicoId` = su id), * y el admin puede cargar trabajos globales del taller (`jefeMecanicoId` = null) que ofrece * cualquiera. El cliente elige primero el mecánico y después el trabajo, así que la lista * siempre es: los del jefe + los globales. */ export function whereTrabajosDeJefe(jefeMecanicoId: string): Prisma.TipoServicioWhereInput { return { activo: true, OR: [{ jefeMecanicoId }, { jefeMecanicoId: null }], }; } /** Un trabajo propio de otro jefe no se puede reservar con este. Los globales sí. */ export function trabajoEsDeJefe( servicio: Pick, jefeMecanicoId: string ): boolean { return servicio.jefeMecanicoId === null || servicio.jefeMecanicoId === jefeMecanicoId; }