mirror of
https://github.com/ershisan99/flashcards-api.git
synced 2025-12-16 12:33:17 +00:00
refactor a bit
This commit is contained in:
@@ -2,22 +2,10 @@ import { Module } from '@nestjs/common'
|
||||
import { CardsService } from './cards.service'
|
||||
import { CardsController } from './cards.controller'
|
||||
import { CqrsModule } from '@nestjs/cqrs'
|
||||
import {
|
||||
CreateCardHandler,
|
||||
DeleteDeckByIdHandler,
|
||||
GetDeckByIdHandler,
|
||||
GetAllCardsInDeckHandler,
|
||||
UpdateDeckHandler,
|
||||
} from './use-cases'
|
||||
import { DeleteDeckByIdHandler, GetDeckByIdHandler, UpdateDeckHandler } from './use-cases'
|
||||
import { CardsRepository } from './infrastructure/cards.repository'
|
||||
|
||||
const commandHandlers = [
|
||||
CreateCardHandler,
|
||||
GetAllCardsInDeckHandler,
|
||||
GetDeckByIdHandler,
|
||||
DeleteDeckByIdHandler,
|
||||
UpdateDeckHandler,
|
||||
]
|
||||
const commandHandlers = [GetDeckByIdHandler, DeleteDeckByIdHandler, UpdateDeckHandler]
|
||||
|
||||
@Module({
|
||||
imports: [CqrsModule],
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
export * from '../../decks/use-cases/create-card-use-case'
|
||||
export * from '../../decks/use-cases/get-all-cards-in-deck-use-case'
|
||||
export * from './get-deck-by-id-use-case'
|
||||
export * from './delete-deck-by-id-use-case'
|
||||
export * from './update-deck-use-case'
|
||||
|
||||
@@ -9,10 +9,10 @@ import {
|
||||
GetAllDecksHandler,
|
||||
UpdateDeckHandler,
|
||||
GetAllCardsInDeckHandler,
|
||||
CreateCardHandler,
|
||||
} from './use-cases'
|
||||
import { DecksRepository } from './infrastructure/decks.repository'
|
||||
import { CardsRepository } from '../cards/infrastructure/cards.repository'
|
||||
import { CreateCardHandler } from './use-cases/create-card-use-case'
|
||||
|
||||
const commandHandlers = [
|
||||
CreateDeckHandler,
|
||||
|
||||
@@ -4,3 +4,4 @@ export * from './get-deck-by-id-use-case'
|
||||
export * from './delete-deck-by-id-use-case'
|
||||
export * from './update-deck-use-case'
|
||||
export * from './get-all-cards-in-deck-use-case'
|
||||
export * from './create-card-use-case'
|
||||
|
||||
@@ -17,9 +17,12 @@ export class UpdateDeckHandler implements ICommandHandler<UpdateDeckCommand> {
|
||||
|
||||
async execute(command: UpdateDeckCommand) {
|
||||
const deck = await this.deckRepository.findDeckById(command.deckId)
|
||||
if (!deck) throw new NotFoundException(`Deck with id ${command.deckId} not found`)
|
||||
if (!deck) {
|
||||
throw new NotFoundException(`Deck with id ${command.deckId} not found`)
|
||||
}
|
||||
|
||||
if (deck.userId !== command.userId) {
|
||||
throw new BadRequestException(`You can't change a deck that you don't own`)
|
||||
throw new BadRequestException(`You can't modify a deck that you don't own`)
|
||||
}
|
||||
|
||||
return await this.deckRepository.updateDeckById(command.deckId, command.deck)
|
||||
|
||||
Reference in New Issue
Block a user