Commit Graph

21 Commits

Author SHA1 Message Date
Hyungi Ahn
e27020ae9b feat: 구매신청 기능 완성 및 SUPPORT/SPECIAL 카테고리 개선
- 모든 카테고리 구매신청 기능 완성 (PIPE, FITTING, VALVE, FLANGE, GASKET, BOLT, SUPPORT, SPECIAL, UNKNOWN)
- 구매신청 완료 항목: 회색 배경, 체크박스 비활성화, '구매신청완료' 배지 표시
- 전체 선택/구매신청 시 이미 구매신청된 항목 자동 제외
- 구매신청 quantity 타입 에러 수정 (문자열 -> 정수 변환)

SUPPORT 카테고리 (구 U-BOLT):
- U-BOLT -> SUPPORT로 카테고리명 변경
- 클램프, 유볼트, 우레탄블럭슈 분류 개선
- 테이블 헤더: 선택-종류-타입-크기-디스크립션-추가요구-사용자요구-수량
- 크기 정보 main_nom 필드에서 가져오기 (배관 인치)
- 엑셀 내보내기 형식 조정

SPECIAL 카테고리:
- SPECIAL 키워드 자재 자동 분류 (SPECIFICATION 제외)
- 파일 업로드 시 SPECIAL 카테고리 처리 로직 추가
- 도면번호 필드 추가 (drawing_name, line_no)
- 타입 필드: 크기/스케줄/재질 제외한 핵심 정보 표시
- 엑셀 DWG_NAME, LINE_NUM 컬럼 파싱 및 저장

FITTING 카테고리:
- 테이블 컬럼 너비 조정 (선택 2%, 종류 8.5%, 수량 12%)

구매신청 관리:
- 엑셀 재다운로드 형식 개선 (BOM 페이지와 동일한 형식)
- 그룹화된 자재 정보 포함하여 저장 및 다운로드
2025-10-14 12:39:25 +09:00
Hyungi Ahn
07ca79f376 🔄 SUPPORT 카테고리를 U-BOLT로 통합
Some checks failed
SonarQube Analysis / SonarQube Scan (push) Has been cancelled
- DB: SUPPORT 카테고리 76개 자재를 U_BOLT로 변경 (총 211개)
- 프론트엔드: SUPPORT 표시명을 'U-BOLT'로 변경
- SUPPORT 전용 헤더 및 본문 렌더링 제거
- U_BOLT 렌더링 개선:
  - U-BOLT: 기본 표시
  - URETHANE: 우레탄 블록 슈
  - CLAMP: 클램프 (신규 추가)
