diff --git a/src/modules/ticket/repositories/ticket.repository.ts b/src/modules/ticket/repositories/ticket.repository.ts index a7b6f94..9d56dc5 100644 --- a/src/modules/ticket/repositories/ticket.repository.ts +++ b/src/modules/ticket/repositories/ticket.repository.ts @@ -75,7 +75,7 @@ export class TicketRepository extends EntityRepository { limit, offset, orderBy: { [orderBy]: order.toLowerCase() as 'asc' | 'desc' }, - populate: ['parent', 'children', 'admin', 'user'], + populate: ['admin', 'user'], filters: ['notDeleted'], }); diff --git a/src/modules/ticket/ticket.controller.ts b/src/modules/ticket/ticket.controller.ts index df541b6..345a7a8 100644 --- a/src/modules/ticket/ticket.controller.ts +++ b/src/modules/ticket/ticket.controller.ts @@ -36,8 +36,8 @@ export class TicketController { @Post('public/tickets') @UseGuards(AuthGuard) @ApiOperation({ summary: 'Create a ticket (as user)' }) - createAsUser(@Body() createTicketUserDto: CreateTicketUserDto, @UserId() userId: string) { - return this.ticketService.createAsUser(createTicketUserDto, userId); + createAsUser(@Body() dto: CreateTicketUserDto, @UserId() userId: string) { + return this.ticketService.createTicketAsUser(dto, userId); } @Get('public/tickets') diff --git a/src/modules/ticket/ticket.service.ts b/src/modules/ticket/ticket.service.ts index ff638f8..b56c0c7 100644 --- a/src/modules/ticket/ticket.service.ts +++ b/src/modules/ticket/ticket.service.ts @@ -61,13 +61,13 @@ export class TicketService { return ticket; } - async createAsUser(createTicketUserDto: CreateTicketUserDto, userId: string) { + async createTicketAsUser(dto: CreateTicketUserDto, userId: string) { const user = await this.em.findOne(User, { id: userId }); if (!user) { throw new NotFoundException('User not found'); } - const { parentId, ...rest } = createTicketUserDto; + const { parentId, ...rest } = dto; let parent: Ticket | null = null; if (parentId) { @@ -106,9 +106,9 @@ export class TicketService { } async findTicketMessagesAsUser(ticketId: string, userId: string) { - const ticket = await this.ticketRepository.find( - { parent: { id: ticketId }, user: { id: userId } }, - { populate: ['admin', 'user'], filters: ['notDeleted'] }, + const ticket = await this.ticketRepository.findOne( + { id: ticketId, user: { id: userId } }, + { populate: ['children', 'children.admin', 'children.user', 'admin', 'user'], filters: ['notDeleted'] }, ); if (!ticket) { throw new NotFoundException('Ticket not found'); @@ -117,9 +117,9 @@ export class TicketService { } async findTicketMessagesAsAdmin(ticketId: string) { - const ticket = await this.ticketRepository.find( - { parent: { id: ticketId } }, - { populate: ['admin', 'user'], filters: ['notDeleted'] }, + const ticket = await this.ticketRepository.findOne( + { id: ticketId }, + { populate: ['children', 'children.admin', 'children.user', 'admin', 'user'], filters: ['notDeleted'] }, ); if (!ticket) { throw new NotFoundException('Ticket not found');