def append_book_impl(args): try: user = user_by_user_id(args['user_id']) books = [] if args['books'] is None: return Response(True, "Books Appended", UserBookSchema(many=True).dumps(books).data).output() for book_dict in args['books']: validate(book_dict) book_name = book_dict['name'] book = dao.find_book_with_name(book_name) if book is None: book = Book(book_name, book_dict['author'], book_dict['category']) db.session.add(book) db.session.commit() try: user_book = user_book_from_book_name(book_name, user_by_user_id(args['user_id']).id) user_book.pages = book_dict['pages'] user_book.pages_read = book_dict['pages_read'] user_book.rate = book_dict['rate'] user_book.loved = book_dict['loved'] user_book.snippet = book_dict['snippet'] user_book.cover_url = book_dict['cover_url'] except Exception as e: user_book = UserBooks(user, book, book_dict['pages_read'], book_dict['pages'], book_dict['rate'], book_dict["snippet"]) user_book.cover_url = book_dict['cover_url'] db.session.add(user_book) db.session.commit() books.append(user_book) return Response(True, "Books Appended", UserBookSchema(many=True).dumps(books).data).output() except Exception as e: return Response(False, str(e), None).output()
def delete_book_impl(args): try: book = user_book_from_book_name(args['book_name'], user_by_user_id(args['user_id']).id) db.session.delete(book) db.session.commit() return Response(True, "Book Deleted", None).output() except Exception as e: return Response(False, str(e), None).output()
def append_book_impl(args): try: user = user_by_user_id(args['user_id']) books = [] if args['books'] is None: return Response( True, "Books Appended", UserBookSchema(many=True).dumps(books).data).output() for book_dict in args['books']: validate(book_dict) book_name = book_dict['name'] book = dao.find_book_with_name(book_name) if book is None: book = Book(book_name, book_dict['author'], book_dict['category']) db.session.add(book) db.session.commit() try: user_book = user_book_from_book_name( book_name, user_by_user_id(args['user_id']).id) user_book.pages = book_dict['pages'] user_book.pages_read = book_dict['pages_read'] user_book.rate = book_dict['rate'] user_book.loved = book_dict['loved'] user_book.snippet = book_dict['snippet'] user_book.cover_url = book_dict['cover_url'] except Exception as e: user_book = UserBooks(user, book, book_dict['pages_read'], book_dict['pages'], book_dict['rate'], book_dict["snippet"]) user_book.cover_url = book_dict['cover_url'] db.session.add(user_book) db.session.commit() books.append(user_book) return Response(True, "Books Appended", UserBookSchema(many=True).dumps(books).data).output() except Exception as e: return Response(False, str(e), None).output()