Project Initialization

This commit is contained in:
Muluhabt
2026-05-12 15:17:16 +03:00
parent 33fa742e8a
commit 3b8b6979db
259 changed files with 15962 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
import { Body, Controller, Delete, Get, HttpCode, Param, ParseUUIDPipe, Post, Query } from '@nestjs/common';
import { ApiOperation, ApiTags } from '@nestjs/swagger';
import { CreateTicketDto } from './dto/create-ticket.dto';
import { FilterTicketDto } from './dto/filter-ticket.dto';
import { TicketsService } from './tickets.service';
@ApiTags('tickets')
// @UseGuards(JwtAuthGuard) — TODO: integrate @edr/auth
@Controller('tickets')
export class TicketsController {
constructor(private readonly ticketsService: TicketsService) {}
@Post()
@ApiOperation({ summary: 'Issue a new passenger ticket' })
create(@Body() dto: CreateTicketDto) {
return this.ticketsService.create(dto);
}
@Get()
@ApiOperation({ summary: 'List passenger tickets (paginated)' })
findAll(@Query() filter: FilterTicketDto) {
return this.ticketsService.findAll(filter);
}
@Get(':id')
@ApiOperation({ summary: 'Get a ticket by ID' })
findOne(@Param('id', ParseUUIDPipe) id: string) {
return this.ticketsService.findById(id);
}
@Delete(':id')
@HttpCode(204)
@ApiOperation({ summary: 'Cancel a ticket' })
cancel(@Param('id', ParseUUIDPipe) id: string) {
return this.ticketsService.cancel(id);
}
}