From 73f1f87695dc6905853915ead3637713183686a7 Mon Sep 17 00:00:00 2001 From: Rafi Arrafif Date: Tue, 30 Jun 2026 23:26:27 +0700 Subject: [PATCH] wip: create new bulk insert char module --- .../repositories/bulkInsertMediaCharacter.repository.ts | 5 +++-- .../internal/services/http/bulkInsertAnime.service.ts | 4 +++- src/modules/internal/types/mediaCharacters.ts | 6 ++++-- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/modules/internal/repositories/bulkInsertMediaCharacter.repository.ts b/src/modules/internal/repositories/bulkInsertMediaCharacter.repository.ts index eedcf4a..fd6402a 100644 --- a/src/modules/internal/repositories/bulkInsertMediaCharacter.repository.ts +++ b/src/modules/internal/repositories/bulkInsertMediaCharacter.repository.ts @@ -1,8 +1,9 @@ import {AppError} from "../../../helpers/error/instances/app"; +import {MediaChar} from "../types/mediaCharacters"; -export const bulkInsertMediaCharacterRepository = async (animeMalId: number) => { +export const bulkInsertMediaCharacterRepository = async (animeMalId: number, characters: MediaChar[]) => { try { - return animeMalId + return characters[0].character.name; } catch (error) { throw new AppError(500, "Failed to bulk insert media characters", error); } diff --git a/src/modules/internal/services/http/bulkInsertAnime.service.ts b/src/modules/internal/services/http/bulkInsertAnime.service.ts index b009a57..b185ff6 100644 --- a/src/modules/internal/services/http/bulkInsertAnime.service.ts +++ b/src/modules/internal/services/http/bulkInsertAnime.service.ts @@ -17,7 +17,9 @@ export const bulkInsertAnimeService = async (malId: number) => { // await bulkInsertMediaCharacterRepository(insertedMedia.mal_id) const mediaChar = await fetch(baseURL + getMediaCharacters).then((res) => res.json()) as MediaCharacters; - return mediaChar; + await bulkInsertMediaCharacterRepository(insertedMedia.mal_id, mediaChar.data); + + return insertedMedia.id; } catch (error) { ErrorForwarder(error); } diff --git a/src/modules/internal/types/mediaCharacters.ts b/src/modules/internal/types/mediaCharacters.ts index 5222ab4..63927cb 100644 --- a/src/modules/internal/types/mediaCharacters.ts +++ b/src/modules/internal/types/mediaCharacters.ts @@ -38,11 +38,13 @@ enum Role { Background = "Background", } -interface MediaChar { +export interface MediaChar { character: Character; role: Role; favorites: number; voice_actors: voiceActor[]; } -export type MediaCharacters = Array; \ No newline at end of file +export type MediaCharacters = { + data: MediaChar[]; +}; \ No newline at end of file