Merge remote-tracking branch 'origin/dev' into sub_laptop_4

This commit is contained in:
2026-10-05 12:40:36 +09:00
3 changed files with 119 additions and 20 deletions
+103 -18
View File
@@ -9,27 +9,112 @@
{
"id": "s1",
"이름": "면적산출",
"칸": {},
"연결": [
{
"키": "콘크리트 표층 인력포설|㎥",
"이름": "콘크리트 표층 인력포설",
"칸": "B6",
"단위": "㎥"
"칸": {
"E7": {
"값": "구 분"
},
{
"키": "와이어메시 바닥깔기|㎡",
"이름": "와이어메시 바닥깔기",
"칸": "D15",
"단위": "㎡"
"F7": {
"값": "규 격"
},
{
"키": "기계비빔타설|㎥",
"이름": "기계비빔타설",
"칸": "F14",
"단위": "㎥"
"G7": {
"값": "수 량"
},
"H7": {
"값": "단 위"
},
"I7": {
"값": "산 출 근 거"
},
"J7": {
"값": "비 고"
},
"E8": {
"값": "야면석"
},
"E9": {
"값": "고임돌량"
},
"E10": {
"값": "뒤채움돌"
},
"E11": {
"값": "구조물터파기량"
},
"E12": {
"값": "되메우기량"
},
"E13": {
"값": "잔토량"
},
"F8": {
"값": "뒤길이35cm"
},
"F10": {
"값": "9~15cm"
},
"G8": {
"값": 2.65
},
"G9": {
"값": 0.24
},
"G10": {
"값": 0.94
},
"G11": {
"값": 0.38
},
"G12": {
"값": 0.11
},
"G13": {
"값": 0.26
},
"H8": {
"값": "㎡"
},
"H9": {
"값": "㎥"
},
"H10": {
"값": "㎥"
},
"H11": {
"값": "㎥"
},
"H12": {
"값": "㎥"
},
"H13": {
"값": "㎥"
},
"I8": {
"값": "2.5m * 1.059m / 1.0 m * 1.0 m = 2.6475m"
},
"I9": {
"값": "2.6475m * 0.09m /1.0 m = 0.2383㎥"
},
"I10": {
"값": "(0.45 + 0.3)/2 * 2.5 * 1.0 = 0.9375"
},
"I11": {
"값": "(1.1+1.4)/2 * 0.3 * 1.0 = 0.375"
},
"I12": {
"값": "(0.3+0.45)/2 * 0.3 * 1.0 = 0.1125"
},
"I13": {
"값": "0.375 - 0.1125 = 0.2625"
}
]
},
"열": {
"E": {
"폭": 14.460318429129464
},
"I": {
"폭": 39.60316685267857
}
}
}
],
"활성": "s1",
@@ -11,84 +11,98 @@
"담은로직": [
{
"로직": "GC000198",
"별칭": null,
"메모": "레미콘타설(장비) 무근,소형",
"입력값": {},
"수량": null
},
{
"로직": "GC000214",
"별칭": null,
"메모": "유로폼 설치 및 해체 보통",
"입력값": {},
"수량": null
},
{
"로직": "GC000206",
"별칭": null,
"메모": "철근가공 및 조립 Type-Ⅰ-1,현장가공조립",
"입력값": {},
"수량": null
},
{
"로직": "GC000207",
"별칭": null,
"메모": "철근가공 및 조립 Type-Ⅰ-1,현장가공조립",
"입력값": {},
"수량": null
},
{
"로직": "GF000218",
"별칭": null,
"메모": "기초다짐 및 뒤채움 소형 장비사용 시공 (실무 수는 옛 판 값)",
"입력값": {},
"수량": null
},
{
"로직": "GF000225",
"별칭": null,
"메모": "깬잡석찰붙임 L3=30cm내외",
"입력값": {},
"수량": null
},
{
"로직": "GF000156",
"별칭": null,
"메모": "콘크리트(기계비빔) 무근구조물 (실무 수는 옛 판 값)",
"입력값": {},
"수량": null
},
{
"로직": "GF000226",
"별칭": null,
"메모": "큰돌메쌓기 뒷길이 0.6~0.8m",
"입력값": {},
"수량": null
},
{
"로직": "GF000214",
"별칭": null,
"메모": "야면석채집 L3=45cm내외 (실무 수는 옛 판 값)",
"입력값": {},
"수량": null
},
{
"로직": "GF000222",
"별칭": null,
"메모": "찰쌓기(켜쌓기) L3=55cm이하 (실무 수는 옛 판 값)",
"입력값": {},
"수량": null
},
{
"로직": "GC000677",
"별칭": null,
"메모": "모르터바르기 1:3",
"입력값": {},
"수량": null
},
{
"로직": "GF000221",
"별칭": null,
"메모": "돌쌓기 찰(켜)쌓기,L3=55cm이하 (실무 수는 옛 판 값)",
"입력값": {},
"수량": null
},
{
"로직": "GC000088",
"별칭": null,
"메모": "구조물터파기(토사) 굴착기0.6m3",
"입력값": {},
"수량": null
},
{
"로직": "GF000113",
"별칭": null,
"메모": "구조물되메우기 굴착기0.6m3 (실무 수는 옛 판 값)",
"입력값": {},
"수량": null
+2 -2
View File
@@ -56,7 +56,7 @@ def test_칸_지정_모달은_setLink_만():
def test_빈_칸은_수량_없음_서버와_같음():
"""39-8 ② — 빈 칸에 이은 알약 = 수량 없음(반영 「—」 · 「수량 A1 = 빈 칸」) · 0 칸 = 0 · 값 칸 = 값."""
"""39-8 ② — 빈 칸에 이은 알약 = 수량 없음(반영 「—」 · 「수량 빈 칸(A1)」) · 0 칸 = 0 · 값 칸 = 값."""
from M02_MasterTemplete import M02_Labor_Doc as labor
doc = {
@@ -79,7 +79,7 @@ def test_빈_칸은_수량_없음_서버와_같음():
sheet = (ROOT / "A00_Common" / "spreadsheet" / "spreadsheet.ts").read_text(encoding="utf-8")
assert 'const empty = !cell || (cell.식 === undefined && (cell.값 ?? "") === "");' in sheet
rows = _text("M02_MasterTemplete_Labor_Rows.ts")
assert '${tc("Labor_Qty")} ${at} = ${tc("In_QtyEmpty")}' in rows
assert '${tc("Labor_Qty")} ${tc("In_QtyEmpty")}(${at})' in rows
assert "if (!value) return `${link.칸} = ${TEXT.empty}`;" in _text(
"M02_MasterTemplete_AreaLink.ts"
)