14 Commits

Author SHA1 Message Date
Dombi Attila a21f72a8d8 Do not set a default date in the Phase::SetAttributesService because now the scheduler takes care of default dates. 2025-06-16 12:19:00 +03:00
Dombi Attila 7c8775533e [#64628] Clearing the start date of a following phase is not possible
https://community.openproject.org/work_packages/64628
2025-06-16 12:18:05 +03:00
Dombi Attila 775e43291b Reschedule phases using no gap after incomplete phases 2025-06-16 09:53:25 +03:00
Dombi Attila faa5fac076 Revert "Reschedule with 1 day gap after incomplete phases to align more with work packages" 2025-06-16 09:53:00 +03:00
Dombi Attila 07e708958e Reschedule phases with 1 day gap after incomplete phases as we do with work packages 2025-06-16 09:52:27 +03:00
Dombi Attila 79bfc7c610 Calculate duration in the RescheduleService when the rescheduled phase becomes complete. 2025-06-16 09:48:46 +03:00
Dombi Attila 79a8226187 Simplify RescheduleService and specs 2025-06-16 09:48:45 +03:00
Dombi Attila 7113c80abd Refactor reschedule service 2025-06-16 09:48:42 +03:00
Dombi Attila b82abf8442 [#64532] The following phase's finish date is inconsistent with the start date
https://community.openproject.org/work_packages/64532
2025-06-16 09:48:41 +03:00
Dombi Attila ec74070131 Simplify code, add specs when a start date is rescheduled skipping non working days. 2025-06-12 13:19:21 +03:00
Dombi Attila 7594a6df60 Ensure the start date is a working day when rescheduling following phases with a start date only.
Additionally remove the Day.next_working method calls when calculating
the `from` starting dates passed to the scheduler. They can be removed
because now the scheduler ensures the passed day is a working day.
2025-06-12 13:19:20 +03:00
Dombi Attila 0fbe82fb2f Move scheduling changes to the RescheduleService 2025-06-12 13:19:13 +03:00
Dombi Attila b99695ab74 [#64292] Disabling an incomplete phase leads to inconsistencies
https://community.openproject.org/work_packages/64292

Reschedule following phases to the closest active preceding phase when activating/deactivating a phase.

This is an important step, because otherwise unset phases' default dates
will be left behind during rescheduling.

Move default start date on phases during rescheduling on phases where no finish date is set.
2025-06-12 13:19:10 +03:00
ulferts abc3f387c2 rename project phases` services and contracts 2025-06-10 13:12:51 +02:00