sunnymh-backend/src/services/manga.service.js
2025-05-14 16:19:08 +08:00

72 lines
1.5 KiB
JavaScript

class MangaService {
async getMangaById(db, mangaId) {
const sqlQuery = 'SELECT * FROM mangas WHERE mangaId = ?';
const results = await db.query(sqlQuery, [mangaId]);
return results[0];
}
async getMangaIdByName(db, mangaName) {
const sqlQuery = 'SELECT mangaId FROM mangas WHERE mangaName = ?';
const results = await db.query(sqlQuery, [mangaName]);
return results[0];
}
async insertMangaInfo(db, mangaInfo) {
const sqlQuery = `
INSERT INTO mangas (
mangaId,
mangaName,
mangaAuthor,
mangaNickname,
mangaStatus
) VALUES (?, ?, ?, ?, ?)
`;
const params = [
mangaInfo.mangaId,
mangaInfo.name,
mangaInfo.author,
JSON.stringify(mangaInfo.nickNames),
mangaInfo.status
];
return await db.query(sqlQuery, params);
}
async insertMangaChapter(db, chapterInfo) {
const sqlQuery = `
INSERT INTO chapters (
mangaId,
chapterOrder,
chapterName
) VALUES (?, ?, ?)
`;
const params = [
chapterInfo.mangaId,
chapterInfo.chapterOrder,
chapterInfo.chapterName
];
return await db.query(sqlQuery, params);
}
async insertMangaGenres(db, genres) {
const sqlQuery = `
INSERT INTO manga_genres (
mangaId,
genreId
) VALUES (?, ?)
`;
const params = [
genres.mangaId,
genres.genreId
];
return await db.query(sqlQuery, params);
}
}
module.exports = new MangaService();