Skip to content

Commit 2ce4987

Browse files
committed
refactor: TT-352 use_cases and entry_points improvements to read activities
1 parent 47bb34b commit 2ce4987

File tree

7 files changed

+32
-40
lines changed

7 files changed

+32
-40
lines changed
Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,15 @@
11
from flask import Flask
2-
from V2.source.entry_points.flask_api.api import init_app
2+
from flask_restplus import Resource, Api
3+
from . import activities_endpoints
34

45
app = Flask(__name__)
5-
init_app(app)
6+
api = Api(
7+
app,
8+
version='1.0',
9+
title='Time Tracker API',
10+
description='API for the TimeTracker project',
11+
)
12+
13+
ns_activities = api.namespace('activities', description='Endpoint for activities')
14+
ns_activities.route('/')(activities_endpoints.Activities)
15+
ns_activities.route('/<string:activity_id>')(activities_endpoints.Activity)
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
from flask_restplus import Resource
2+
3+
from V2.source import use_cases
4+
5+
class Activities(Resource):
6+
def get(self):
7+
activities_dto = use_cases.get_list_activities()
8+
activities = [activity_dto.__dict__ for activity_dto in activities_dto]
9+
return activities
10+
11+
12+
class Activity(Resource):
13+
def get(self, activity_id: str):
14+
activity_dto = use_cases.get_activity_by_id(activity_id)
15+
activity = activity_dto.__dict__
16+
return activity

V2/source/entry_points/flask_api/activities_namespace.py

Lines changed: 0 additions & 20 deletions
This file was deleted.

V2/source/entry_points/flask_api/api.py

Lines changed: 0 additions & 14 deletions
This file was deleted.

V2/source/use_cases/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
from ._get_activities_use_case import get_list_activities
2+
from ._get_activity_by_id_use_case import get_activity_by_id

V2/source/use_cases/get_activities_use_case.py renamed to V2/source/use_cases/_get_activities_use_case.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,5 @@ def get_list_activities():
55
activity_json_dao = ActivitiesJsonDao('./V2/source/activities_data.json')
66
activity_service = ActivityService(activity_json_dao)
77
activities_dto = activity_service.get_all()
8-
activities = [activity_dto.__dict__ for activity_dto in activities_dto]
98

10-
return activities
9+
return activities_dto

V2/source/use_cases/get_activity_by_id_use_case.py renamed to V2/source/use_cases/_get_activity_by_id_use_case.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,5 @@ def get_activity_by_id(id: str):
55
activity_json_dao = ActivitiesJsonDao('./V2/source/activities_data.json')
66
activity_service = ActivityService(activity_json_dao)
77
activity_dto = activity_service.get_by_id(id)
8-
activity = activity_dto.__dict__
98

10-
return activity
9+
return activity_dto

0 commit comments

Comments
 (0)