Page 415 - MDP2022-2
P. 415
},
});
}
async getQueueCount() {
return { count: await this.prismaService.queue.count() };
}
async createQueue(query) {
return this.prismaService.queue.create({
data: {
name: query.name,
reservationTime: query.reservationTime,
},
});
}
}
src/prisma/prisma.service.ts
import { INestApplication, Injectable, OnModuleInit } from '@nestjs/common';
import { PrismaClient } from '@prisma/client';
@Injectable()
export class PrismaService extends PrismaClient implements OnModuleInit {
async onModuleInit() {
await this.$connect();
}
async enableShutdownHooks(app: INestApplication) {
this.$on('beforeExit', async () => {
await app.close();
});
}
}
src/auth/auth.module.ts
import { UsersService } from 'src/users/users.service';
import { Module } from '@nestjs/common';
import { JwtModule } from '@nestjs/jwt';
import { PassportModule } from '@nestjs/passport';
import { UsersModule } from '../users/users.module';
import { AuthService } from './auth.service';
import { jwtConstants } from './constants';