Skip to content

Commit 0a5a462

Browse files
Update supra_notice_repository.py
1 parent 2b322ab commit 0a5a462

1 file changed

Lines changed: 7 additions & 5 deletions

File tree

ted_sws/data_manager/adapters/supra_notice_repository.py

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
from datetime import datetime, time
12
from typing import Optional, Iterator
23

34
from pymongo import MongoClient, ASCENDING
@@ -6,7 +7,7 @@
67
from ted_sws.core.model.supra_notice import DailySupraNotice
78
from ted_sws.data_manager.adapters.repository_abc import DailySupraNoticeRepositoryABC
89

9-
DAILY_SUPRA_NOTICE_ID = "notice_publication_day"
10+
DAILY_SUPRA_NOTICE_ID = "notice_publication_date"
1011

1112

1213
class DailySupraNoticeRepository(DailySupraNoticeRepositoryABC):
@@ -26,6 +27,8 @@ def __init__(self, mongodb_client: MongoClient, database_name: str = _database_n
2627

2728
def _update_daily_supra_notice(self, daily_supra_notice: DailySupraNotice, upsert: bool = False):
2829
daily_supra_notice_dict = daily_supra_notice.dict()
30+
daily_supra_notice_dict[DAILY_SUPRA_NOTICE_ID] = datetime.combine(
31+
daily_supra_notice_dict[DAILY_SUPRA_NOTICE_ID], time())
2932
self.collection.update_one({DAILY_SUPRA_NOTICE_ID: daily_supra_notice_dict[DAILY_SUPRA_NOTICE_ID]},
3033
{"$set": daily_supra_notice_dict}, upsert=upsert)
3134

@@ -43,19 +46,18 @@ def update(self, daily_supra_notice: DailySupraNotice):
4346
:param daily_supra_notice:
4447
:return:
4548
"""
46-
daily_supra_notice_exist = self.collection.find_one(
47-
{DAILY_SUPRA_NOTICE_ID: daily_supra_notice.notice_publication_day})
48-
if daily_supra_notice_exist is not None:
49-
self._update_daily_supra_notice(daily_supra_notice=daily_supra_notice)
49+
self._update_daily_supra_notice(daily_supra_notice=daily_supra_notice)
5050

5151
def get(self, reference) -> Optional[DailySupraNotice]:
5252
"""
5353
This method allows a daily_supra_notice to be obtained based on an identification reference.
5454
:param reference:
5555
:return: DailySupraNotice
5656
"""
57+
reference = datetime.combine(reference, time())
5758
result_dict = self.collection.find_one({DAILY_SUPRA_NOTICE_ID: reference})
5859
if result_dict is not None:
60+
result_dict[DAILY_SUPRA_NOTICE_ID] = result_dict[DAILY_SUPRA_NOTICE_ID].date()
5961
daily_supra_notice = DailySupraNotice.parse_obj(result_dict)
6062
return daily_supra_notice
6163
return None

0 commit comments

Comments
 (0)