From 30b0d3dfb263bb8b64dc524df6d99c8f3005cf6e Mon Sep 17 00:00:00 2001 From: umsangdon Date: Mon, 26 Oct 2026 03:41:51 +0900 Subject: [PATCH] =?UTF-8?q?fix(531-5):=20D02=20=EB=B3=B4=EA=B8=B0=20?= =?UTF-8?q?=EC=A0=84=EC=9A=A9=20=EC=95=88=EB=82=B4=20=E2=80=94=20=EC=A7=80?= =?UTF-8?q?=EC=A0=95=20=ED=9A=8C=EC=82=AC=20=ED=99=94=EB=A9=B4=EC=97=90=20?= =?UTF-8?q?=E3=80=8C=EB=B3=B4=EA=B8=B0=20=EC=A0=84=EC=9A=A9=20=E2=80=94=20?= =?UTF-8?q?=EC=A7=80=EC=A0=90=EC=9D=80=20=EC=82=B0=EB=A6=BC=EC=B2=AD?= =?UTF-8?q?=EB=A7=8C=20=EA=B3=A0=EC=B9=A9=EB=8B=88=EB=8B=A4=E3=80=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit D 예정노선 전 흐름 확인(산림청 → D01~D04 → 업체 받기 · 연결 → B03) 중 찾은 흠 — 업체 화면 D02 안내가 지도 누름 · 📍 조작을 안내하던 것. Co-Authored-By: Claude Opus 5.5 --- D02_PlanBase/D02_PlanBase_UI_Page.ts | 8 +++++++- ui_template/ui_template_locale_de.ts | 4 ++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/D02_PlanBase/D02_PlanBase_UI_Page.ts b/D02_PlanBase/D02_PlanBase_UI_Page.ts index 16749229c..779805682 100644 --- a/D02_PlanBase/D02_PlanBase_UI_Page.ts +++ b/D02_PlanBase/D02_PlanBase_UI_Page.ts @@ -68,7 +68,8 @@ export async function renderD02PlanBase(root: HTMLElement): Promise { const table = el("div", { className: "d02-points" }); const info = el("p", { className: "d02-info" }); const card = createPanelCard(t("D02_Points_Title"), false); - card.append(el("p", { className: "d02-info", text: t("D02_Points_Hint") }), table, info); + const pointsHint = el("p", { className: "d02-info", text: t("D02_Points_Hint") }); + card.append(pointsHint, table, info); const save = createButton({ label: t("D02_Save"), variant: "filled", @@ -240,6 +241,11 @@ export async function renderD02PlanBase(root: HTMLElement): Promise { try { editable = !!(await fetchSessionUser())?.is_forest_service; save.hidden = !editable; + if (!editable) { + const mapHint = map.root.querySelector("[data-kakao-map-hint]"); + pointsHint.textContent = t("D02_View_Only"); + if (mapHint) mapHint.textContent = t("D02_View_Only"); + } adopt(await request(`/projects/${projectId}/plan/points`)); const cached = JSON.parse(sessionStorage.getItem(cacheKey(projectId)) ?? "null") as { points?: Array; diff --git a/ui_template/ui_template_locale_de.ts b/ui_template/ui_template_locale_de.ts index 9f17c0750..a26bd2b8a 100644 --- a/ui_template/ui_template_locale_de.ts +++ b/ui_template/ui_template_locale_de.ts @@ -129,6 +129,10 @@ export const ui_locales_de = { D02_Lat: ["위도", "Lat"], D02_Pick_Point: ["지도에 놓을 지점 고르기", "Pick the point to place on the map"], D02_Map_Hint: ["지도를 눌러 지점을 놓습니다.", "Click the map to place a point."], + D02_View_Only: [ + "보기 전용 — 지점은 산림청만 고칩니다.", + "View only — only the Forest Service edits points.", + ], D02_Save: ["저장", "Save"], D02_Saved: ["지점을 저장했습니다.", "Points saved."], D02_Saved_Crs: ["저장 좌표계", "Saved CRS"],