Add methods to select a city and return message.
This commit is contained in:
+25
-2
@@ -12,7 +12,7 @@ class CityAPI:
|
||||
"""
|
||||
self.__fetcher, self.__formatter = fetcher, formatter
|
||||
|
||||
async def get_objects(self) -> dict:
|
||||
async def get_dict(self):
|
||||
endpoint = "/api/v2/cities"
|
||||
|
||||
status, json_data = await self.__fetcher.fetch_json(endpoint)
|
||||
@@ -22,8 +22,21 @@ class CityAPI:
|
||||
|
||||
return {"error": "Сталася помилка, спробуйте пізніше."}
|
||||
|
||||
async def select_obj(self, city_name: str, username: str):
|
||||
endpoint = "/api/v2/select-city"
|
||||
|
||||
status, json_data = await self.__fetcher.send_json(endpoint, {
|
||||
'cityName': city_name,
|
||||
'matrixUsername': username,
|
||||
})
|
||||
|
||||
if status == 200:
|
||||
return {"ok": json_data}
|
||||
|
||||
return {"error": "Сталася помилка, спробуйте пізніше."}
|
||||
|
||||
async def get_objects_message(self) -> str:
|
||||
response = await self.get_objects()
|
||||
response = await self.get_dict()
|
||||
|
||||
match response:
|
||||
case {"ok": json_data}:
|
||||
@@ -32,3 +45,13 @@ class CityAPI:
|
||||
case {"error": error_message}:
|
||||
return error_message
|
||||
|
||||
async def select_object_message(self, city_name: str, username: str) -> str:
|
||||
response = await self.select_obj(city_name, username)
|
||||
|
||||
match response:
|
||||
case {"ok": json_data}:
|
||||
return 'Місто обрано'
|
||||
|
||||
case {"error": error_message}:
|
||||
return error_message
|
||||
|
||||
|
||||
Reference in New Issue
Block a user