Skip to content

Commit c0915f1

Browse files
committed
modified stock-wallet
1 parent 1c92838 commit c0915f1

File tree

4 files changed

+13
-28
lines changed

4 files changed

+13
-28
lines changed

tutorials/stock-wallet/docker-compose.yml

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -75,24 +75,6 @@ services:
7575
- postgres
7676
- kafka
7777
- discovery
78-
appsmith:
79-
image: index.docker.io/appsmith/appsmith-ce
80-
container_name: appsmith
81-
ports:
82-
- 80:80
83-
- 443:443
84-
- 9001:9001
85-
volumes:
86-
- ./stacks:/appsmith-stacks
87-
labels:
88-
com.centurylinklabs.watchtower.enable: 'true'
89-
restart: unless-stopped
90-
auto_update:
91-
image: containrrr/watchtower:latest-dev
92-
volumes:
93-
- /var/run/docker.sock:/var/run/docker.sock
94-
command: --schedule "0 0 * ? * *" --label-enable --cleanup
95-
restart: unless-stopped
9678
microservice-stocks:
9779
restart: always
9880
build:

tutorials/stock-wallet/microservices/stocks/src/aggregates.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,9 @@ class StocksAggregate(Aggregate[Stocks]):
2929
"""StocksAggregate class."""
3030

3131
@staticmethod
32-
async def add_ticker_to_stock(ticker: str) -> UUID:
32+
async def add_ticker_to_stock(ticker: str, updated: str) -> UUID:
3333
"""Create a new instance."""
34-
35-
stocks = await Stocks.create(ticker=ticker, updated="Never", quotes=EntitySet())
34+
stocks = await Stocks.create(ticker=ticker, updated=updated, quotes=EntitySet())
3635
return stocks
3736

3837
@staticmethod

tutorials/stock-wallet/microservices/stocks/src/commands/services.py

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,9 @@ class StocksCommandService(CommandService):
2727
async def set_stock_ticker(self, request: Request):
2828
event: Event = await request.content()
2929
for ticker in event["tickers"]:
30-
await StocksAggregate.add_ticker_to_stock(ticker["ticker"])
30+
if ticker['flag'] == "ticker":
31+
now = pendulum.now()
32+
await StocksAggregate.add_ticker_to_stock(ticker["ticker"], now.to_datetime_string())
3133

3234
def call_remote(self, ticker, from_: str, to_: str):
3335
with RESTClient("") as client:
@@ -43,16 +45,18 @@ async def get_stock_values(self, request: Request):
4345
if len(tickers) > 0:
4446
for ticker in tickers:
4547
ticker_updated = pendulum.parse(ticker["updated"])
46-
results = await self.call_remote(ticker["ticker"],
48+
results = self.call_remote(ticker["ticker"],
4749
now_minus_one_month.to_date_string(),
4850
now.to_date_string())
4951
for result in results:
50-
result_date = pendulum.parse(result["t"])
51-
difference_ticker_result = ticker_updated.diff(result_date).in_hours()
52-
if difference_ticker_result < 0:
52+
result_date = pendulum.from_timestamp(result["t"]/1000)
53+
# difference_ticker_result = ticker_updated.diff(result_date).in_hours()
54+
if ticker_updated < result_date:
5355
await StocksAggregate.update_time_ticker(ticker["uuid"], result_date.to_datetime_string())
56+
logger.warning("Date time ticker updated")
5457
when = result_date.to_datetime_string()
5558
await StocksAggregate.add_quotes(ticker["uuid"], {"close": result['c'],
5659
"volume": result['v'],
5760
"when": when})
61+
logger.warning("Added new quote")
5862

tutorials/stock-wallet/microservices/wallet/src/queries/repository.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,12 @@ def get_wallets(self):
4747
wallets_query = self.session.query(Wallet).all()
4848
wallets = []
4949
for wallet in wallets_query:
50-
wallets.append({"name": wallet.name, "uuid": wallet.uuid})
50+
wallets.append({"wallet_name": wallet.name, "uuid": wallet.uuid})
5151
return wallets
5252

5353
def get_wallet(self, uuid):
5454
wallet_query = self.session.query(Wallet).filter(Wallet.uuid == uuid).first()
55-
return {"id": wallet_query.id, "uuid": wallet_query.uuid, "name": wallet_query.name}
55+
return {"id": wallet_query.id, "uuid": wallet_query.uuid, "wallet_name": wallet_query.name}
5656

5757
def add_tickers(self, wallet_uuid: str, ticker: dict):
5858
wallet = self.session.query(Wallet).filter(Wallet.uuid == wallet_uuid).first()

0 commit comments

Comments
 (0)