gws_forms

Introduction
Getting Started
Use cases
Technical documentations
Version

PMOTable

Attributes
data: ProjectPlanDTOfile_path_change_log: strfolder_change_log: strfolder_details: strfolder_project_plan: strmissions_order: Listobserver: Optionalpmo_state: PMOStateselected_file: str
Functions
__init__

Initialize the PMOTable object with the data file containing the project missions. Functions will define the actions to perform with the PMO table in order to see them in the dashboard

folder_project_plan : Any
folder_details : Any
missions_order : Any
folder_change_log : Any
observer : Any
selected_file : Any
apply_observer_update_mission_progress
current_project : ProjectDTO
commit_and_save
load_pmo_data
load_pmo_data_from_example
load_pmo_data_from_json

Load PMO data from file or create new if none exists Get the last pmo_project_plan by default

Args: selected_file: Optional specific file to load, if None loads most recent

Returns: PMOTable: Updated PMO table and success flag

Return type : Dict
log_status_change

Log a status change for a mission

Args: mission_id: ID of the mission project_name: Name of the project mission_name: Name of the mission old_status: Previous status new_status: New status

mission_id : str
project_name : str
mission_name : str
old_status : str
new_status : str
save_data_in_folder

Save data as JSON using DTOs

update_milestone_status_by_id

Update the status of a milestone by its ID.

Args: milestone_id: The ID of the milestone to update. done: The new status of the milestone (True if done, False otherwise).

milestone_id : str
done : bool
update_mission_statuses_and_progress

Ensures required fields are present and have correct types. Auto-updates progress, status and dates based on conditions.

update_project_name_by_id

Update the name of a project by its ID.

Args: project_id: The ID of the project to update. project_name: The new name for the project.

project_id : str
project_name : str