ERP-node/frontend/lib/registry/components/rack-structure
kjs b6ed76f243 V2 컴포넌트로의 전환 및 기존 컴포넌트 숨김 처리: ComponentsPanel에서 기존 컴포넌트를 V2 버전으로 대체하고, 관련 컴포넌트들을 패널에서 숨김 처리하여 관리 효율성을 높였습니다. 각 컴포넌트의 정의에 'hidden' 속성을 추가하여 V2 컴포넌트 사용을 명시하였습니다. 2026-01-19 16:51:08 +09:00
..
README.md 렉 구조등록 컴포넌트 2025-12-08 15:15:44 +09:00
RackStructureComponent.tsx 다국어 관리 시스템 개선: 카테고리 및 키 자동 생성 기능 추가 2026-01-13 18:28:11 +09:00
RackStructureConfigPanel.tsx 렉 구조등록 컴포넌트 2025-12-08 15:15:44 +09:00
RackStructureRenderer.tsx 창고 렉 구조 등록 컴포넌트 중복 방지기능 추가 2025-12-08 17:13:14 +09:00
config.ts 렉 구조등록 컴포넌트 2025-12-08 15:15:44 +09:00
index.ts V2 컴포넌트로의 전환 및 기존 컴포넌트 숨김 처리: ComponentsPanel에서 기존 컴포넌트를 V2 버전으로 대체하고, 관련 컴포넌트들을 패널에서 숨김 처리하여 관리 효율성을 높였습니다. 각 컴포넌트의 정의에 'hidden' 속성을 추가하여 V2 컴포넌트 사용을 명시하였습니다. 2026-01-19 16:51:08 +09:00
types.ts fix: 렉 구조 등록 카테고리 데이터 저장 방식 통일 및 중복 체크 수정 2026-01-12 17:25:52 +09:00

README.md

렉 구조 설정 컴포넌트 (Rack Structure Config)

창고 렉 위치를 열 범위와 단 수로 일괄 생성하는 컴포넌트입니다.

핵심 개념

이 컴포넌트는 상위 폼의 필드 값을 읽어서 위치 코드를 생성합니다.

작동 방식

  1. 사용자가 화면관리에서 테이블 컬럼(창고코드, 층, 구역 등)을 드래그하여 폼에 배치
  2. 렉 구조 컴포넌트 설정에서 필드 매핑 설정 (어떤 폼 필드가 창고/층/구역인지)
  3. 런타임에 사용자가 폼 필드에 값을 입력하면, 렉 구조 컴포넌트가 해당 값을 읽어서 사용

기능

1. 렉 라인 구조 설정

  • 조건 추가/삭제
  • 각 조건: 열 범위(시작~종료) + 단 수
  • 자동 위치 수 계산 (예: 1열~3열 x 3단 = 9개)
  • 템플릿 저장/불러오기

2. 등록 미리보기

  • 통계 카드 (총 위치, 열 수, 최대 단)
  • 미리보기 생성 버튼
  • 생성될 위치 목록 테이블

설정 방법

1. 화면관리에서 배치

  1. 상위에 테이블 컬럼들을 배치 (창고코드, 층, 구역, 위치유형, 사용여부)
  2. 컴포넌트 팔레트에서 "렉 구조 설정" 선택
  3. 캔버스에 드래그하여 배치

2. 필드 매핑 설정

설정 패널에서 상위 폼의 어떤 필드를 사용할지 매핑합니다:

매핑 항목 설명
창고 코드 필드 위치 코드 생성에 사용할 창고 코드
층 필드 위치 코드 생성에 사용할 층
구역 필드 위치 코드 생성에 사용할 구역
위치 유형 필드 미리보기 테이블에 표시할 위치 유형
사용 여부 필드 미리보기 테이블에 표시할 사용 여부

예시

상위 폼에 다음 필드가 배치되어 있다면:

  • 창고코드(조인) → 필드명: warehouse_code
  • → 필드명: floor
  • 구역 → 필드명: zone

설정 패널에서:

  • 창고 코드 필드: warehouse_code 선택
  • 층 필드: floor 선택
  • 구역 필드: zone 선택

위치 코드 생성 규칙

기본 패턴: {창고코드}-{층}{구역}-{열:2자리}-{단}

예시 (창고: WH001, 층: 1, 구역: A):

  • WH001-1A-01-1 (01열, 1단)
  • WH001-1A-01-2 (01열, 2단)
  • WH001-1A-02-1 (02열, 1단)

설정 옵션

옵션 타입 기본값 설명
maxConditions number 10 최대 조건 수
maxRows number 99 최대 열 수
maxLevels number 20 최대 단 수
showTemplates boolean true 템플릿 기능 표시
showPreview boolean true 미리보기 표시
showStatistics boolean true 통계 카드 표시
readonly boolean false 읽기 전용

출력 데이터

onChange 콜백으로 생성된 위치 데이터 배열을 반환합니다:

interface GeneratedLocation {
  rowNum: number;          // 열 번호
  levelNum: number;        // 단 번호
  locationCode: string;    // 위치 코드
  locationName: string;    // 위치명
  locationType?: string;   // 위치 유형
  status?: string;         // 사용 여부
  warehouseCode?: string;  // 창고 코드 (매핑된 값)
  floor?: string;          // 층 (매핑된 값)
  zone?: string;           // 구역 (매핑된 값)
}

연동 테이블

warehouse_location 테이블과 연동됩니다:

컬럼 설명
warehouse_id 창고 ID
floor
zone 구역
row_num 열 번호
level_num 단 번호
location_code 위치 코드
location_name 위치명
location_type 위치 유형
status 사용 여부

예시 시나리오

시나리오: A구역에 1~3열은 3단, 4~6열은 5단 렉 생성

  1. 상위 폼에서 기본 정보 입력

    • 창고: 제1창고 (WH001) - 드래그해서 배치한 필드
    • 층: 1 - 드래그해서 배치한 필드
    • 구역: A - 드래그해서 배치한 필드
    • 위치 유형: 선반 - 드래그해서 배치한 필드
    • 사용 여부: 사용 - 드래그해서 배치한 필드
  2. 렉 구조 컴포넌트에서 조건 추가

    • 조건 1: 1~3열, 3단 → 9개
    • 조건 2: 4~6열, 5단 → 15개
  3. 미리보기 생성

    • 총 위치: 24개
    • 열 수: 6개
    • 최대 단: 5단
  4. 저장

    • 24개의 위치 데이터가 warehouse_location 테이블에 저장됨

필수 필드 검증

미리보기 생성 시 다음 필드가 입력되어 있어야 합니다:

  • 창고 코드
  • 구역

필드가 비어있으면 경고 메시지가 표시됩니다.