Files
Aislo/ui_template/ui_template_locale_b5.ts
T

450 lines
32 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/* =============================================================================
* ui_template_locale_b5.ts
* 다국어 사전 — B 그룹 끝 (B08_Quantity ~ B11_Status)
*
* b2 가 700줄을 넘어 B08~B11 칸을 그대로 뗌. 신규 문구는 해당 섹션 최하단에 추가.
* 이 파일은 사전 데이터만 담는다. 합성·언어 전환·t() 헬퍼는 ui_template_locale.ts 참조.
* ========================================================================== */
import type { LocaleEntry } from "./ui_template_locale_common";
export const ui_locales_b5 = {
/* --- B08_Quantity 수량 산출 --- */
B08_Quantity_Title: ["수량산출", "Quantity"],
B08_Quantity_Tab_Earthwork: ["토공", "Earthwork"],
B08_Quantity_Grid_Loading: ["토적표를 만드는 중입니다…", "Building the earthwork table…"],
B08_Quantity_Grid_Empty: [
"측점 단면적이 아직 없습니다. 횡단 설계를 먼저 마치세요.",
"No cross-section areas yet. Finish the cross-section design first.",
],
B08_Quantity_Grid_Failed: [
"토적표를 불러오지 못했습니다.",
"Failed to load the earthwork table.",
],
B08_Quantity_Tab_Summary: ["토공집계", "Earthwork Summary"],
B08_Quantity_Tab_Haul: ["운반거리", "Haul Distance"],
B08_Quantity_Tab_StructureSummary: ["구조물 집계표", "Structure Summary"],
B08_Quantity_Tab_UnitQuantity: ["구조물 원단위", "Structure Unit Quantity"],
B08_Quantity_Tab_Material: ["자재총괄", "Material Summary"],
B08_Quantity_Tab_Preparation: ["준비공·사방공", "Preparation & Erosion Control"],
B08_Quantity_Side_Method_Label: ["시공법", "Method"],
B08_Quantity_Method_Unset: ["안 정함", "Not set"],
B08_Quantity_Method_Ripping: ["긁어내기(암절취)", "Ripping"],
B08_Quantity_Method_Blasting: ["터뜨리기(발파암)", "Blasting"],
B08_Quantity_Placing_NotApplied: [
"콘크리트 물량이 「콘크리트 타설」 공종으로 견적에 넘어갑니다.",
"The placing method changes this work item's unit price — concrete volume is handed over as a placing work item.",
],
B08_Quantity_Side_Topsoil: ["표토제거", "Topsoil Removal"],
B08_Quantity_Side_Topsoil_Label: ["표토 두께(m)", "Topsoil thickness (m)"],
B08_Quantity_Side_TopsoilTarget_Label: ["표토제거 대상", "Topsoil removal target"],
B08_Quantity_TopsoilTarget_RoadAndCut: [
"노면 + 절토 사면 (기본 · 법 문언)",
"Road surface + cut slope (default · law)",
],
B08_Quantity_TopsoilTarget_RoadOnly: ["노면만", "Road surface only"],
B08_Quantity_Side_TopsoilTarget_Hint: [
"기본 근거: 산림자원법 시행규칙 별표2 Ⅰ.2.차.(6) 「노면·절토대상지에 있는 … 표토는 전량 제거한 후 … 운반하고 쌓아두어야 한다」 — 성토 사면은 「제거·정리」라 대상 밖. 노면만: 실무 영월 한 건(1m당 3.34㎡)이 노면만 셈 — 한 건이라 기본으로 삼지 않고 고를 수 있게 둠(면적 약 3배 차이)",
"Default basis: the forest-road rule names road surface and cut areas; fill slopes are only cleared. Road-only follows one field case (Yeongwol, 3.34 ㎡ per m) — selectable, not the default (about 3× area difference)",
],
B08_Quantity_Unset_Placeholder: ["안 정함", "Not set"],
// ── 확정 3차(2026-09-09) 로 정한 값들 — **화면에 칸으로 세우고 근거를 보인다.**
// 사용자 지시: 「값을 코드에 박고 끝내지 말 것 · 대신 페이지에 남길 것」.
B08_Quantity_Side_Structure: ["구조물·사토", "Structures & Spoil"],
B08_Quantity_Side_BenchCut_Label: ["층따기 길이(m)", "Bench cut length (m)"],
B08_Quantity_Side_BenchCut_Hint: [
"면적 × 이 값 = ㎥ — 비우면 층따기 줄이 막힙니다(확정 2차 ①)",
"Area × this = ㎥ — blank keeps the bench-cut row blocked",
],
B08_Quantity_Side_BenchCut_Suggest: [
"층따기 표준치수 — 최소 높이 토사 500 mm 이상 · 암반 400 mm 이상 · 폭 1 m 이상(기계 작업을 할 때는 3 m 이상). 근거: KDS 44 30 00 도로토공 2.3.4 (4) ② 「기초지반의 종류에 따른 층따기의 표준치수」",
"Bench cut standard dimensions — minimum height: soil ≥ 500 mm · rock ≥ 400 mm · width ≥ 1 m (≥ 3 m for machine work). Basis: KDS 44 30 00 Road Earthwork 2.3.4 (4) ②",
],
B08_Quantity_Side_Rubble_Label: ["기초잡석 두께(m)", "Rubble base thickness (m)"],
B08_Quantity_Side_Rubble_Hint: [
"폭은 버림 폭과 같음(KCS 34 50 05) · 두께 0.2m 는 사용자 확정 3차 ② — 품셈 12-25 는 두께를 정하지 않음",
"Width equals the blinding width (KCS 34 50 05); 0.2 m thickness is a user decision — the standard gives none",
],
B08_Quantity_Side_SpoilDistance_Label: ["사토장까지 거리(m)", "Distance to spoil site (m)"],
B08_Quantity_Side_SpoilDistance_Hint: [
"사토장을 노선에 놓으면 그 측점까지 거리가 계산되어 이 값은 안 씁니다 — 안 놓았을 때의 대체값입니다",
"Used only until a spoil site is placed on the route — then the distance is computed from that station",
],
B08_Quantity_Side_Water_Label: ["구조물터파기 용수", "Structure trench water"],
B08_Quantity_Water_Dry: ["육상(용수 없음)", "Dry"],
B08_Quantity_Water_Wet: ["용수", "Wet"],
B08_Quantity_Water_Unset: ["안 정함(줄이 막힘)", "Not set (row blocked)"],
B08_Quantity_Side_Water_Hint: [
"⚠ 「육상」은 통상값이고 사용자 확정이 아닙니다(확정 3차 ④) — 품셈 9-13 의 18구분이 이 값으로 갈립니다",
"⚠ “Dry” is a customary default, not a user decision — it selects one of the 18 sub-items",
],
B08_Quantity_Side_SeedSpray_Label: ["초류종자살포 비탈면 토질", "Seed spray slope soil"],
B08_Quantity_SeedSpray_Unset: ["안 정함(금액 안 섬)", "Not set (no amount)"],
B08_Quantity_Side_SeedSpray_Hint: [
"품셈 5-24 씨앗뿜어붙이기가 5-24-1 기계/일반 · 5-24-2 기계/마사토 둘로 갈림 — 제안값 없음, 안 고르면 내역 줄이 입력 사유로 섭니다",
"Pumsem 5-24 splits into general / decomposed-granite soil — no suggestion; unset leaves the bill row with an input reason",
],
B08_Quantity_Side_RootRemoval_Label: ["제근 굴착기 크기", "Root removal excavator size"],
B08_Quantity_RootRemoval_Unset: ["안 정함(금액 안 섬)", "Not set (no amount)"],
B08_Quantity_RootRemoval_Suggest: ["제안(비우면 안 정함):", "Suggested (blank = not set):"],
B08_Quantity_RootRemoval_FillSuggested: ["제안값 넣기", "Fill suggested"],
B08_Quantity_Side_StandVolume_Label: ["임목축적 등급", "Stand volume class"],
B08_Quantity_StandVolume_Unset: ["안 정함(줄이 막힘)", "Not set (row blocked)"],
B08_Quantity_StandVolume_Low: ["소림(30~60㎥/㏊)", "Low (30–60 ㎥/ha)"],
B08_Quantity_StandVolume_Mid: ["중림(60~90㎥/㏊)", "Mid (60–90 ㎥/ha)"],
B08_Quantity_StandVolume_High: ["밀림(90㎥/㏊ 이상)", "High (90+ ㎥/ha)"],
B08_Quantity_Side_StandVolume_Hint: [
"제근(품셈 9-21)이 이 등급으로 갈립니다 — ⚠ 본수가 아니라 축적이고, 산림조사부·영림계획에서 옮겨 적는 값입니다",
"Root removal (9-21) splits by this class — stand volume, not tree count; copied from the forest survey",
],
B08_Quantity_Side_Chipping: ["임목파쇄", "Wood Chipping"],
B08_Quantity_Chipping_Label: ["임목파쇄를 셀 것인가", "Count wood chipping"],
B08_Quantity_Chipping_Off: ["안 셈(기본)", "No (default)"],
B08_Quantity_Chipping_On: ["셈", "Yes"],
B08_Quantity_Chipping_Volume: ["파쇄 부피(㎥)", "Chipping volume (㎥)"],
B08_Quantity_Side_Chipping_Hint: [
"기본은 안 셉니다(확정 5차 5번) — 현장에 따라 필요하면 켜세요. ⚠ 켜도 부피를 넣어야 값이 섭니다(실무는 부피로 셈)",
"Off by default — turn on per site. Volume must be entered for the row to carry a quantity",
],
B08_Quantity_Side_TreeWaste: ["임목폐기물", "Tree Waste"],
B08_Quantity_TreeWaste_Stems: ["표본지 1,000㎡당 본수", "Stems per 1,000 ㎡ (sample plot)"],
B08_Quantity_TreeWaste_Dbh: ["평균 흉고직경(㎝)", "Mean DBH (cm)"],
B08_Quantity_TreeWaste_Height: ["평균 수고(m)", "Mean tree height (m)"],
B08_Quantity_TreeWaste_UnitWeight: ["단위체적중량(㎏/㎥)", "Unit weight (kg/㎥)"],
B08_Quantity_Side_TreeWaste_Hint: [
"현장 조사값 넷을 넣으면 준비공 「임목폐기물 처리」가 톤으로 섭니다. 산식: 지상부 WA = 0.5 × 3.14 × (흉고직경/2)² × 수고 × (1+0.3) × 단위체적중량 × 본수 · 본수 = 1,000㎡당 본수 × 벌목·지장목제거 면적 — 환경친화적인 도로건설 지침 부록1 · 한국건설기술연구원(2012) 3.2. 단위체적중량 참고: 소나무·침엽수 1,210~1,250 · 단풍·산벚 1,250~1,300 · 느티 1,300~1,340 · 상수리·졸참 1,340 이상(조경설계요람). 기본값 없음 — 수종·임분마다 다름",
"Enter the four field-survey values to raise the tree-waste row in tonnes. WA = 0.5 × 3.14 × (DBH/2)² × height × 1.3 × unit weight × stems (road guideline appendix 1, KICT 2012). No defaults — values differ by species and stand",
],
B08_Quantity_TreeWaste_RootMethod: ["뿌리부 산정법", "Root estimate"],
B08_Quantity_TreeWaste_RootRatio: [
"분배비 WA × 15/85 (기본)",
"Share ratio WA × 15/85 (default)",
],
B08_Quantity_TreeWaste_RootBall: ["뿌리분 체적 × 1,300㎏/㎥", "Root-ball volume × 1,300 kg/㎥"],
B08_Quantity_TreeWaste_RootBallDiameter: [
"뿌리분 직경 D(m, 흉고직경 아님) — 체적법만",
"Root-ball diameter D (m, not DBH) — volume method",
],
B08_Quantity_TreeWaste_Root_Hint: [
"환경친화적인 도로건설 지침 부록1 이 두 방법을 둡니다. 분배비(기본): 뿌리 15 : 지상 85(일반 수목류, 한국건설기술연구원 2012). 뿌리분 체적: V = πD²(D/2 + RH2/3) = 0.3927D³ · 뿌리분 중량 = V × 1,300㎏/㎥ × 본수. ⚠ 지침은 D 를 「뿌리분의 직경(DBH, m)」으로 적어 흉고직경인지 뿌리분 직경인지 갈리지 않음 — 흉고직경으로 두지 않고 따로 받습니다. 참고: 실무 실정보고(한 현장)는 뿌리 14 : 86 · 0.65톤/㎥ 를 씀",
"Road guideline appendix 1 gives two methods: share ratio 15:85 (default), or root-ball volume 0.3927·D³ × 1,300 kg/㎥ × stems. The guideline labels D ambiguously, so it is entered separately",
],
B08_Quantity_TreeWaste_Price: ["처리단가(원/톤) — 수동", "Disposal price (KRW/t) — manual"],
B08_Quantity_TreeWaste_Price_Hint: [
"⚠ 공표 단가 없음(한국건설자원협회 중간처리단가 미확보) — 넣으면 금액이 서되 「미확정」으로 셉니다(빨간 테두리). 비목은 경비 — 원가계산서 폐기물처리비 줄로 가고 일반관리비·이윤 밑수에 듭니다(예정가격작성기준 제19조③18호)",
"No published price — a manual price raises the amount as unconfirmed (red outline). Cost category is expense, inside the overhead and profit bases",
],
B08_Quantity_TreeWaste_Separate: ["분리발주", "Separate disposal contract"],
B08_Quantity_TreeWaste_Separate_Off: ["분리발주 아님(기본)", "No (default)"],
B08_Quantity_TreeWaste_Separate_On: ["분리발주", "Yes"],
B08_Quantity_TreeWaste_Separate_Hint: [
"⚠ 임목폐기물은 분리발주 대상 아님(환경부 질의회신 — 임목폐기물처리 실정보고 p4 · 건설폐기물 업무처리지침: 건설폐기물 아닌 사업장 일반폐기물) — 기본 꺼짐으로 원가계산서 경비에 듭니다. 이 칸은 다른 건설폐기물(위탁처리 100톤 이상 분리발주 대상)이 생길 때 쓰는 칸 — 켜면 총원가 밖에 서고 총공사비에만 더합니다. 5톤 이상은 배출자 신고 대상(폐기물관리법 시행령 제2조8호)",
"Tree waste is not subject to separate ordering (Ministry of Environment reply; classified as business general waste) — off by default, inside the expense category. Use this switch for other construction waste (100 t or more). When on, it sits outside total cost. 5 t or more requires a discharge report",
],
B08_Quantity_Side_FaceDressing: ["면고르기", "Face dressing"],
B08_Quantity_FaceDressing_Cut: ["절토면 토질", "Cut face soil"],
B08_Quantity_FaceDressing_Fill: ["성토면 시공·토질", "Fill face method·soil"],
B08_Quantity_FaceDressing_Unset: ["안 정함(금액 안 섬)", "Not set (no amount)"],
B08_Quantity_FaceDressing_FillArea: ["성토면 면적(㎡)", "Fill face area (㎡)"],
B08_Quantity_FaceDressing_CutArea: ["절토면 면적(㎡)", "Cut face area (㎡)"],
B08_Quantity_FaceDressing_Area_Placeholder: ["파종 면적 그대로", "Same as seeding area"],
B08_Quantity_FaceDressing_Suggest: ["제안(비우면 안 정함):", "Suggested (blank = not set):"],
B08_Quantity_FaceDressing_FillSuggested: ["제안값 넣기", "Fill suggested"],
B08_Quantity_Side_FaceDressing_Hint: [
"품셈 9-19-1 원문 표 두 벌(절토면 토질 6 · 성토면 시공·토질) — 제안값 없음, 안 고르면 내역 줄이 입력 사유로 섭니다. 면적은 비우면 초류종자살포 면적(× 반영률) 그대로 · 넣으면 그 값으로 덮어씀",
"Standard estimate 9-19-1 tables (cut face soil · fill face method/soil) — no suggested value; unset leaves the bill row with an input reason. Area left blank uses the seeding area (× ratio); a value overrides it",
],
B08_Quantity_Side_SubgradeCompaction: ["노체다짐", "Subgrade Compaction"],
B08_Quantity_SubgradeCompaction_Label: ["노체다짐을 셀 것인가", "Count subgrade compaction"],
B08_Quantity_Side_SubgradeCompaction_Hint: [
"기본은 안 셉니다 — 근거: 산림품셈 9-16-2 [주]⑤ 「대규모 성토지로서 층다짐이 필요한 경우 적용한다」. 켜면 토공집계에 「노체다짐」 줄이 성토량(㎥)으로 섭니다. [주]③ 굴착기+진동롤러 조합 중 굴착기는 성토(포설) 줄이 이미 셉니다",
"Off by default — forest standard 9-16-2 note ⑤ applies it only to large fills needing layer compaction. When on, a compaction row equal to the fill volume is added; the excavator of the note ③ pairing is already in the fill (spreading) row",
],
B08_Quantity_Side_Frame: ["규준틀 개소당 재료", "Batter Board Materials (per unit)"],
B08_Quantity_Side_Frame_Hint: [
"⚠ 채워진 값은 실무 관측값(제안값)이고 법정 기준이 아닙니다 — 품셈 11-2·11-3 [주]④ 는 「재료량은 설계수량에 따른다」로만 둡니다. 손율은 원문값(비탈 50% · 수평 80%)",
"Pre-filled values are field observations, not a legal standard — the standard only says “per design quantity”",
],
B08_Quantity_Frame_Square: ["각재 50×50 (㎥/개소)", "Square timber (㎥/ea)"],
B08_Quantity_Frame_Board: ["판재 T12 (㎥/개소)", "Board T12 (㎥/ea)"],
B08_Quantity_Frame_Nail: ["못 (㎏/개소)", "Nails (㎏/ea)"],
B08_Quantity_Side_Ancillary: ["부대시설 개소", "Ancillary Facilities"],
B08_Quantity_Side_Ancillary_Hint: [
"개소를 넣어야 줄이 섭니다 — 원문이 배치 간격을 정하지 않아 연장÷500 같은 산식을 쓰지 않습니다(확정 13)",
"Counts are design input — the source sets no spacing rule, so no formula is used",
],
B08_Quantity_Ancillary_national_point_sign: ["국가지점번호판(개소)", "National point signs"],
B08_Quantity_Ancillary_guide_sign: ["임도 안내판(개소)", "Guide signs"],
B08_Quantity_Ancillary_gate: ["차단기(개소)", "Gates"],
B08_Quantity_Ancillary_site_container: ["가설창고(개소)", "Site containers"],
B08_Quantity_Ancillary_flood_supplies: ["수방대책 자재(식)", "Flood supplies (set)"],
B08_Quantity_Side_TopsoilHaul_Label: ["표토 운반거리(m)", "Topsoil haul distance (m)"],
B08_Quantity_Side_TopsoilHaul_Hint: [
"⚠ 별표2 는 표토를 「전량 제거한 후 최고 홍수위보다 높은 장소로 운반하고 쌓아두어야」로 정합니다 — 거리를 넣으면 운반 줄이 섭니다. 표토제거는 노면 + 절토 사면 ㎡ 로 서고, 두께는 운반 부피(㎡ × 두께)에만 씁니다. 제거 품(9-15-2)에 20m 압토가 들어 있어 운반은 20m 를 넘는 몫만 셉니다",
"The law requires hauling and stockpiling removed topsoil — enter the distance to raise that row. Removal counts road surface + cut slope in ㎡; thickness only sizes the haul volume. The removal rate already includes a 20 m push, so only the excess is hauled",
],
B08_Quantity_Side_Placing: ["콘크리트 타설", "Concrete Placing"],
B08_Quantity_Side_Placing_Label: ["타설 방식", "Method"],
B08_Quantity_Placing_Unset: ["안 정함(기본값 사용)", "Not set (default)"],
B08_Quantity_Placing_Current: ["적용 중", "In use"],
B08_Quantity_Placing_Default_Tag: ["기본값 — 확인 필요", "default — needs review"],
B08_Quantity_Placing_Hint: ["참고 단가(B09 산출):", "Reference unit price (from B09):"],
B08_Quantity_Placing_Ready: ["레디믹스트", "Ready-mixed"],
B08_Quantity_Placing_Machine: ["기계비빔", "Machine-mixed"],
B08_Quantity_Placing_Hand: ["인력비빔", "Hand-mixed"],
B08_Quantity_Placing_Default_Notice: [
"⚠ 기본값 「레디믹스트」로 계산 중 — 아직 안 정한 값입니다. 타설 방식에 따라 단가가 갈립니다.",
"⚠ Using the default (ready-mixed) — not yet decided. Unit prices differ by method.",
],
B08_Quantity_Material_Failed: [
"자재총괄을 불러오지 못했습니다.",
"Failed to load the material summary.",
],
B08_Quantity_Haul_Missing: [
"운반계획이 아직 없습니다. 노선설계에서 [확정]을 누르면 만들어집니다.",
"No haul plan yet. Press [Confirm] on the profile design to build it.",
],
B08_Quantity_Haul_Excluded: ["내역 제외", "Not billed"],
B08_Quantity_Side_Ratios: ["반영률(%)", "Application ratios (%)"],
/* 반영률 항목 이름 — 서버 키를 사람이 읽는 말로. 거창 실무 시트 문구를 따른다. */
B08_Quantity_Ratio_FillCompaction: ["성토면다짐", "Fill slope compaction"],
B08_Quantity_Ratio_SeedFill: ["초류종자살포(성토면)", "Seed spray (fill)"],
B08_Quantity_Ratio_SeedCut: ["초류종자살포(절토면)", "Seed spray (cut)"],
B08_Quantity_Ratio_TreeRemoval: ["지장목제거", "Obstacle removal"],
B08_Quantity_Side_RockSet: ["암 갈래 세트", "Rock class set"],
B08_Quantity_Side_RockRatios: [
"암 갈래 구성비(%) — 암 총량 기준",
"Rock class split (%) of rock volume",
],
B08_Quantity_Btn_Save: ["저장", "Save"],
B08_Quantity_Save_Success: ["산출 조건을 저장했습니다.", "Calculation settings saved."],
B08_Quantity_Save_Failed: ["산출 조건을 저장하지 못했습니다.", "Failed to save the settings."],
B08_Quantity_Unsaved: ["저장하지 않은 변경이 있습니다.", "You have unsaved changes."],
B08_Quantity_Side_Method: ["산출법", "Method"],
B08_Quantity_Side_Method_Value: ["평균단면적법", "Average end area"],
B08_Quantity_Side_Factors: ["토량환산계수(다짐)", "Conversion factors (compacted)"],
B08_Quantity_Factor_Reach: [
"이 계수는 유토곡선·운반표·기초단가에도 같이 닿습니다.",
"These factors also feed the mass-haul curve, haul table and basis units.",
],
B08_Quantity_Factor_Default: ["기본값", "Default"],
B08_Quantity_Side_HaulLimits: ["운반장비 거리 경계", "Haul equipment distance limits"],
B08_Quantity_Side_DozerLimit_Label: ["도쟈 한계거리(m)", "Dozer haul limit (m)"],
B08_Quantity_Side_FreeHaul: ["종무대(바꾸지 않음)", "Free haul (fixed)"],
B08_Quantity_Side_HaulLimits_Reach: [
"유토곡선 운반 배분(무대·도쟈·덤프)에 닿습니다 — 바꾼 뒤 종횡단에서 다시 저장해야 운반표가 따라옵니다.",
"Feeds the mass-haul split (free/dozer/dump) — re-save the profile/cross sections for the haul table to follow.",
],
B08_Quantity_Factor_Range: ["품셈 범위", "Standard range"],
B08_Quantity_Factor_OutOfRange: [
"품셈 범위 밖입니다 — 사유를 적어 주세요(토질시험 값일 수 있습니다).",
"Outside the standard range — please note why (it may be a soil-test value).",
],
B08_Quantity_Factor_Reason: ["사유", "Reason"],
B08_Quantity_Factor_Pumsem: ["품셈 체적변화율(C)", "Standard volume-change (C)"],
/* --- B09_Estimation 원가계산 --- */
B09_Estimation_Title: ["원가계산", "Cost Estimate"],
B09_Estimation_Tab_CostSheet: ["공사원가계산서", "Cost Statement"],
B09_Estimation_Tab_Boq: ["설계내역서", "Bill of Quantities"],
B09_Estimation_Boq_Total: ["내역서 합계", "Bill total"],
B09_Estimation_PB_Empty: [
"설계내역서를 먼저 불러오면 단가산출서가 섭니다.",
"Load the bill first and the price-basis sheets appear.",
],
B09_Estimation_PB_Pick: ["왼쪽에서 산출서를 고르세요.", "Pick a sheet on the left."],
B09_Estimation_PB_Ref: ["참조", "Refers to"],
B09_Estimation_Mat_Contractor: ["사급 자재 (도급 재료비)", "Contractor-supplied (in the bill)"],
B09_Estimation_Mat_Owner: [
"관급 자재 — 총원가 밖 별도 표기",
"Owner-supplied — listed outside the total cost",
],
B09_Estimation_Mat_Unknown: [
"관급·사급이 안 갈린 것 — 어느 합계에도 안 넣습니다",
"Supply type undecided — excluded from both totals",
],
B09_Estimation_Mat_None: [
"이 프로젝트에는 자재 줄이 없습니다 — 구조물이 없거나 자재가 안 나온 상태입니다.",
"This project has no material rows yet.",
],
B09_Estimation_Mat_Empty: [
"설계내역서를 먼저 불러오면 자재대가 섭니다.",
"Load the bill first and the material sheet appears.",
],
B09_Estimation_Boq_Precision: [
"수량 표시는 소수 2자리, 계산은 전정밀 — 표시값끼리 곱하면 끝자리가 다릅니다.",
"Quantities are shown to 2 decimals but computed at full precision — multiplying the shown values gives a slightly different last digit.",
],
B09_Estimation_Boq_Excluded: [
"검산용 줄 — 수량만 보이고 금액을 매기지 않습니다",
"Check rows — quantity only, never priced",
],
B09_Estimation_Boq_NotOurs: [
"여기서 세지 않는 줄 (다른 표에 있거나 이 노선에 없음)",
"Counted elsewhere or not present on this route",
],
B09_Estimation_Boq_NeedsInput: [
"입력하면 풀리는 것 (설계 화면에서 값을 고르면 금액이 섭니다)",
"Waiting on input — pick the value on the design screen and the amount appears",
],
B09_Estimation_Boq_NeedsWork: [
"우리가 만들어야 하는 것 (원단위·전개식 없음)",
"Needs build — unit data or formula is missing",
],
B09_Estimation_Boq_Missing: [
"금액을 못 세운 줄 — 0 으로 안 채웁니다",
"Rows without an amount — shown as-is, not zero-filled",
],
B09_Estimation_Boq_Materials: ["자재 (별도 벌)", "Materials (separate set)"],
B09_Estimation_Boq_NoMaterialPrice: [
"사급 자재 단가가 아직 없어 자재비가 빠져 있습니다 — 지금 합계는 모자란 값입니다.",
"Contractor-supplied material prices are missing, so material cost is absent — this total is short.",
],
B09_Estimation_Boq_Load: ["B08 수량 불러오기", "Load B08 quantities"],
B09_Estimation_Boq_Failed: [
"B08 인계 자료를 받지 못했습니다.",
"Could not load the B08 handoff.",
],
B09_Estimation_Tab_UnitPrice: ["일위대가", "Unit Price"],
B09_Estimation_Tab_PriceBasis: ["단가산출근거", "Price Basis"],
B09_Estimation_Tab_Machine: ["중기", "Equipment"],
B09_Estimation_Tab_Duration: ["공사기간", "Duration"],
B09_Estimation_Tab_Supply: ["관급·사급", "Supplied Materials"],
B09_Estimation_Tab_BaseData: ["기초자료", "Base Data"],
B09_Estimation_Tab_DesignDoc: ["설계서 구성", "Design Document Set"],
B09_Estimation_Tab_BasisSheet: ["산출기초", "Calculation Basis"],
B09_Estimation_Group_Condition: ["공사 조건", "Project Conditions"],
B09_Estimation_Group_RateVersion: ["요율 판", "Rate Edition"],
B09_Estimation_Group_Supplied: ["관급자재", "Owner-Supplied"],
B09_Estimation_Group_Profit: ["이윤 조정", "Profit Adjustment"],
B09_Estimation_Field_DirectMaterial: ["직접재료비", "Direct Material"],
B09_Estimation_Field_DirectLabor: ["직접노무비", "Direct Labor"],
B09_Estimation_Field_DirectExpense: ["직접경비", "Direct Expense"],
B09_Estimation_Field_Duration: ["공사기간(일)", "Duration (days)"],
B09_Estimation_Field_WorkType: ["공종", "Work Type"],
B09_Estimation_Field_OwnerMaterial: ["순자재대", "Net Material"],
B09_Estimation_Field_ProcurementFee: ["조달수수료", "Procurement Fee"],
B09_Estimation_Field_ProfitAdjust: ["조정액", "Adjustment"],
B09_Estimation_Field_TargetContract: ["목표 도급공사비", "Target Contract"],
B09_Estimation_Btn_Recalc: ["재계산", "Recalculate"],
B09_Estimation_Btn_Confirm: ["확정", "Confirm"],
B09_Estimation_Col_Item: ["비목", "Item"],
B09_Estimation_Col_Amount: ["금액", "Amount"],
B09_Estimation_Col_Rate: ["요율", "Rate"],
B09_Estimation_Col_Basis: ["산출근거", "Basis"],
B09_Estimation_Col_Note: ["비고", "Note"],
B09_Estimation_Adopted: ["채택", "Adopted"],
B09_Estimation_NotAdopted: ["미채택", "Not adopted"],
B09_Estimation_Suggest_Adjust: [
"목표 도급공사비를 맞추려면 이윤을 이만큼 깎아야 합니다 — 적용하려면 조정액에 직접 넣으세요.",
"To hit the target contract amount, profit must be reduced by this much — enter it in Adjustment to apply.",
],
B09_Estimation_Calc_Failed: ["원가계산에 실패했습니다.", "Cost calculation failed."],
B09_Estimation_Confirm_Success: [
"원가계산 단계를 확정했습니다.",
"Cost estimate stage confirmed.",
],
B09_Estimation_Confirm_Failed: [
"원가계산 단계 확정에 실패했습니다.",
"Failed to confirm the cost estimate stage.",
],
B09_Estimation_Tab_Pending: ["준비 중", "Coming soon"],
B09_Estimation_UP_List: ["일위대가 목록표", "Unit Price Index"],
B09_Estimation_UP_Detail: ["일위대가표", "Unit Price Sheet"],
B09_Estimation_UP_Pick: ["목록에서 항목을 고르세요.", "Pick an item from the index."],
B09_Estimation_UP_Drill: ["펼쳐 보기", "Open"],
B09_Estimation_Col_Name: ["명칭", "Name"],
B09_Estimation_Col_Spec: ["규격", "Spec"],
B09_Estimation_Col_Unit: ["단위", "Unit"],
B09_Estimation_Col_Qty: ["수량", "Qty"],
B09_Estimation_Col_Source: ["원천", "Source"],
B09_Estimation_Col_Material: ["재료비", "Material"],
B09_Estimation_Col_Labor: ["노무비", "Labor"],
B09_Estimation_Col_Expense: ["경비", "Expense"],
B09_Estimation_Col_Total: ["합계", "Total"],
B09_Estimation_UP_SumOk: ["합계 = 재료+노무+경비 일치", "Total = M+L+E ✓"],
B09_Estimation_UP_SumBad: ["⚠ 합계가 재료+노무+경비와 다릅니다", "⚠ Total ≠ M+L+E"],
B09_Estimation_UP_RoundGap: [
"행별로 0.1원 미만을 버려 합계 끝자리가 다릅니다 (정상). 자르기 전 합계:",
"Rows are floored to 0.1 KRW, so the total's last digit differs (expected). Unrounded total:",
],
B09_Estimation_Group_Quantity: ["수량", "Quantities"],
B09_Estimation_Field_Quantities: [
"공종별 수량 (한 줄에 「공종코드=수량」)",
'Quantities (one "code=qty" per line)',
],
B09_Estimation_Src_Manual: ["수량 원천: 수기 입력(직접비)", "Source: manual direct costs"],
B09_Estimation_Src_Quantities: [
"수량 원천: 수기 입력 공종 수량 × 일위대가",
"Source: manual quantities × unit prices",
],
B09_Estimation_Missing_UP: [
"수량은 있는데 단가가 없는 공종 — 총액에서 빠졌습니다:",
"Quantities without a unit price — excluded from the total:",
],
B09_Estimation_UP_Load_Failed: ["일위대가를 못 불러왔습니다.", "Failed to load unit prices."],
/* --- B10_Payment 결재 --- */
B10_Payment_Title: ["결재", "Payment"],
B10_Payment_Subtitle: [
"세금계산서 발행과 계좌 입금 절차를 확인하세요.",
"Review the tax invoice and bank transfer process.",
],
B10_Payment_Invoice_Title: ["세금계산서 발행 요청", "Tax Invoice Request"],
B10_Payment_Invoice_Description: [
"사업자 정보와 발행 금액은 견적 확정 후 연결됩니다.",
"Business details and the invoice amount will be linked after the estimate is finalized.",
],
B10_Payment_Invoice_Request: ["발행 요청", "Request Invoice"],
B10_Payment_Invoice_Status: ["요청 전", "Not Requested"],
B10_Payment_Deposit_Title: ["계좌 입금 안내", "Bank Transfer Guide"],
B10_Payment_Deposit_Account: ["입금 계좌", "Deposit Account"],
B10_Payment_Deposit_Amount: ["입금 금액", "Deposit Amount"],
B10_Payment_Deposit_Pending: ["견적 확정 후 표시", "Shown after estimate confirmation"],
B10_Payment_Deposit_Note: [
"입금 확인 후 설계문서와 DWG 다운로드가 허용됩니다.",
"Design documents and DWG downloads are enabled after the deposit is confirmed.",
],
/* --- B11_Status 상태 출력 --- */
B11_Status_Title: ["처리 상태", "Status"],
B11_Status_Subtitle: [
"결재·문서 생성 상태를 확인하고 결과물을 내려받으세요.",
"Check payment and document status, and download results.",
],
// 자료 준비 화면 (대시보드 → 작업 화면 진입 시 3D·등고선 선적재)
B11_Loading_Title: ["자료 준비 중", "Preparing data"],
B11_Loading_Subtitle: ["잠시만 기다려 주세요.", "This will take a moment."],
B11_Loading_Message: [
"작업 화면에서 바로 쓸 수 있도록 3D 지표면과 등고선을 준비합니다.",
"Loading the 3D surface and contours so the workspace opens instantly.",
],
B11_Loading_Start: ["자료를 준비하는 중…", "Preparing data…"],
B11_Loading_NoProject: [
"프로젝트가 선택되지 않았습니다. 대시보드에서 프로젝트를 먼저 고르세요.",
"No project selected. Choose a project on the dashboard first.",
],
B11_Loading_Failed: [
"자료를 준비하지 못했습니다. 분석 결과나 저장 경로에 문제가 있을 수 있습니다. 담당자에게 연락해 주세요.",
"Could not prepare the data. The analysis result or storage path may be broken. Please contact support.",
],
B11_Loading_NoSurface: [
"아직 확정된 지표면이 없습니다. 필수 파일을 올리면 지표면 분석이 자동으로 진행되고, 끝나면 이 화면이 자료를 준비합니다.",
"No confirmed surface yet. Upload the required files — the surface analysis runs automatically, and this screen prepares the data once it finishes.",
],
B11_Loading_Btn_FileInput: ["파일 입력", "File input"],
B11_Loading_Btn_Continue: ["계속", "Continue"],
B11_Loading_Btn_Dashboard: ["대시보드", "Dashboard"],
B11_Status_Flow_Title: ["결재 진행 상태", "Payment Progress"],
B11_Status_Step_Request: ["발행 요청", "Invoice Requested"],
B11_Status_Step_Issue: ["세금계산서 발행", "Invoice Issued"],
B11_Status_Step_Deposit: ["입금 확인", "Deposit Confirmed"],
B11_Status_Step_Complete: ["완료", "Complete"],
B11_Status_NotStarted: ["시작 전", "Not Started"],
B11_Status_Download_Title: ["결과물 다운로드", "Result Downloads"],
B11_Status_Download_Description: [
"입금 확인이 완료되면 설계문서와 DWG 다운로드가 활성화됩니다.",
"Design document and DWG downloads are enabled after deposit confirmation.",
],
} as const satisfies Record<string, LocaleEntry>;