From 077256663708ee8c0ab71306171f67ea1ea2257b Mon Sep 17 00:00:00 2001 From: jeffvli Date: Wed, 12 Oct 2022 18:21:51 -0700 Subject: [PATCH] Set size to int --- .../20221013004240_size_to_int/migration.sql | 9 ++++++ src/server/prisma/schema.prisma | 2 +- src/server/queue/jellyfin/jellyfin.utils.ts | 32 +++---------------- 3 files changed, 14 insertions(+), 29 deletions(-) create mode 100644 src/server/prisma/migrations/20221013004240_size_to_int/migration.sql diff --git a/src/server/prisma/migrations/20221013004240_size_to_int/migration.sql b/src/server/prisma/migrations/20221013004240_size_to_int/migration.sql new file mode 100644 index 000000000..d12901b12 --- /dev/null +++ b/src/server/prisma/migrations/20221013004240_size_to_int/migration.sql @@ -0,0 +1,9 @@ +/* + Warnings: + + - The `size` column on the `Song` table would be dropped and recreated. This will lead to data loss if there is data in the column. + +*/ +-- AlterTable +ALTER TABLE "Song" DROP COLUMN "size", +ADD COLUMN "size" INTEGER; diff --git a/src/server/prisma/schema.prisma b/src/server/prisma/schema.prisma index 1e7d4f4d6..140d3ab53 100644 --- a/src/server/prisma/schema.prisma +++ b/src/server/prisma/schema.prisma @@ -390,7 +390,7 @@ model Song { releaseDate DateTime? releaseYear Int? duration Float - size String? + size Int? lyrics String? bitRate Int container String diff --git a/src/server/queue/jellyfin/jellyfin.utils.ts b/src/server/queue/jellyfin/jellyfin.utils.ts index 1f13985d0..4bd937406 100644 --- a/src/server/queue/jellyfin/jellyfin.utils.ts +++ b/src/server/queue/jellyfin/jellyfin.utils.ts @@ -162,6 +162,7 @@ const insertSongGroup = async ( artists: { connect: artistsConnect }, bitRate: Math.floor(song.MediaSources[0].Bitrate / 1e3), container: song.MediaSources[0].Container, + deleted: false, discNumber: song.ParentIndexNumber, duration: Math.floor(song.MediaSources[0].RunTimeTicks / 1e7), externals: { connect: externalsConnect }, @@ -179,7 +180,7 @@ const insertSongGroup = async ( remoteId: song.Id, serverFolders: { connect: { id: serverFolder.id } }, serverId: server.id, - size: String(song.MediaSources[0].Size), + size: song.MediaSources[0].Size, sortName: song.Name, trackNumber: song.IndexNumber, }, @@ -187,6 +188,7 @@ const insertSongGroup = async ( artists: { connect: artistsConnect }, bitRate: Math.floor(song.MediaSources[0].Bitrate / 1e3), container: song.MediaSources[0].Container, + deleted: false, discNumber: song.ParentIndexNumber, duration: Math.floor(song.MediaSources[0].RunTimeTicks / 1e7), externals: { connect: externalsConnect }, @@ -204,6 +206,7 @@ const insertSongGroup = async ( remoteId: song.Id, serverFolders: { connect: { id: serverFolder.id } }, serverId: server.id, + size: song.MediaSources[0].Size, sortName: song.Name, trackNumber: song.IndexNumber, }, @@ -216,33 +219,6 @@ const insertSongGroup = async ( }; }); - // const artists = uniqBy( - // songs.flatMap((song) => { - // return song.ArtistItems.map((artist) => ({ - // deleted: false, - // name: artist.Name, - // remoteId: artist.Id, - // serverFolders: { connect: { id: serverFolder.id } }, - // serverId: server.id, - // sortName: '', - // })); - // }), - // 'remoteId' - // ); - - // for (const artist of artists) { - // await prisma.artist.upsert({ - // create: artist, - // update: artist, - // where: { - // uniqueArtistId: { - // remoteId: artist.remoteId, - // serverId: server.id, - // }, - // }, - // }); - // } - const uniqueArtistIds = songs .flatMap((song) => song.ArtistItems.flatMap((artist) => artist.Id)) .filter(uniqueArray);