🎨 SCR-PM-004 (아래 f1) 프레임은 2026-07-08 Figma 실제 디자인 기준으로 레이아웃을 재작성했다 — fileKey xFn4Tq2vnfAr42PpuxLbbP · node 628:2087. 그 외 프레임(f2~f7, SCR-PM-006 포함)은 DE22-1 화면설계서 §02 원본 그대로다(회색조 로우파이 원칙은 전체 동일 유지).
SCR-PM-004 거래처 관리 — 좌측 목록 + 우측 상세 패널 전체 페이지 🎨 Figma: node 628:2087

거래처 목록을 검색·조회하고, 행 클릭 시 우측 상세 패널에서 기본정보·취급 자재/공정 단가를 편집한다. (경로 /partners · /partners/:partnerId)
Figma 실제 디자인 기준 재작성(2026-07-08) — DE22-1 원본 대비 변경점: ① 목록 테이블 9컬럼(사업자번호·연락처·등록일 3개 추가) ② 페이지 타이틀 바("거래처 관리"+등록 버튼)를 목록/상세 분할 영역 위 전체 폭으로 분리, "Excel 다운로드"는 검색 바로 이동 ③ 상세 패널의 "거래처 유형"은 등록 후 읽기전용 필드로 상단 이동(더 이상 인라인 select 아님) ④ 역할·우선순위·리드타임(금형사 전용) 조건부 블록을 "비고" 필드 뒤 폼 최하단으로 재배치 ⑤ "비고" 필드 추가.

진입 — 사이드바 > 거래처관리

  1. + 거래처 등록 버튼 — 페이지 타이틀 바 우측. 클릭 시 등록 모달(f4) 오픈, 성공 시 목록 갱신·새 행 자동 선택·상세 패널 오픈으로 이어진다.
  2. 검색 바 — 거래처명·사업자번호 부분일치 검색. Enter 또는 [검색] 클릭 시 목록 조회 파라미터로 전달된다.
  3. Excel 다운로드 — 현재 검색 조건 기준 거래처 목록 xlsx 내보내기.
  4. 목록 테이블(9컬럼) — 거래처코드·거래처명·유형·사업자번호·대표자·연락처·자재 수·활성·등록일. 행 클릭 시 우측 상세 패널 오픈 + URL 갱신(/partners/:partnerId).
  5. 활성 토글 — 상세 패널 헤더의 거래처 활성/비활성을 즉시 전환한다(PATCH).
  6. 상세 탭 — 기본정보 / 취급 자재·단가 / 취급 공정·단가 3탭 전환. 각 탭은 별도 화면(f1 기본정보 · f2 · f3)으로 상세 정의.
  7. 금형사 조건부 블록 — 거래처 유형=금형사 선택 시에만 역할·우선순위·리드타임 필드를 폼 최하단에 노출한다.
  8. 저장 버튼 — 기본정보 탭 폼 하단. 편집한 기본정보를 저장·수정한다(PUT).
관련 API Swagger UI ↗
  • GET/api/pm/partners — 거래처 목록 조회 및 거래처명·사업자번호 검색(query param)
  • GET/api/pm/partners/{partnerId} — 행 클릭 시 상세 조회(딥링크 /partners/:partnerId)
  • PUT/api/pm/partners/{partnerId} — 기본정보 탭 저장·수정
  • PATCH/api/pm/partners/{partnerId}/active — 상세 패널 헤더 활성/비활성 토글
  • POST/api/pm/partners — [+ 거래처 등록] 버튼 → 등록 모달(f4) 제출
  • GET/api/pm/partners/export — [Excel 다운로드] 현재 검색 기준 xlsx 내보내기
거래처관리
CMD+K 검색
페이지 타이틀 바
거래처 관리 1+ 거래처 등록
검색 · 액션 바
2거래처명/사업자번호 검색 검색 3Excel 다운로드
4목록 테이블 · 9컬럼 정의 (거래처코드·거래처명·유형·사업자번호·대표자·연락처·자재 수·활성·등록일)
거래처코드거래처명유형사업자번호대표자연락처자재 수활성등록일
P-2026-001가공소A금형사123-45-67890홍길동010-1234-123412활성YYYY.MM.DD
P-2026-002유리공장B가공987-65-43210이순신010-9999-11118비활성YYYY.MM.DD
P-2026-003대양금속금형사555-66-77890강감찬031-222-33445활성YYYY.MM.DD
1
i필터 패널은 Phase 1 미노출(거래처 100건 미만 추정) — 검색만 제공. 행 클릭 시 우측 상세 패널 오픈 + URL 갱신. 미선택 상태(기본값)에서는 우측 패널에 "좌측의 거래처명을 선택하시면 상세정보가 노출됩니다" 안내 문구만 노출된다(Figma 기본 상태 · 이 프레임은 선택된 상태를 표시).
상세 패널 · 기본정보 탭 (드래그 리사이즈 · 딥링크)

