Files
dh-inspeccion-v2/api-v3/src/inspection-operations/mobile-inspector-policy.ts
T

18 lines
646 B
TypeScript

import { ForbiddenException } from '@nestjs/common';
import type { AuthPrincipal } from '../common/http/request-context';
export function assertMobileInspector(principal: AuthPrincipal): void {
if (principal.transport !== 'bearer') {
throw new ForbiddenException({
code: 'INSPECTION_MOBILE_APP_REQUIRED',
message: 'Esta operación sólo está disponible desde la aplicación móvil',
});
}
if (!principal.roles.includes('inspector')) {
throw new ForbiddenException({
code: 'INSPECTION_INSPECTOR_ROLE_REQUIRED',
message: 'Sólo un usuario con rol inspector puede realizar esta operación',
});
}
}