Skip to content

Commit 954a2c3

Browse files
committed
Merge branch 'TT-417-CRUD-V2-Projects' of https://github.com/ioet/time-tracker-backend into TT-417-CRUD-V2-Projects
2 parents e5389fc + e852a64 commit 954a2c3

File tree

4 files changed

+18
-11
lines changed

4 files changed

+18
-11
lines changed

V2/time_tracker/projects/_application/_projects/_delete_project.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,12 @@
44

55
from ... import _domain
66
from ... import _infrastructure
7-
from time_tracker._infrastructure import DB
7+
from time_tracker._infrastructure import DB as database
88
from time_tracker.utils.enums import ResponseEnums as enums
99

1010

1111
def delete_project(req: func.HttpRequest) -> func.HttpResponse:
12-
project_dao = _infrastructure.ProjectsSQLDao(DB())
12+
project_dao = _infrastructure.ProjectsSQLDao(database())
1313
project_service = _domain.ProjectService(project_dao)
1414
use_case = _domain._use_cases.DeleteProjectUseCase(project_service)
1515

V2/time_tracker/projects/_application/_projects/_get_projects.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,12 @@
55

66
from ... import _domain
77
from ... import _infrastructure
8-
from time_tracker._infrastructure import DB
8+
from time_tracker._infrastructure import DB as database
99
from time_tracker.utils.enums import ResponseEnums as enums
1010

1111

1212
def get_projects(req: func.HttpRequest) -> func.HttpResponse:
13-
database = DB()
14-
project_dao = _infrastructure.ProjectsSQLDao(database)
13+
project_dao = _infrastructure.ProjectsSQLDao(database())
1514
project_service = _domain.ProjectService(project_dao)
1615

1716
project_id = req.route_params.get("id")

V2/time_tracker/projects/_application/_projects/_update_project.py

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,12 @@
55

66
from ... import _domain
77
from ... import _infrastructure
8-
from time_tracker._infrastructure import DB
8+
from time_tracker._infrastructure import DB as database
99
from time_tracker.utils.enums import ResponseEnums as enums
1010

1111

1212
def update_project(req: func.HttpRequest) -> func.HttpResponse:
13-
database = DB()
14-
project_dao = _infrastructure.ProjectsSQLDao(database)
13+
project_dao = _infrastructure.ProjectsSQLDao(database())
1514
project_service = _domain.ProjectService(project_dao)
1615
use_case = _domain._use_cases.UpdateProjectUseCase(project_service)
1716

@@ -41,6 +40,12 @@ def update_project(req: func.HttpRequest) -> func.HttpResponse:
4140
status_code=enums.STATUS_BAD_REQUEST.value,
4241
mimetype=enums.MIME_TYPE.value,
4342
)
43+
except Exception as error:
44+
return func.HttpResponse(
45+
body=str(error).encode(),
46+
status_code=enums.STATUS_BAD_REQUEST.value,
47+
mimetype=enums.MIME_TYPE.value,
48+
)
4449

4550

4651
def _validate_project(project_data: dict) -> bool:

V2/time_tracker/projects/_infrastructure/_data_persistence/_projects_dao.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -65,9 +65,12 @@ def delete(self, id: int) -> domain.Project:
6565
return self.get_by_id(id)
6666

6767
def update(self, id: int, project_data: dict) -> domain.Project:
68-
query = self.project.update().where(self.project.c.id == id).values(project_data)
69-
self.db.get_session().execute(query)
70-
return self.get_by_id(id)
68+
try:
69+
query = self.project.update().where(self.project.c.id == id).values(project_data)
70+
self.db.get_session().execute(query)
71+
return self.get_by_id(id)
72+
except sq.exc.SQLAlchemyError as error:
73+
raise Exception(error.orig)
7174

7275
def __create_project_dto(self, project: dict) -> domain.Project:
7376
project = {key: project.get(key) for key in self.project_key}

0 commit comments

Comments
 (0)