Files
Pier_v1/Code/검토수정/스크립트/revert_전단철근_기록_xlsx.py
T
ahnyongjooandClaude Sonnet 5.5 964a841de1 chore(rebar): Pier_T_rebar 작업 폴더 초기 구성 및 외부 의존 파일 통합
- Code\rebar_pipeline, review_pipeline, pier-program을 정션에서 실제 폴더로 전환
- Code\rhino_mcp 및 CLAUDE_rhino배경.md 추가, .mcp.json은 PYTHONPATH로 새 위치 사용
- pier-program 내부 .git 제거(이력은 backup\pier-program_20261028.bundle에 보관)
- worktree 가이드 반영(CLAUDE.local.md, HANDOFF.md)
- D:\Rhino-MCP 경로 참조를 새 위치로 치환

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-28 11:20:18 +09:00

68 lines
4.3 KiB
Python
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.
"""R-10~R-12(전단·세로철근 수정)를 '취소'로 표시하고 수정2 를 최신으로 되돌린다 (2026-10-26, 사용자 지적).
사유: 재료표 A·C 치수와 수정2 모델이 이미 일치. 재료표 L 은 직선 치수 합이라 모델 중심선 길이보다 굽힘 보정만큼 길다.
모델 파일은 지우지 않고 수정3 두 개를 '폐기'로 표시한다. 같은 표시가 이미 있으면 중단.
"""
import sys
from pathlib import Path
import openpyxl
from openpyxl.styles import PatternFill
XLSX = Path(r"D:\★Pier 자료\프로그램\Pier_T\검토파일\4개교_공통사항_종합.xlsx")
wb = openpyxl.load_workbook(XLSX)
GRAY = PatternFill("solid", fgColor="FFD9D9D9")
RED = PatternFill("solid", fgColor="FFF8CBAD")
GREEN = PatternFill("solid", fgColor="FFE2EFDA")
ws = wb["수정 내역"]
if any(str(r[2].value).startswith("[취소]") for r in ws.iter_rows(min_row=4)):
sys.exit("이미 취소 표시가 있음 - 중단")
WHY = {
"R-10": ("취소(2026-10-26): 수정2 의 옥성 B9 는 도면 a≈567·b 1,998·c 100(곧은 구간 57.1 + R42.93)과 이미 일치. "
"재료표 L 4,763 = a+2b+2c 직선 치수 합(굽힘 보정 없음)이라 중심선 길이를 L 에 맞추면 c 가 약 137 로 도면보다 길어짐 → 수정3 폐기, 수정2 로 되돌림. "
"KDS 5db 95.5 미달은 도면 c 100 자체의 문제(설계자 확인)"),
"R-11": ("취소(2026-10-26): 수정2 의 산외 B7 은 도면 A 2,218(z 166~2384)·C 100(80.5 + R19.5)과 이미 일치. 끝을 바깥 주철근 바깥으로 옮기면 A 가 2,282 가 되어 도면에서 벗어남 → 수정3 폐기. "
"참고: A 2,218 은 바깥 주철근 안쪽 면에 접하는 위치(167.5 / 2385.5)와 거의 같음(현재 166 / 2384, 1.5mm 차)"),
"R-12": ("취소(2026-10-26): 수정2 의 산외 B9·B10 은 도면 A 7,300(직선 7,252 + R24×2)·C 100(76 + R24)과 이미 일치 → 연장을 늘린 수정3 폐기, 수정2 로 되돌림"),
}
for r in ws.iter_rows(min_row=4):
code = r[0].value
if code in WHY:
r[2].value = "[취소] " + str(r[2].value)
r[10].value = WHY[code]
r[0].fill = GRAY
r[2].fill = RED
ev = wb["수정 증거(마크별)"]
for r in ev.iter_rows(min_row=4):
if r[3].value and ("전단철근 갈고리 연장" in str(r[3].value) or "세로철근 끝 높이" in str(r[3].value) or "중간 직선철근 갈고리 연장" in str(r[3].value)):
r[3].value = "[취소] " + str(r[3].value)
r[8].value = "2026-10-26 사용자 지적: 수정2 가 도면 치수(A·C)와 일치하여 되돌림. 수정3 폐기"
r[3].fill = RED
fs = wb["수정 파일·해시"]
for r in fs.iter_rows(min_row=4):
p = str(r[1].value)
if p.endswith("산외교P1 G5_수정3_20261026.3dm") or p.endswith("옥성교P1_G5_수정3_20261026.3dm"):
r[3].value = "폐기"
r[3].fill = RED
r[2].value = str(r[2].value) + " — 도면 치수와 달라 취소 (2026-10-26)"
if p.endswith("산외교P1 G5_수정2_20261026.3dm") or p.endswith("옥성교P1_G5_수정2_20261026.3dm"):
r[3].value = "최신"
r[3].fill = GREEN
hold = wb["미수정·보류"]
for r in hold.iter_rows(min_row=4):
if r[0].value == "산외교" and str(r[1].value).startswith("B7"):
r[3].value = "수정하지 않음(수정 취소): 도면 A 2,218·C 100 과 모델(166~2384, 갈고리 R19.5+80.5)이 일치"
r[4].value = ("B7 은 기초 상·하부 철근을 잡아주는 ㄷ철근(사용자 설명). A 2,218 은 바깥 주철근 안쪽 면에 접하는 위치(167.5 / 2385.5)와 거의 같고 현재 166 / 2384 (1.5mm 차). "
"'수정 내역' R-11 취소")
r[5].value = "필요하면 1.5mm 맞춤 여부 결정"
if r[0].value == "옥성교" and str(r[1].value).startswith("B9"):
r[3].value = "도면 c 100 (곧은 구간 57.1 + R42.93)은 일치. KDS 5db 95.5 대비 곧은 구간 57.1 부족은 도면 c 100 자체의 문제"
r[4].value = "수정 없음. 사용자 설명: B9 는 ㄷ철근이 J 로 겹치는 서로 마주보는 ㄷ자 철근 — 모델의 마주보는 배치·겹침이 도면과 같은지 확인 필요(미확인). '수정 내역' R-10 취소"
r[5].value = "설계자 확인 + 도면 평면 배치 확인"
wb.save(XLSX)
print("saved")