Added Event Module
This commit is contained in:
18
src/events/events.controller.spec.ts
Normal file
18
src/events/events.controller.spec.ts
Normal file
@@ -0,0 +1,18 @@
|
||||
import { Test, TestingModule } from '@nestjs/testing';
|
||||
import { EventsController } from './events.controller';
|
||||
|
||||
describe('EventsController', () => {
|
||||
let controller: EventsController;
|
||||
|
||||
beforeEach(async () => {
|
||||
const module: TestingModule = await Test.createTestingModule({
|
||||
controllers: [EventsController],
|
||||
}).compile();
|
||||
|
||||
controller = module.get<EventsController>(EventsController);
|
||||
});
|
||||
|
||||
it('should be defined', () => {
|
||||
expect(controller).toBeDefined();
|
||||
});
|
||||
});
|
||||
23
src/events/events.controller.ts
Normal file
23
src/events/events.controller.ts
Normal file
@@ -0,0 +1,23 @@
|
||||
import { Controller, Get, Inject, Injectable } from '@nestjs/common';
|
||||
import { Query } from '@nestjs/graphql';
|
||||
import { MyEvent } from 'src/dto/event.dto';
|
||||
import { EventsService } from './events.service';
|
||||
|
||||
@Controller('/api/events')
|
||||
export class EventsController {
|
||||
|
||||
constructor(
|
||||
|
||||
private readonly eventsService: EventsService
|
||||
|
||||
|
||||
){}
|
||||
|
||||
@Get("/")
|
||||
@Query(()=>[MyEvent])
|
||||
async events(): Promise<MyEvent[]>{
|
||||
|
||||
return await this.eventsService.getEvents();
|
||||
|
||||
}
|
||||
}
|
||||
33
src/events/events.entity.ts
Normal file
33
src/events/events.entity.ts
Normal file
@@ -0,0 +1,33 @@
|
||||
import { EventType } from "src/dto/event.dto";
|
||||
import { Column, Entity, PrimaryGeneratedColumn } from "typeorm";
|
||||
|
||||
|
||||
@Entity()
|
||||
export class EventEntity {
|
||||
@PrimaryGeneratedColumn()
|
||||
id: number;
|
||||
|
||||
@Column()
|
||||
eventname: string;
|
||||
|
||||
@Column({ type: "date" })
|
||||
datum: Date;
|
||||
|
||||
@Column({ type: "enum", enum: [EventType.fotos, EventType.html, EventType.markdown, EventType.link] })
|
||||
type: EventType;
|
||||
|
||||
@Column()
|
||||
content: string;
|
||||
|
||||
@Column()
|
||||
minitext: string;
|
||||
|
||||
@Column({ nullable: true })
|
||||
link:string;
|
||||
|
||||
@Column()
|
||||
foto: string;
|
||||
|
||||
@Column({ nullable: true })
|
||||
formular: number;
|
||||
}
|
||||
14
src/events/events.module.ts
Normal file
14
src/events/events.module.ts
Normal file
@@ -0,0 +1,14 @@
|
||||
import { Module } from '@nestjs/common';
|
||||
import { EventsController } from './events.controller';
|
||||
import { EventsService } from './events.service';
|
||||
import { TypeOrmModule } from '@nestjs/typeorm';
|
||||
import { EventEntity } from './events.entity';
|
||||
|
||||
@Module({
|
||||
imports: [
|
||||
TypeOrmModule.forFeature([EventEntity])
|
||||
],
|
||||
controllers: [EventsController],
|
||||
providers: [EventsService, EventsController],
|
||||
})
|
||||
export class EventsModule {}
|
||||
18
src/events/events.service.spec.ts
Normal file
18
src/events/events.service.spec.ts
Normal file
@@ -0,0 +1,18 @@
|
||||
import { Test, TestingModule } from '@nestjs/testing';
|
||||
import { EventsService } from './events.service';
|
||||
|
||||
describe('EventsService', () => {
|
||||
let service: EventsService;
|
||||
|
||||
beforeEach(async () => {
|
||||
const module: TestingModule = await Test.createTestingModule({
|
||||
providers: [EventsService],
|
||||
}).compile();
|
||||
|
||||
service = module.get<EventsService>(EventsService);
|
||||
});
|
||||
|
||||
it('should be defined', () => {
|
||||
expect(service).toBeDefined();
|
||||
});
|
||||
});
|
||||
22
src/events/events.service.ts
Normal file
22
src/events/events.service.ts
Normal file
@@ -0,0 +1,22 @@
|
||||
import { Inject, Injectable } from '@nestjs/common';
|
||||
import { MyEvent } from 'src/dto/event.dto';
|
||||
import { Repository } from 'typeorm';
|
||||
import { EventEntity } from './events.entity';
|
||||
import { InjectRepository } from '@nestjs/typeorm';
|
||||
|
||||
@Injectable()
|
||||
export class EventsService {
|
||||
constructor(
|
||||
@InjectRepository(EventEntity)
|
||||
private readonly eventRepository: Repository<EventEntity>
|
||||
|
||||
){}
|
||||
|
||||
async getEvents(): Promise<MyEvent[]> {
|
||||
|
||||
return (await this.eventRepository.find()) as MyEvent[];
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user