def track_album_artist_insert(track_query, album_query, artist_query): try: inserted_album = insert(Album, album_query) except IntegrityError: album = select_by_uid(Album, album_query['uid']) track_query['album_id'] = album['id'] else: track_query['album_id'] = inserted_album.inserted_primary_key[0] try: inserted_track = insert(Track, track_query) except IntegrityError: track = select_by_uid(Track, track_query['uid']) track_id = track['id'] else: track_id = inserted_track.inserted_primary_key[0] try: inserted_artist = insert(Artist, artist_query) except IntegrityError: artist = select_by_uid(Artist, artist_query['uid']) artist_id = artist['id'] else: artist_id = inserted_artist.inserted_primary_key[0] return { 'artist_id': artist_id, 'album_id': track_query['album_id'], 'track_id': track_id }
def artist_track_insert(id_pack): query = { 'artist_id': id_pack['artist_id'], 'track_id': id_pack['track_id'] } try: result = insert(ArtistTrack, query) except IntegrityError as e: print(f"Add logger {e} database/bl.py")
def exception_insert(uid: int): fetched = select_by_uid(User, uid) current_time = get_current_time() if fetched: update_by_id(User, {'last_search': current_time}, fetched['id']) cache_user(fetched, current_time, uid) else: query = aggergate_query(uid, current_time) inserted_user = insert(User, query) query['id'] = inserted_user.inserted_primary_key[0] cache_user(query, current_time, uid)
def insert_user_artist(user_id, artist_id): try: insert(UserArtist, {'user_id': user_id, 'artist_id': artist_id}) except IntegrityError as e: print(f"Add logger {e} database/bl.py")
def insert_user_album(user_id, album_id): try: insert(UserAlbum, {'user_id': user_id, 'album_id': album_id}) except IntegrityError as e: print(f"Add logger {e} database/bl.py")
def insert_user_track(user_id, track_id): try: insert(UserTrack, {'user_id': user_id, 'track_id': track_id}) except IntegrityError as e: print(f"Add logger {e} database/bl.py")