delete functionality

This commit is contained in:
raiper34
2024-07-14 00:20:41 +02:00
parent 208ce466cf
commit 893bc438f8
13 changed files with 64 additions and 17 deletions
@@ -1,4 +1,4 @@
import {Body, Controller, Get, Post} from '@nestjs/common';
import {Body, Controller, Delete, Get, Param, Post} from '@nestjs/common';
import {PlaylistService} from "./playlist.service";
import {PlaylistModel} from "./playlist.model";
@@ -19,4 +19,9 @@ export class PlaylistController {
async create(@Body() playlist: PlaylistModel): Promise<void> {
await this.service.create(playlist);
}
@Delete(':id')
remove(@Param('id') id: number): Promise<void> {
return this.service.remove(id);
}
}
@@ -30,6 +30,7 @@ export class PlaylistService {
async remove(id: number): Promise<void> {
await this.repository.delete(id);
this.io.emit('playlistDelete', {id});
}
async create(playlist: PlaylistEntity): Promise<void> {
+6 -1
View File
@@ -1,4 +1,4 @@
import {Controller, Get, Param, Res, StreamableFile} from '@nestjs/common';
import {Controller, Delete, Get, Param, Res, StreamableFile} from '@nestjs/common';
import {TrackService} from "./track.service";
import {TrackModel} from "./track.model";
import {createReadStream} from "fs";
@@ -30,4 +30,9 @@ export class TrackController {
res.set({'Content-Disposition': `attachment; filename="${track.artist} - ${track.song}.mp3"`,});
return new StreamableFile(file);
}
@Delete(':id')
remove(@Param('id') id: number): Promise<void> {
return this.service.remove(id);
}
}
+1 -1
View File
@@ -29,6 +29,6 @@ export class TrackEntity {
@Column({default: Date.now()})
createdAt?: number;
@ManyToOne(() => PlaylistEntity, playlist => playlist.tracks)
@ManyToOne(() => PlaylistEntity, playlist => playlist.tracks, {onDelete: "CASCADE"})
playlist?: PlaylistEntity;
}
+1
View File
@@ -40,6 +40,7 @@ export class TrackService {
async remove(id: number): Promise<void> {
await this.repository.delete(id);
this.io.emit('trackDelete', {id});
}
async create(track: TrackEntity, playlist?: PlaylistEntity): Promise<void> {