Esempio n. 1
0
 def fetch_last(self):
     sql = 'SELECT price, delta, date, time FROM item_prices WHERE item_id = %s ORDER BY date DESC, time DESC'
     result = query_one(sql, (self.item_id,))
     self.last_price = result[0]
     self.last_delta = result[1]
     self.last_date = result[2]
     self.last_time = result[3]
Esempio n. 2
0
 def find_by_item_id(cls, item_id):
     sql = 'SELECT * FROM {} WHERE item_id=%s'.format(ItemImage.db_table)
     item = query_one(sql, (item_id, ))
     return cls(*item) if item is not None else None
Esempio n. 3
0
 def find_by_item_id(cls, item_id):
     sql = 'SELECT * FROM {} WHERE item_id=%s ORDER BY id DESC'.format(ItemPrice.db_table)
     item_price = query_one(sql, (item_id,))
     return cls(*item_price) if item_price is not None else None
Esempio n. 4
0
 def find_by_store_id(cls, store_id):
     sql = 'SELECT * FROM {} WHERE id=%s'.format(Store.db_table)
     store = query_one(sql, (store_id, ))
     return cls(*store) if store is not None else None
Esempio n. 5
0
 def find_by_store_product_id(cls, store_product_id, url):
     sql = 'SELECT * FROM {} WHERE store_product_id=%s AND url=%s'.format(Item.db_table)
     item = query_one(sql, (store_product_id, url))
     return cls(*item) if item is not None else None
Esempio n. 6
0
 def fetch_last_delta(self):
     sql = 'SELECT delta FROM item_prices WHERE item_id = %s ORDER BY date DESC, time DESC'
     self.last_delta = query_one(sql, (self.item_id,))[0]
Esempio n. 7
0
 def fetch_max_price(self):
     sql = 'SELECT MAX(price) FROM item_prices WHERE item_id = %s'
     self.max_price = round(query_one(sql, (self.item_id,))[0], 2)
Esempio n. 8
0
 def fetch_avg_price(self):
     sql = 'SELECT AVG(price) FROM item_prices WHERE item_id = %s'
     self.avg_price = round(query_one(sql, (self.item_id,))[0], 2)
Esempio n. 9
0
 def fetch_min_price(self):
     sql = 'SELECT MIN(price) FROM item_prices WHERE item_id = %s'
     self.min_price = query_one(sql, (self.item_id,))[0]
Esempio n. 10
0
 def fetch_min_max(self):
     sql = 'SELECT MIN(price), MAX(price), AVG(price) FROM item_prices WHERE item_id = %s'
     result = query_one(sql, (self.item_id,))
     self.min_price = round(result[0], 2)
     self.max_price = round(result[1], 2)
     self.avg_price = round(result[2], 2)
Esempio n. 11
0
 def fetch_stats_for_item_id(cls, item_id):
     sql = 'SELECT * FROM {} WHERE item_id = %s'.format(ItemStats.db_table)
     stats = query_one(sql, (item_id,))
     return cls(*stats) if stats is not None else None
Esempio n. 12
0
 def fetch_count_of_min_price(self):
     sql = 'SELECT COUNT(*) FROM item_prices WHERE item_id = %s GROUP BY price ORDER BY price LIMIT 1'
     self.count_min_price = query_one(sql, (self.item_id,))[0]
Esempio n. 13
0
 def select_oldest(cls):
     sql = "SELECT * FROM {} ORDER BY lc_date ASC, lc_time ASC".format(StoreURL.db_table)
     store_url = query_one(sql)
     return cls(*store_url) if store_url is not None else None