가공소A

5활성 × 닫기
6기본정보 취급 자재·단가 취급 공정·단가
거래처 코드P-2026-001 (불변)
거래처 유형금형사 (등록 후 불변)
거래처명 *가공소A
사업자번호123-45-67890
대표자홍길동
연락처02-0000-0000
이메일contact@gagonga.co.kr
주소서울특별시 00구 00로
비고-

7거래처 유형 = 금형사 인 경우에만 노출 (조건부)
역할 *INSULATION
우선순위3
리드타임(일)12
취소 8저장
SCR-PM-004 상세 패널 · [취급 자재·단가] 탭 상세 패널 컨텍스트

선택 거래처가 취급하는 자재와 유효단가 목록. 행 클릭 시 최근 5건 단가 이력 아코디언이 열린다. 전체 이력은 SCR-PM-006 으로 이동.

진입 — SCR-PM-004 상세 패널 [기본정보] 탭에서 [취급 자재·단가] 탭 클릭 (f1 참조)

  1. + 자재 추가 버튼 — 헤더 액션. 클릭 시 자재 검색 모달을 열어 자재-거래처 매핑을 생성한다(POST).
  2. 목록 테이블(5컬럼) — 자재코드·자재명·단위·유효단가·변경일. 행 클릭 시 아래로 단가 이력 아코디언이 펼쳐진다.
  3. 단가 이력 아코디언 — 최근 5건(적용시작·적용종료·이전단가·변경단가·변경사유)만 표시(BE ?limit=5).
  4. 안내 힌트 — 전체 매핑·이력 관리는 SCR-PM-006[매핑 거래처 목록]으로 이동한다는 안내.
관련 API Swagger UI ↗
  • GET/api/pm/partners/{partnerId}/materials — 선택 거래처의 취급 자재·유효단가 목록
  • GET/api/pm/items/{itemCode}/partners/{partnerMaterialId}/prices — 행 클릭 시 최근 5건 단가 이력 아코디언(?limit=5)
  • POST/api/pm/items/{itemCode}/partners — [+ 자재 추가] 자재-거래처 매핑 생성
  • GET/api/search — [+ 자재 추가] 자재 검색 모달의 자재 조회

가공소A

활성 × 닫기
기본정보 취급 자재·단가 취급 공정·단가
헤더 액션
취급 자재·단가 1+ 자재 추가
2목록 테이블 (행 클릭 → 단가 이력 아코디언)
자재코드자재명단위유효단가(₩)변경일
R-01-00001상틀 프로파일EA12,5002026-04-01
3▼ 최근 5건 단가 이력
적용시작적용종료이전단가변경단가변경사유
2026-04-01(현재)11,90012,500분기 단가 조정
2026-01-012026-03-3111,50011,900원자재 인상
R-01-00023하틀 알루미늄EA11,2002026-03-28
i4[+ 자재 추가] → 자재 검색 모달. 아코디언은 최근 5건(BE ?limit=5). 전체 매핑·이력은 SCR-PM-006 [매핑 거래처 목록] 진입점.
SCR-PM-004 상세 패널 · [취급 공정·단가] 탭 상세 패널 컨텍스트

거래처가 수행하는 공정과 규격범위별 단가. (공정, 규격범위) 1건 단위. 정방향 매핑(거래처 고정, 공정 검색).

진입 — SCR-PM-004 상세 패널에서 [취급 공정·단가] 탭 클릭 (f1 참조)

  1. + 공정 추가 버튼 — 거래처-공정 매핑을 생성하는 공정 검색 모달을 연다.
  2. + 단가 등록 버튼 — 선택된 (공정 × 규격범위) 단위로 단가 시계열을 등록한다.
  3. 목록 테이블(5컬럼) — 공정·규격범위·단가·적용시작일·변경사유. (공정, 규격범위) 1건 단위로 나열.
  4. 규격범위 규칙 힌트 — min·max 둘 다 필수 입력. 무제한 상한은 max=99999(mm) 컨벤션, 길이무관은 min·max NULL로 '전체' 표기. 행 클릭 시 최근 5건 단가 이력 아코디언이 펼쳐진다.
  5. 단가 이력 아코디언 예시 — "절단 L ≤ 3,000mm" 행 클릭 시 펼쳐지는 모습을 시연한다. [취급 자재·단가] 탭과 동일하게 최근 5건만 표시(BE ?limit=5).
