-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
18 changed files
with
590 additions
and
164 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -14,6 +14,7 @@ black = "*" | |
isort = "*" | ||
pytest = "*" | ||
pyinstaller = "*" | ||
pytest-cov = "*" | ||
|
||
[requires] | ||
python_version = "3.10" |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
42 changes: 42 additions & 0 deletions
42
src/services/command/commands/update_delivery_request_delivery_man_command.py
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
from typing import Optional | ||
from uuid import UUID | ||
|
||
from src.models.tour import DeliveryID, TourID | ||
from src.services.command.abstract_command import AbstractCommand | ||
from src.services.tour.tour_service import TourService | ||
|
||
|
||
class UpdateDeliveryRequestDeliveryMan(AbstractCommand): | ||
__delivery_request_id: DeliveryID | ||
__tour_id: TourID | ||
__delivery_man_id: UUID | ||
__previous_delivery_man_id: Optional[UUID] = None | ||
|
||
def __init__( | ||
self, delivery_request_id: DeliveryID, tour_id: TourID, delivery_man_id: UUID | ||
) -> None: | ||
super().__init__("Ajustement du livreur d'une demande de livraison") | ||
self.__delivery_request_id = delivery_request_id | ||
self.__tour_id = tour_id | ||
self.__delivery_man_id = delivery_man_id | ||
|
||
def execute(self) -> None: | ||
self.__previous_delivery_man_id = ( | ||
TourService.instance().update_delivery_request_delivery_man( | ||
delivery_request_id=self.__delivery_request_id, | ||
tour_id=self.__tour_id, | ||
delivery_man_id=self.__delivery_man_id, | ||
) | ||
) | ||
|
||
def undo(self) -> None: | ||
if self.__previous_delivery_man_id is None: | ||
raise Exception("Cannot undo a command that has not been executed") | ||
|
||
TourService.instance().update_delivery_request_delivery_man( | ||
delivery_request_id=self.__delivery_request_id, | ||
tour_id=self.__delivery_man_id, | ||
delivery_man_id=self.__previous_delivery_man_id, | ||
) | ||
|
||
self.__previous_delivery_man_id = None |
41 changes: 41 additions & 0 deletions
41
src/services/command/commands/update_delivery_request_time_window_command.py
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
from typing import Optional | ||
|
||
from src.models.tour import DeliveryID, TourID | ||
from src.services.command.abstract_command import AbstractCommand | ||
from src.services.tour.tour_service import TourService | ||
|
||
|
||
class UpdateDeliveryRequestTimeWindowCommand(AbstractCommand): | ||
__delivery_request_id: DeliveryID | ||
__tour_id: TourID | ||
__time_window: int | ||
__previous_time_window: Optional[int] = None | ||
|
||
def __init__( | ||
self, delivery_request_id: DeliveryID, tour_id: TourID, time_window: int | ||
) -> None: | ||
super().__init__("Ajustement de la fenêtre de temps d'une demande de livraison") | ||
self.__delivery_request_id = delivery_request_id | ||
self.__tour_id = tour_id | ||
self.__time_window = time_window | ||
|
||
def execute(self) -> None: | ||
self.__previous_time_window = ( | ||
TourService.instance().update_delivery_request_time_window( | ||
delivery_request_id=self.__delivery_request_id, | ||
tour_id=self.__tour_id, | ||
time_window=self.__time_window, | ||
) | ||
) | ||
|
||
def undo(self) -> None: | ||
if self.__previous_time_window is None: | ||
raise Exception("Cannot undo a command that has not been executed") | ||
|
||
TourService.instance().update_delivery_request_time_window( | ||
delivery_request_id=self.__delivery_request_id, | ||
tour_id=self.__tour_id, | ||
time_window=self.__previous_time_window, | ||
) | ||
|
||
self.__previous_time_window = None |
Oops, something went wrong.