- CLAMP 배지 스타일 추가 (청록색)
2025-10-14 06:37:00 +09:00
Hyungi Ahn
e8fb531fdb 🎯 선택 컬럼 대폭 축소 - 경계선 위치 수정
Some checks failed
SonarQube Analysis / SonarQube Scan (push) Has been cancelled
- 선택: 3.5% → 2% (체크박스에 딱 맞게)
- 종류: 6.5% → 8% (배지 표시 공간 확보)
- 본문의 border-right가 선택 컬럼 끝에 위치하도록 조정
- 모든 카테고리에 일괄 적용
2025-10-13 15:58:02 +09:00
Hyungi Ahn
e45bcf12c0 🔧 선택/종류 컬럼 비율 재조정
Some checks failed
SonarQube Analysis / SonarQube Scan (push) Has been cancelled
- 선택: 2.5% → 3.5% (체크박스 공간 확보)
- 종류: 7.5% → 6.5% (배지 크기에 맞게 축소)
- 모든 카테고리에 일괄 적용
2025-10-13 15:55:00 +09:00
Hyungi Ahn
f1fe614977 테이블 정렬 완료 - 백분율 기반 컬럼 너비
Some checks failed
SonarQube Analysis / SonarQube Scan (push) Has been cancelled
- 모든 카테고리의 컬럼을 백분율(%)로 통일
- 선택: 2.5%, 종류: 7.5%로 최적화
- 화면 너비에 맞게 꽉 차도록 표시
- 헤더와 본문이 완벽하게 정렬됨
- 엑셀과 유사한 깔끔한 테이블 완성
2025-10-13 15:50:55 +09:00
Hyungi Ahn
e3d0c4d9a0 💯 컬럼 너비를 백분율로 변경 - 화면 꽉 차게 표시
Some checks failed
SonarQube Analysis / SonarQube Scan (push) Has been cancelled
- 모든 고정 픽셀 너비를 백분율(%)로 변경
- 화면 너비에 맞게 테이블이 꽉 차도록 설정
- overflow-x: hidden으로 가로 스크롤 제거
- 헤더와 본문이 정확히 동일한 백분율 사용
- 예: PIPE 9개 컬럼 = 5% 8% 12% 8% 10% 20% 12% 15% 10%
- 이제 어떤 화면 크기에서도 헤더와 본문이 완벽히 정렬됨
2025-10-13 15:44:51 +09:00
Hyungi Ahn
5a9274d42b 🔧 테이블 border 구조 수정 - 양쪽 테두리 통일
Some checks failed
SonarQube Analysis / SonarQube Scan (push) Has been cancelled
- 헤더 행의 border-left, border-right 제거
- 본문 행의 border-left, border-right 제거
- 대신 첫/마지막 셀에 border 적용으로 통일
- materials-grid의 외곽 border가 전체를 감쌈
- 불필요한 이중 border 제거
2025-10-13 15:41:58 +09:00
Hyungi Ahn
1d2ab35d18 🎯 컬럼 고정 너비 적용 - minmax 제거
Some checks failed
SonarQube Analysis / SonarQube Scan (push) Has been cancelled
- 문제 원인: minmax(최소값, auto)로 인해 내용에 따라 컬럼 크기 변동
- 모든 minmax()를 고정 너비로 변경
- 헤더와 본문이 항상 정확히 동일한 너비 유지
- 예: minmax(130px, auto) → 130px
- 이제 모든 카테고리에서 완벽한 정렬 보장
2025-10-13 15:40:15 +09:00
Hyungi Ahn
805d164124 🔒 반응형 제거 및 고정 너비 적용
Some checks failed
SonarQube Analysis / SonarQube Scan (push) Has been cancelled
- 문제 원인: 반응형 구조로 인해 브라우저 크기에 따라 컬럼 너비가 변경됨
- materials-page: min-width: 1400px 적용
- materials-grid: min-width: 1200px, width: fit-content 적용
- 이제 테이블이 고정 너비를 유지하고 스크롤로 확인 가능
- 헤더와 본문이 항상 동일한 너비 유지
2025-10-13 15:38:48 +09:00
Hyungi Ahn
a0d22508be 엑셀 스타일 테이블 완성 - 헤더/본문 완벽 정렬
Some checks failed
SonarQube Analysis / SonarQube Scan (push) Has been cancelled
- 헤더와 본문의 border 색상 통일 (#d1d5db)
- 테이블 전체에 일관된 border 적용
- 헤더 상단 border 추가로 완전한 박스 형태
- 모든 카테고리에서 헤더와 본문이 정확히 일치
- 엑셀과 동일한 깔끔한 그리드 스타일
2025-10-13 15:27:11 +09:00
Hyungi Ahn
fa032e95c6 📊 엑셀 스타일 테이블 완성 - 동적 컬럼 너비
Some checks failed
SonarQube Analysis / SonarQube Scan (push) Has been cancelled
- 모든 카테고리에 minmax() 적용으로 내용에 맞게 컬럼 자동 확장
- 헤더와 본문에 동일한 padding: 6px 4px 적용
- 모든 margin 제거하고 순수 grid로 구성
- materials-grid에 외곽 border 추가
- 엑셀처럼 명확한 셀 구분선
- 텍스트가 길어도 잘리지 않고 컬럼이 자동 확장됨
2025-10-13 15:25:11 +09:00
Hyungi Ahn
0ed1047839 📊 테이블을 엑셀 스타일로 완전 재구성
- 모든 margin, padding 제거하고 순수 grid로 재구성
- 헤더 셀: padding: 6px 4px (엑셀처럼 내부 여백만)
- 본문 셀: padding: 6px 4px (헤더와 동일)
- 모든 셀에 명확한 border (엑셀 그리드 스타일)
- materials-grid에 외곽 border와 border-radius 추가
- 헤더 배경: #f3f4f6 (엑셀 회색 헤더)
- 이제 헤더와 본문이 완벽히 정렬됨
2025-10-13 15:21:09 +09:00
Hyungi Ahn
511f5c4f19 🔧 헤더 패딩 제거로 그리드 정렬 완전 해결
Some checks failed
SonarQube Analysis / SonarQube Scan (push) Has been cancelled
- 근본 원인: 헤더 셀의 padding: 0 8px가 그리드 정렬을 방해
- 모든 헤더 div와 filterable-header의 padding 제거
- grid-template-columns 너비가 정확히 적용되도록 수정
- 이제 헤더와 본문의 컬럼이 완벽히 정렬됨
2025-10-13 15:09:38 +09:00
Hyungi Ahn
2ea7f2879f 🔄 테이블 헤더 고정 해제 및 가로 스크롤 개선
Some checks failed
SonarQube Analysis / SonarQube Scan (push) Has been cancelled
- 모든 카테고리 헤더의 position: sticky 제거
- 헤더와 본문이 함께 좌우로 스크롤되도록 변경
- 더 나은 UX: 전체 테이블을 좌우로 자유롭게 이동 가능
- 컬럼 너비 최적화 (타입, 재질 등 컬럼 크기 조정)
2025-10-13 15:04:43 +09:00
Hyungi Ahn
573f145f50 🎨 모든 카테고리 테이블 그리드 정렬 개선
Some checks failed
SonarQube Analysis / SonarQube Scan (push) Has been cancelled
- 모든 카테고리의 헤더와 본문 grid-template-columns를 통일
- FLANGE, FITTING, VALVE, GASKET, UNKNOWN 컬럼 너비 재조정
- 선택 컬럼: 40px → 60px (체크박스 공간 확보)
- 각 카테고리별 최적 컬럼 너비 적용으로 내용 잘림 방지
- 사용자요구 컬럼: 150px → 200px (입력 공간 확대)
2025-10-13 14:59:33 +09:00
Hyungi Ahn
cde930c263 SUPPORT 카테고리 전용 테이블 레이아웃 추가
Some checks failed
SonarQube Analysis / SonarQube Scan (push) Has been cancelled
- NewMaterialsPage.jsx: SUPPORT 전용 헤더 및 본문 행 추가 (9개 컬럼)
- NewMaterialsPage.css: SUPPORT 전용 그리드 레이아웃 및 스타일 추가
- 헤더와 본문의 컬럼이 정확히 매칭되도록 수정
- SUPPORT 전용 배지 스타일 추가 (청록색)
2025-10-13 14:56:03 +09:00
Hyungi Ahn
2e0d91cf59 🔧 볼트 재질 정보 개선 및 A320/A194M 패턴 지원
Some checks failed
SonarQube Analysis / SonarQube Scan (push) Has been cancelled
- bolt_classifier.py: A320/A194M 조합 패턴 처리 로직 추가
- material_grade_extractor.py: A320/A194M 패턴 추출 개선
- integrated_classifier.py: SPECIAL, U_BOLT 카테고리 우선 분류
- 데이터베이스: 492개 볼트의 material_grade를 완전한 형태로 업데이트
  - A320/A194M GR B8/8: 78개
  - A193/A194 GR B7/2H: 414개
- 프론트엔드: BOLT 카테고리 전용 UI (길이 표시)
- Excel 내보내기: BOLT용 컬럼 순서 및 재질 정보 개선
- SPECIAL, U_BOLT 카테고리 지원 추가
2025-10-01 08:18:25 +09:00
Hyungi Ahn
50570e4624 feat: 사용자 요구사항 기능 완전 구현 및 전체 카테고리 추가
Some checks failed
SonarQube Analysis / SonarQube Scan (push) Has been cancelled
- 사용자 요구사항 저장/로드/엑셀 내보내기 기능 완전 구현
- 백엔드 API 수정: Request Body 방식으로 변경
- 데이터베이스 스키마: material_id 컬럼 추가
- 프론트엔드 상태 관리 개선: 저장 후 자동 리로드
- 입력 필드 연결 문제 해결: 누락된 onChange 핸들러 추가
- NewMaterialsPage에 '전체' 카테고리 버튼 추가 (기본 선택)
- Docker 환경 개선: 프론트엔드 볼륨 마운트 및 포트 수정
- UI 개선: 벌레 이모지 제거, 디버그 코드 정리
2025-09-30 08:55:20 +09:00
Hyungi Ahn
0f9a5ad2ea 🔧 재질 정보 표시 개선 및 UI 확장
Some checks failed
SonarQube Analysis / SonarQube Scan (push) Has been cancelled
 주요 수정사항:
- 재질 GRADE 전체 표기: ASTM A106 B 완전 표시 (A10 잘림 현상 해결)
- material_grade_extractor.py 정규표현식 패턴 개선
- files.py 파일 업로드 시 재질 추출 로직 수정
- CSS 그리드 너비 확장으로 텍스트 잘림 현상 해결
- 사용자 요구사항 엑셀 다운로드 기능 완료

🎯 해결된 문제:
1. ASTM A106 B → ASTM A10 잘림 문제
2. 재질 컬럼 너비 부족으로 인한 표시 문제
3. 사용자 요구사항이 엑셀에 반영되지 않는 문제

📋 다음 단계 준비:
- 파이프 끝단 정보 제외 취합 로직 개선
- 플랜지 타입 정보 확장
- 자재 분류 필터 기능 추가
2025-09-25 08:32:17 +09:00
Hyungi Ahn
881fc13580 리비전 업로드 시 정확한 수량 차이분 계산 로직 구현
Some checks failed
SonarQube Analysis / SonarQube Scan (push) Has been cancelled
- 기존 자재와 새 자재의 수량을 비교하여 증가분만 저장
- Rev.0: 엘보 10개, Rev.1: 엘보 12개 → Rev.1에는 2개만 저장
- 완전 신규 자재는 전체 수량 저장
- 수량 감소/동일한 자재는 저장하지 않음
- 리비전별 정확한 차이분 관리 구현
2025-09-09 12:03:47 +09:00
Hyungi Ahn
83b90ef05c feat: 자재 관리 페이지 대규모 개선
Some checks failed
SonarQube Analysis / SonarQube Scan (push) Has been cancelled
- 파이프 수량 계산 로직 수정 (단관 개수가 아닌 실제 길이 기반 계산)
- UI 전면 개편 (DevonThink 스타일의 간결하고 세련된 디자인)
- 자재별 그룹핑 로직 개선:
  * 플랜지: 동일 사양별 그룹핑, WN 스케줄 표시, ORIFICE 풀네임 표시
  * 피팅: 상세 타입 표시 (니플 길이, 엘보 각도/연결, 티 타입, 리듀서 타입 등)
  * 밸브: 동일 사양별 그룹핑, 타입/연결방식/압력 표시
  * 볼트: 크기/재질/길이별 그룹핑 (8SET → 개별 집계)
  * 가스켓: 동일 사양별 그룹핑, 재질/상세내역/두께 분리 표시
  * UNKNOWN: 원본 설명 전체 표시, 동일 항목 그룹핑
- 전체 카테고리 버튼 제거 (표시 복잡도 감소)
- 카테고리별 동적 컬럼 헤더 및 레이아웃 적용
2025-09-09 09:24:45 +09:00