pcp-tgu-ops-ui: одно перекрестие опорной точки + 24ч формат времени

- Редактор: убрано накопление целей съёмки — на карте только одно
  перекрестие текущей точки (pickTarget заменяется при каждом клике),
  с перекрестия убрана подпись. Правая панель переименована в
  «Опорная точка прицеливания» с координатами.
- 24-часовой формат: lang="ru-RU" на всех datetime-local инпутах
  (Планы, фильтры заявок на карте, создание/фильтр заявок), иначе
  браузер рендерил их по локали ОС в AM/PM.
This commit is contained in:
Дмитрий Соловьев
2026-06-02 23:33:32 +03:00
parent e68c17e792
commit f0e16aa4e8
7 changed files with 13 additions and 23 deletions
@@ -37,7 +37,6 @@ import type {
DraftHistory,
EditorGroundStation,
EditorMode,
EditorShootWork,
EditorTarget,
EditorTimelineWindow,
EditorVisibilityTrack,
@@ -167,13 +166,6 @@ export function TguEditorTab({ selectedSpacecraftId, selectedPlan, appliedRange,
() => buildEditorMapScene(selectedSpacecraftId, flightLineData, orbitPasses, stationDtos, requestItems, planModes, effectiveFrom, effectiveTo, surveyRoute),
[selectedSpacecraftId, flightLineData, orbitPasses, stationDtos, requestItems, planModes, effectiveFrom, effectiveTo, surveyRoute]
);
const shootTargets = useMemo(
() =>
draft.works
.filter((w): w is EditorShootWork => w.kind === "shoot" && w.targetLat !== undefined && w.targetLon !== undefined)
.map((w) => ({ id: w.id, name: w.label, lat: w.targetLat!, lon: w.targetLon! })),
[draft.works]
);
const contextLanes = useMemo(
() =>
Array.from(contextSpacecraftIds).map((spacecraftId) => ({
@@ -692,19 +684,14 @@ export function TguEditorTab({ selectedSpacecraftId, selectedPlan, appliedRange,
layers={EDITOR_MAP_LAYERS}
redrawToken={0}
pickMode={rightMode === "shoot"}
targets={shootTargets}
pickTarget={target ?? undefined}
selectedTargetId={selectedWork?.kind === "shoot" ? selectedWorkId : undefined}
onTargetSelect={(id) => {
setSelectedWorkId(id);
setRightMode("inspect");
setNotice(undefined);
}}
onPickPoint={(point) => {
// Опорная точка прицеливания — всегда одна: каждый клик заменяет
// предыдущее перекрестие, цели не накапливаются.
targetCounterRef.current += 1;
setTarget({
id: `target-${targetCounterRef.current}`,
name: `Цель ${targetCounterRef.current}`,
name: "Опорная точка прицеливания",
lat: point.lat,
lon: point.lon
});