pcp-tgu-ops-ui: панель «Параметры включения» в инспекторе маршрута
- WorkInspector показывает аппарат, виток, крен, угол захвата, центр контура (съёмка) и станцию/сбрасываемые съёмки (сброс) - planModesToWorks/addShoot прокидывают planModeId, revolution, rollDeg, captureAngleDeg, centerLat/Lon, surveyIds в модель включения - место под перечень заданий маршрута (привязка — позже) - секция «Станция приёма» рендерится только в режиме правки
This commit is contained in:
@@ -453,7 +453,12 @@ export function TguEditorTab({ selectedSpacecraftId, selectedPlan, appliedRange,
|
||||
endMs,
|
||||
label: mode?.label ?? "Съёмка",
|
||||
modeId,
|
||||
target
|
||||
target,
|
||||
revolution: surveyRoute?.revolution ?? selectedShootPass.revolution,
|
||||
rollDeg: surveyRoute?.roll ?? routeRoll,
|
||||
captureAngleDeg: surveyRoute?.captureAngle ?? DEFAULT_CAPTURE_ANGLE_DEG,
|
||||
centerLat: surveyRoute?.lat,
|
||||
centerLon: surveyRoute?.longitude
|
||||
})
|
||||
);
|
||||
setSelectedWorkId(id);
|
||||
@@ -468,6 +473,17 @@ export function TguEditorTab({ selectedSpacecraftId, selectedPlan, appliedRange,
|
||||
[stationDtos]
|
||||
);
|
||||
|
||||
// Метка съёмки по id режима — для перечня сбрасываемых маршрутов в инспекторе сброса.
|
||||
const surveyModeLabel = useCallback(
|
||||
(surveyModeId: number) => {
|
||||
const mode = planModes.find(
|
||||
(m): m is PlanSurveyMode => m.type === "SURVEY" && m.id === surveyModeId
|
||||
);
|
||||
return mode ? `Съёмка · виток ${mode.revolution}` : `Маршрут #${surveyModeId}`;
|
||||
},
|
||||
[planModes]
|
||||
);
|
||||
|
||||
const addDropWork = async () => {
|
||||
if (!selectedPlan || !selectedZone || selectedDropSurveyIds.size === 0) return;
|
||||
const numericNorad = noradId ? Number(noradId) : NaN;
|
||||
@@ -735,6 +751,8 @@ export function TguEditorTab({ selectedSpacecraftId, selectedPlan, appliedRange,
|
||||
work={selectedWork}
|
||||
modes={modes}
|
||||
stations={stations}
|
||||
spacecraftLabel={activeLabel}
|
||||
surveyModeLabel={surveyModeLabel}
|
||||
conflicts={conflicts[selectedWork.id] ?? []}
|
||||
readOnly={selectedWork.origin === "plan"}
|
||||
onUpdate={onChangeWork}
|
||||
|
||||
Reference in New Issue
Block a user