From d202a3a6d807405931e0752abdaf335c22b6d871 Mon Sep 17 00:00:00 2001 From: umsangdon Date: Fri, 2 Oct 2026 01:48:15 +0900 Subject: [PATCH] =?UTF-8?q?fix(M01):=20=EA=B8=B0=EB=B3=B8=20=EB=A1=9C?= =?UTF-8?q?=EC=A7=81=20=EC=95=88=EB=82=B4=20=EA=B8=80=20=E2=80=94=20?= =?UTF-8?q?=EA=B4=80=EB=A6=AC=EC=9E=90=EB=8A=94=20=ED=9D=90=EB=A6=84?= =?UTF-8?q?=EB=8F=84=EC=97=90=EC=84=9C=20=EA=B3=A0=EC=B9=A8=20=C2=B7=20?= =?UTF-8?q?=EC=95=84=EB=8B=88=EB=A9=B4=20=EB=B3=B4=EA=B8=B0=EB=A7=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_016PSXsvyDxjNmufteN5bqmt --- M01_MasterData/M01_MasterData_UI_LogicLab.ts | 1 + M01_MasterData/M01_MasterData_UI_LogicLab_Detail.ts | 4 +++- M01_MasterData/M01_MasterData_UI_LogicLab_Text.ts | 8 ++++++-- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/M01_MasterData/M01_MasterData_UI_LogicLab.ts b/M01_MasterData/M01_MasterData_UI_LogicLab.ts index 7b0ec9b4d..58be791ee 100644 --- a/M01_MasterData/M01_MasterData_UI_LogicLab.ts +++ b/M01_MasterData/M01_MasterData_UI_LogicLab.ts @@ -236,6 +236,7 @@ export async function mountM01LogicLab( onChange: touch, calcHost: calc, flowHost: flowOf(current.row) ? current.flowHost : undefined, + admin, }); flowNow?.redrawLeft(); }; diff --git a/M01_MasterData/M01_MasterData_UI_LogicLab_Detail.ts b/M01_MasterData/M01_MasterData_UI_LogicLab_Detail.ts index 2e599bb42..a6dd8aa49 100644 --- a/M01_MasterData/M01_MasterData_UI_LogicLab_Detail.ts +++ b/M01_MasterData/M01_MasterData_UI_LogicLab_Detail.ts @@ -75,6 +75,8 @@ export interface DetailContext { /** 흐름이 있는 로직 — 이 칸에 왼쪽 「지금 내용」(단가산출 상세 · 텍스트 수식 = `buildFlowView`)을 그림 · * 있으면 호표 · 읽는 식 두 묶음 대신 이 칸을 놓음(기본정보 · 시험 계산은 그대로) */ flowHost?: HTMLElement; + /** 시스템 관리자 — 기본 로직 안내 글이 다름(흐름도에서 고침 / 보기만) */ + admin?: boolean; } type Group = "labor" | "material" | "cost" | "other"; @@ -181,7 +183,7 @@ function infoBox(ctx: DetailContext): HTMLElement { return section(tl("Info_Title"), [ el("p", { className: "m01-logic__muted", - text: tl(own ? "Info_Own" : "Info_ReadOnly"), + text: tl(own ? "Info_Own" : ctx.admin ? "Info_Base" : "Info_ReadOnly"), }), ...reasons, el("div", { diff --git a/M01_MasterData/M01_MasterData_UI_LogicLab_Text.ts b/M01_MasterData/M01_MasterData_UI_LogicLab_Text.ts index 283d7a063..60c643139 100644 --- a/M01_MasterData/M01_MasterData_UI_LogicLab_Text.ts +++ b/M01_MasterData/M01_MasterData_UI_LogicLab_Text.ts @@ -7,9 +7,13 @@ import { currentLanguageIndex } from "@ui/ui_template_locale"; const TEXT = { Info_Title: ["기본정보", "Basic info"], + Info_Base: [ + "기본 로직 — 식은 오른쪽 흐름도에서 고침(시스템 관리자) · 여기서는 비고만", + "Base logic — edit formulas in the flow diagram on the right (system admin) · only the note here", + ], Info_ReadOnly: [ - "기본 로직은 품셈 원문 그대로라 여기서 고치지 못함 — 비고만 고칠 수 있음", - "Base logic follows the source book; only the note can be edited", + "기본 로직 — 보기만 · 비고만 고칠 수 있음", + "Base logic — view only · only the note can be edited", ], Info_Own: [ "자체 로직 — 칸을 고치면 잠시 뒤 호표 소계와 텍스트 수식이 다시 계산됨",