import sqlite3 as sqlite from be.model import error from be.model import db_conn class Seller(db_conn.DBConn): def __init__(self): db_conn.DBConn.__init__(self) def add_book(self, user_id: str, store_id: str, book_id: str, book_json_str: str, stock_level: int): try: if not self.user_id_exist(user_id): return error.error_non_exist_user_id(user_id) if not self.store_id_exist(store_id): return error.error_non_exist_store_id(store_id) if self.book_id_exist(store_id, book_id): return error.error_exist_book_id(book_id) self.conn.execute("INSERT into store(store_id, book_id, book_info, stock_level)" "VALUES (?, ?, ?, ?)", (store_id, book_id, book_json_str, stock_level)) self.conn.commit() except sqlite.Error as e: return 528, "{}".format(str(e)) except BaseException as e: return 530, "{}".format(str(e)) return 200, "ok" def add_stock_level(self, user_id: str, store_id: str, book_id: str, add_stock_level: int): try: if not self.user_id_exist(user_id): return error.error_non_exist_user_id(user_id) if not self.store_id_exist(store_id): return error.error_non_exist_store_id(store_id) if not self.book_id_exist(store_id, book_id): return error.error_non_exist_book_id(book_id) self.conn.execute("UPDATE store SET stock_level = stock_level + ? " "WHERE store_id = ? AND book_id = ?", (add_stock_level, store_id, book_id)) self.conn.commit() except sqlite.Error as e: return 528, "{}".format(str(e)) except BaseException as e: return 530, "{}".format(str(e)) return 200, "ok" def create_store(self, user_id: str, store_id: str) -> (int, str): try: if not self.user_id_exist(user_id): return error.error_non_exist_user_id(user_id) if self.store_id_exist(store_id): return error.error_exist_store_id(store_id) self.conn.execute("INSERT into user_store(store_id, user_id)" "VALUES (?, ?)", (store_id, user_id)) self.conn.commit() except sqlite.Error as e: return 528, "{}".format(str(e)) except BaseException as e: return 530, "{}".format(str(e)) return 200, "ok"