| 123456789101112131415161718192021222324252627282930313233343536 |
- import model
- import sys
- import stocks
- import view
- import database
- """
- This is the controller file
- """
- if __name__ == '__main__':
- db = database.db
- timestamp_latest = model.get_timestamp_latest(db)
- timestamp_stored = model.get_timestamp_stored()
- if timestamp_latest == timestamp_stored:
- """Nothing to do"""
- sys.exit()
- # Update timestamp_stored
- model.put_timestamp_stored(timestamp_latest)
- timestamp_previous = model.get_timestamp_previous(db)
- for stock in stocks.stocks:
- stock_id = stock[1]
- data_previous = model.get_data(stock_id, timestamp_previous, db)
- data_latest = model.get_data(stock_id, timestamp_latest, db)
- threshold = stock[3]
- is_drop = model.process_data(data_previous, data_latest, threshold)
- current_price = data_latest.current_price
- quantity = data_latest.available_shares - data_previous.available_shares
- stock_name = stock[0]
- message = view.create_message(
- stock_name, timestamp_latest, current_price, quantity)
- print(message)
- if is_drop:
- view.broadcast(message)
- db.close()
|