pcp: Ф2 — черновик-клон миссии (replace + fork-forward)

mission-planing: POST /api/missions/{id}/clone — полный клон (replace)
или по перекрытию с окном (fork-forward, [start,stop) открытый правый конец);
пустые drop-mode (все съёмки вне окна) не клонируются

tgu-service: PlannedPlanStatus.DRAFT; POST /api/plans/{planId}/draft
(CreateDraftUseCase: guard replace/fork-forward, clone mission → planId=newMissionId,
компенсация при сбое); DRAFT отфильтрован из PlanQueryService read-пути;
MissionPlaningClient + MissionPlaningProperties + mission-planing.base-url в yaml

тесты: MissionCloneTest (6 граничных кейсов предиката перекрытия),
PlanQueryServiceTest (DRAFT не видна в ответе)
This commit is contained in:
Дмитрий Соловьев
2026-06-03 12:53:57 +03:00
parent 80e281dd6d
commit 0d69617420
15 changed files with 754 additions and 6 deletions
@@ -34,6 +34,9 @@ topics:
plan-not-accepted: pcp.tgu.plan-not-accepted.v1
station-params-changed: pcp.tgu.station-params-changed.v1
mission-planing:
base-url: ${pcp.services.mission:http://localhost:7010}
tgu:
test-controller:
enabled: false