@@ -41,19 +41,20 @@ def __init__(
4141 def add_new_project (self , name : str , * stages : Stage ) -> ProjectId :
4242 parallelized_stages = self ._stage_parallelization .of (set (stages ))
4343 project = Project (name , parallelized_stages )
44- self ._project_repository .add (project )
44+ self ._project_repository .save (project )
4545 return project .id
4646
4747 def add_new_project_with_parallelized_stages (
4848 self , name : str , parallelized_stages : ParallelStagesList
4949 ) -> ProjectId :
5050 project = Project (name , parallelized_stages )
51- self ._project_repository .add (project )
51+ self ._project_repository .save (project )
5252 return project .id
5353
5454 def add_demands (self , project_id : ProjectId , demands : Demands ) -> None :
5555 project = self ._project_repository .get (id = project_id )
5656 project .add_demands (demands )
57+ self ._project_repository .save (project )
5758 event = CapabilitiesDemanded (project_id , project .all_demands , datetime .now ())
5859 self ._events_publisher .publish (event )
5960
@@ -62,6 +63,7 @@ def define_demands_per_stage(
6263 ) -> None :
6364 project = self ._project_repository .get (id = project_id )
6465 project .add_demands_per_stage (demands_per_stage )
66+ self ._project_repository .save (project )
6567 event = CapabilitiesDemanded (project_id , project .all_demands , datetime .now ())
6668 self ._events_publisher .publish (event )
6769
@@ -79,14 +81,17 @@ def define_project_stages(self, project_id: ProjectId, *stages: Stage) -> None:
7981 project = self ._project_repository .get (id = project_id )
8082 parallelized_stages = self ._stage_parallelization .of (set (stages ))
8183 project .parallelized_stages = parallelized_stages
84+ self ._project_repository .save (project )
8285
8386 def define_start_date (self , project_id : ProjectId , start_date : date ) -> None :
8487 project = self ._project_repository .get (id = project_id )
8588 project .add_schedule_by_start_date (start_date )
89+ self ._project_repository .save (project )
8690
8791 def define_manual_schedule (self , project_id : ProjectId , schedule : Schedule ) -> None :
8892 project = self ._project_repository .get (id = project_id )
8993 project .add_schedule (schedule )
94+ self ._project_repository .save (project )
9095
9196 def adjust_stages_to_resource_availability (
9297 self , project_id : ProjectId , time_boundaries : TimeSlot , * stages : Stage
@@ -104,6 +109,7 @@ def plan_critical_stage_with_resource(
104109 ) -> None :
105110 project = self ._project_repository .get (id = project_id )
106111 project .add_schedule_by_critical_stage (critical_stage , stage_time_slot )
112+ self ._project_repository .save (project )
107113 event = CriticalStagePlanned (
108114 project_id , stage_time_slot , resource_id , datetime .now ()
109115 )
@@ -114,6 +120,7 @@ def plan_critical_stage(
114120 ) -> None :
115121 project = self ._project_repository .get (id = project_id )
116122 project .add_schedule_by_critical_stage (critical_stage , stage_time_slot )
123+ self ._project_repository .save (project )
117124 event = CriticalStagePlanned (project_id , stage_time_slot , None , datetime .now ())
118125 self ._events_publisher .publish (event )
119126
0 commit comments