Genres: complete service
This commit is contained in:
parent
c0c9ebb038
commit
a3dd007bde
1 changed files with 25 additions and 12 deletions
|
|
@ -1,25 +1,38 @@
|
|||
import { Injectable } from '@nestjs/common';
|
||||
import { GenreDto } from './dto/genre.dto';
|
||||
import { InjectModel } from '@nestjs/mongoose';
|
||||
import { Genre } from './entities/genre.entity';
|
||||
import { Model } from 'mongoose';
|
||||
|
||||
@Injectable()
|
||||
export class GenresService {
|
||||
create(dto: GenreDto) {
|
||||
return 'This action adds a new genre';
|
||||
constructor(@InjectModel('Genre') private genreModel: Model<Genre>) {}
|
||||
|
||||
async create(dto: GenreDto): Promise<any> {
|
||||
const genre = new this.genreModel(dto);
|
||||
return genre.save();
|
||||
}
|
||||
|
||||
findAll() {
|
||||
return `This action returns all genres`;
|
||||
async findAll(page: number, genresPerPage: number): Promise<any> {
|
||||
let genres;
|
||||
if (genresPerPage !== undefined) {
|
||||
const skip = (page - 1) * genresPerPage;
|
||||
genres = await this.genreModel.find().skip(skip).limit(genresPerPage);
|
||||
} else {
|
||||
genres = await this.genreModel.find();
|
||||
}
|
||||
const total = await this.genreModel.countDocuments();
|
||||
return {
|
||||
genres: genres,
|
||||
genreCount: total,
|
||||
};
|
||||
}
|
||||
|
||||
findOne(id: number) {
|
||||
return `This action returns a #${id} genre`;
|
||||
async findId(id: string): Promise<any> {
|
||||
return this.genreModel.findById(id);
|
||||
}
|
||||
|
||||
update(id: number, dto: GenreDto) {
|
||||
return `This action updates a #${id} genre`;
|
||||
}
|
||||
|
||||
remove(id: number) {
|
||||
return `This action removes a #${id} genre`;
|
||||
async remove(id: string): Promise<any> {
|
||||
return this.genreModel.findByIdAndDelete(id);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue