- to_save = ['process_id', 'is_done', 'date']
-
- def __init__(self, id_: int | None, process: Process,
- is_done: bool, date: str) -> None:
- self.set_int_id(id_)
+ to_save = ['process_id', 'is_done', 'date', 'comment', 'effort',
+ 'calendarize']
+ to_save_relations = [('todo_conditions', 'todo', 'conditions'),
+ ('todo_enables', 'todo', 'enables'),
+ ('todo_disables', 'todo', 'disables'),
+ ('todo_children', 'parent', 'children'),
+ ('todo_children', 'child', 'parents')]
+
+ # pylint: disable=too-many-arguments
+ def __init__(self, id_: int | None,
+ process: Process,
+ is_done: bool,
+ date: str, comment: str = '',
+ effort: None | float = None,
+ calendarize: bool = False) -> None:
+ super().__init__(id_)
+ if process.id_ is None:
+ raise NotFoundException('Process of Todo without ID (not saved?)')