관련 API Swagger UI ↗
  • GET/api/pm/partners/{partnerId}/processes — 거래처의 취급 공정·규격범위·단가 목록
  • POST/api/pm/partners/{partnerId}/processes — [+ 공정 추가] 거래처-공정 매핑 생성
  • POST/api/pm/partner-processes/{partnerProcessId}/prices — [+ 단가 등록] 규격범위별 단가 시계열 등록
  • GET/api/pm/partner-processes/{partnerProcessId}/prices — 행 클릭 시 최근 5건 단가 이력 아코디언
  • 정책단가 이력 단건 삭제 = 무효 처리(supersede)로 확정 — 전용 삭제 endpoint 미신설 (§5.3.16 정책, #485). 오입력 회수는 정정 단가 재등록(위 POST .../prices 자동 종료 supersede)으로, 매핑 통째 정리는 DELETE /api/pm/partner-processes/{partnerProcessId}(CASCADE 그룹 삭제)로 처리. effective-dated 이력 보존 원칙 + 공정 단가 이력 테이블 부재.
  • GET/api/pm/processes — 공정 목록 조회

가공소A

활성 × 닫기
기본정보 취급 자재·단가 취급 공정·단가
헤더 액션 (2종)
취급 공정·단가 1+ 공정 추가 2+ 단가 등록
3목록 테이블 (공정 × 규격범위 단위)
공정규격범위단가(₩)적용시작일변경사유
절단L ≤ 3,000mm1,2002026-04-01분기 단가 조정
5▼ 최근 5건 단가 이력
적용시작적용종료이전단가변경단가변경사유
2026-04-01(현재)1,1001,200분기 단가 조정
2026-01-012026-03-311,0001,100원자재 인상
절단L > 3,000mm1,5002026-04-01분기 단가 조정
가공전체2,8002026-03-15원자재 인상 반영
i4규격범위(길이): 실 입력은 min·max 둘 다 필수. 무제한 상한은 max=99999(mm) 컨벤션, "전체"는 min·max NULL. 행 클릭 → 최근 5건 이력 아코디언.
SCR-PM-004 거래처 등록 모달 (12 필드) 모달

좌측 목록 [+ 거래처 등록] 클릭 시 열린다. 필수: partnerCode · 거래처명 · 유형. 사업자번호는 선택. 금형사 선택 시 역할·priority·leadTimeDays 활성.

  1. 식별자 — 거래처코드(필수, 예: P-2026-001). 저장 시 partnerCode 중복이면 POST 409 폴백으로 처리한다(사전 검증 endpoint 없음).
  2. 기본 정보 — 거래처명·유형(필수) + 사업자번호·대표자·연락처·이메일(선택).
  3. 금형사 조건부 블록 — 유형=금형사 선택 시에만 역할(필수)·priority(1~99)·리드타임(0~365일)이 활성화된다.
  4. 추가 정보 — 주소(선택, max 500)·비고(선택, max 1000).
  5. 검증·저장 안내 — 저장 직전 일괄 검증(필드별 inline 에러). partnerCode 중복은 POST 409 폴백. 등록 성공 시 목록 즉시 갱신·새 행 자동 선택·상세 패널 오픈.
  6. [등록] 버튼 — 12필드를 제출한다(POST /api/pm/partners).
관련 API Swagger UI ↗
  • POST/api/pm/partners — 거래처 등록(12필드) 제출, 코드 중복 시 409 폴백
  • 재사용GET /api/pm/partners?code=X&exists=true — 거래처 코드 중복 사전 검증은 기존 조회(checkCodeExists, ISS-0074)로 처리한다. 전용 /check-code 는 두지 않고, 등록 POST /api/pm/partners 의 409 응답으로 폴백한다(의도된 부재, #414 BE 조사).
SCR-PM-006 자재-거래처 매핑 / 단가 이력 전체 페이지

한 자재에 매핑된 거래처 목록과 시계열 단가 이력. 우선순위 드래그·묶음 단가(📦) 환산·거래처 별칭·비활성 배지를 표기. (경로 /materials/:itemCode/partners)

진입 — SCR-PM-003 [거래처 매핑] 탭 인라인 / SCR-PM-004 [취급 자재·단가] 탭 행 클릭(전체 매핑·이력) / 사이드바 > 거래처관리 > 자재-거래처 매핑 (자재 미선택 시 SCR-PM-001 자재 목록 redirect + "자재를 선택하세요" 안내)

  1. 자재 컨텍스트 — 상단에 현재 자재(코드·명·단위)를 고정 표시한다.
  2. + 거래처 매핑 추가 버튼 — 클릭 시 거래처 매핑 추가 모달(f6)을 연다.
  3. 매핑 거래처 목록 테이블(9컬럼) — 우선순위·거래처·type/역할·별칭·거래단가·단위단가(환산)·리드타임·적용기간·액션. ⠿ 핸들 드래그로 금형사 우선순위(1 주/2 보조/3 예비)를 재정렬한다(PATCH reorder).
  4. 묶음(📦) 단가 배지 — 묶음단위×수량으로 입력된 단가를 단위 단가로 자동 환산해 함께 표기한다(예: 8,500÷100=85).
  5. 비활성 배지(⚠) — 거래처가 비활성 상태임을 표기하며, 신규 매핑 대상에서 제외된다.
  6. 단가 이력 아코디언 — 행 클릭 시 펼쳐지며, 유효 단가 행을 강조(볼드) 표시한다.
관련 API Swagger UI ↗
  • GET/api/pm/items/{itemCode}/partners — 자재별 매핑 거래처 목록(우선순위·환산 단가 포함)
  • POST/api/pm/items/{itemCode}/partners — [+ 거래처 매핑 추가] 모달(f6) 제출
  • PATCH/api/pm/items/{itemCode}/partners/reorder — ⠿ 드래그 우선순위 재정렬
  • PUT/api/pm/items/{itemCode}/partners/{partnerMaterialId} — [수정] 매핑 정보(별칭·우선순위·리드타임·유효기간) 수정
  • POST/api/pm/items/{itemCode}/partners/{partnerMaterialId}/prices — [신규 단가] 단가 시계열 등록(기존 활성 단가 자동 종료)
  • GET/api/pm/items/{itemCode}/partners/{partnerMaterialId}/prices — [이력]·행 클릭 아코디언의 단가 이력 조회
거래처관리 › 자재-거래처 매핑
CMD+K 검색
1자재 컨텍스트
자재 R-01-00001 상틀 프로파일 · 단위 m / EA 혼용
3매핑 거래처 목록 (⠿ 드래그로 우선순위 재정렬)
매핑된 거래처 목록 2+ 거래처 매핑 추가
우선순위거래처type · 역할거래처 별칭거래 단가단위 단가(환산)리드타임적용시작 ~ 종료액션
1 (주)대양금속금형사 · EXTRUSIONDY-PRF-225U12,400 / m12,400 / m7일2026-04-01 ~ (현재)수정 신규 단가 이력
2 (보조)성진알미늄금형사 · EXTRUSION12,800 / m12,800 / m5일2026-04-01 ~ (현재)수정 신규 단가 이력
가공소A가공GA-TOP-A12,500 / EA12,500 / EA2026-04-01 ~ (현재)수정 신규 단가 이력
동신테크금형사 · HARDWAREDST-PCS-1004📦 8,500 / 박스(100 EA)85 / EA3일2026-04-15 ~ (현재)수정 신규 단가 이력
유리공장B 5⚠ 비활성자재공급9,800 / EA9,800 / EA2026-01-01 ~ 2026-03-31이력
1
i거래처 별칭 = 거래처 자체 자재코드(미입력 시 마스터 코드 사용). 📦 묶음 단가는 단위 단가로 자동 환산(8,500 ÷ 100 = 85). priority·리드타임은 금형사 한정, 비활성은 신규 매핑 차단.
6단가 이력 아코디언 (행 클릭 시 펼침 · 유효 단가 행 강조) ▼ 대양금속 단가 이력
적용시작적용종료이전단가변경단가변경사유
2026-04-01(현재)11,00012,400원자재 인상
2026-01-012026-03-3110,50011,000분기 조정
SCR-PM-006 거래처 매핑 추가 모달 모달

자재는 고정(🔒), 거래처를 검색·선택. 단위/묶음(📦) 단가 택1, 유효기간·변경사유 입력. priority·리드타임은 금형사 한정. 적용시작 min=today(소급 차단).

진입 — SCR-PM-006 [+ 거래처 매핑 추가] 버튼 클릭 (f5 참조)

  1. 자재(고정) 필드 — 🔒 읽기전용. 매핑 대상 자재를 고정 표시한다.
  2. 거래처 검색 select — 활성 거래처만 검색·선택 대상으로 노출된다.
  3. type·역할 자동 채움 — 거래처 선택 시 해당 거래처의 type·역할을 읽기전용으로 자동 표시한다.
  4. 단가 입력 방식 라디오 — 단위 단가 / 📦 묶음 단가 중 택1.
  5. 묶음 조건부 블록 — 📦 묶음 단가 선택 시 묶음단위·수량·묶음단가를 입력하면 환산 단위단가를 자동 계산한다(예: 8,500÷100=85).
  6. 우선순위 select — 금형사 거래처에 한정해 1(주)/2(보조)/3(예비) 우선순위를 지정한다.
  7. 유효 시작일 — min=today로 소급 적용을 차단한다. 기존 유효 단가는 신규 시작일 직전으로 자동 종료된다.
  8. 매핑 등록 버튼 — 모달 하단. 자재-거래처 매핑과 초기 단가를 등록한다(POST).
관련 API Swagger UI ↗
  • POST/api/pm/items/{itemCode}/partners — 매핑 + 초기 단가 등록([매핑 등록])
  • GET/api/pm/partners — 거래처 검색 select(활성 거래처만 노출)
SCR-PM-006 매핑 변경 이력 탭 탭 뷰

priority · 단가 · 리드타임 · status 의 시간순 변경 타임라인. [diff] 클릭 시 before/after 전체 필드 비교 모달. 90일 경과 이력은 자동 아카이브.

진입 — SCR-PM-006 [매핑 거래처 목록] 탭에서 [변경 이력] 탭 클릭 (f5 참조)

  1. 탭 전환 — [매핑 거래처 목록](f5) / [변경 이력] 2탭.
  2. 자재 컨텍스트 · 보관 기간 — 상단에 현재 자재와 이력 보관 기간(90일)을 함께 표시한다.
  3. 변경 이력 테이블(7컬럼) — 변경일시·거래처·변경 항목·before→after·변경자·사유·액션. priority·단가·리드타임·status 변경을 시간순으로 나열.
  4. [diff] 버튼 — 행별로 클릭하면 before/after 전체 필드 비교 모달이 열린다.
  5. 자동 아카이브 안내 — 90일이 지난 이력은 감사용으로 자동 아카이브된다.
관련 API Swagger UI ↗
  • GET/api/pm/items/{itemCode}/partners/{partnerMaterialId}/history — 매핑 변경 이력 타임라인 조회(카탈로그상 GET /partners/{partnerId}/history)
매핑 거래처 목록 1변경 이력
2자재 컨텍스트 · 보관 기간
자재 R-01-00001 상틀 프로파일 보관 기간: 90일
3변경 이력 테이블 (priority · 단가 · 리드타임 · status)
변경일시거래처변경 항목before → after변경자사유액션
2026-04-15 14:22대양금속단가11,000 → 12,400 ₩/m김지광원자재 인상4diff
2026-04-10 09:30성진알미늄priority3 (예비) → 2 (보조)이순신주력 거래처 승격diff
2026-04-01 11:00대양금속리드타임10일 → 7일김지광납기 단축 협상diff
2026-03-28 16:45유리공장BstatusACTIVE → INACTIVE관리자거래 중단diff
i5행 [diff] 클릭 시 before/after 전체 필드 비교 모달. 90일 경과 이력은 자동 아카이브(감사용 보존).
범례 — 이 문서는 로우파이 와이어프레임이다. 회색조·플레이스홀더로 레이아웃과 주요 컴포넌트 배치만 나타내며 실제 색·데이터·타이포그래피는 아니다. 점선 박스 = 입력 필드/영역, 진한 회색 버튼 = primary 액션, 얇은 배지 = 상태/유형. 근거: DE22-1 화면설계서 §02 (SCR-PM-004 · SCR-PM-006). 미확정 항목은 문맥상 없음.