delete functionality
This commit is contained in:
@@ -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> {
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
@@ -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;
|
||||
}
|
||||
@@ -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> {
|
||||
|
||||
Reference in New Issue
Block a user