자재관리 2메뉴 풀-CRUD + 액션 (자재리스트 + 불출의뢰서)

- 신규 테이블 5종 (운영 11133 → RPS 11134 DDL 1:1):
  inventory_mgmt / inventory_mgmt_in / inventory_mgmt_out /
  inventory_mgmt_out_master / inventory_mgmt_history
- 백엔드 /api/inventory-mng — 리스트·재고등록·자재이동·삭제·이력 +
  불출의뢰 생성·접수·자재불출(재고 차감)·삭제. 채번 Rfw-YYYY-seq.
- 프론트 /COMPANY_16/material/{list, issue-request} +
  StockRegister / MaterialMove / IssueRequestCreate /
  InventoryHistory / IssueDispatch 다이얼로그 5종.
- AdminPageRenderer 등록 + /material/ prefix.
This commit is contained in:
hjjeong
2026-05-19 11:25:15 +09:00
parent 1b1231d9a9
commit aacbb62ad8
18 changed files with 2738 additions and 0 deletions
@@ -0,0 +1,31 @@
-- ====================================================================
-- inventory_mgmt — 자재 마스터 (품번 + Location 단위 자재 정보)
-- ====================================================================
-- 출처: wace_plm 운영 DB 211.115.91.141:11133/waceplm (PG 16.8)
-- 추출일: 2026-05-15
-- 자식: inventory_mgmt_in (입고/이동 히스토리), inventory_mgmt_out (불출 라인)
-- ====================================================================
CREATE TABLE IF NOT EXISTS inventory_mgmt (
objid VARCHAR NOT NULL,
contract_objid VARCHAR NOT NULL,
unit VARCHAR(100) NOT NULL,
part_objid VARCHAR(100) NOT NULL,
cls_cd VARCHAR(100),
cau_cd VARCHAR(100),
qty VARCHAR(20),
location VARCHAR(20) NOT NULL DEFAULT '',
sub_location VARCHAR(20) NOT NULL DEFAULT '',
reg_date VARCHAR(10),
price VARCHAR(20),
writer VARCHAR(20),
input_contract_objid VARCHAR,
input_qty VARCHAR,
input_date VARCHAR,
assumption_user VARCHAR,
successor_user VARCHAR,
CONSTRAINT inventory_mgmt_pkey PRIMARY KEY (contract_objid, unit, part_objid)
);
CREATE INDEX IF NOT EXISTS inventory_mgmt_objid_idx ON inventory_mgmt (objid);
CREATE INDEX IF NOT EXISTS inventory_mgmt_part_objid_idx ON inventory_mgmt (part_objid);
@@ -0,0 +1,33 @@
-- ====================================================================
-- inventory_mgmt_in — 자재 입고/이동 히스토리 라인
-- ====================================================================
-- 출처: wace_plm 운영 DB 211.115.91.141:11133/waceplm
-- 추출일: 2026-05-15
-- 부모: inventory_mgmt.objid → parent_objid
-- 외부키: out_objid (콤마분리 inventory_mgmt_out.objid 누적)
-- ====================================================================
CREATE TABLE IF NOT EXISTS inventory_mgmt_in (
objid VARCHAR NOT NULL,
parent_objid VARCHAR,
receipt_qty VARCHAR,
location VARCHAR,
sub_location VARCHAR,
writer VARCHAR,
regdate TIMESTAMP,
contract_mgmt_objid VARCHAR,
purchase_order_master_objid VARCHAR,
purchase_order_sub_objid VARCHAR,
out_objid VARCHAR,
out_qty VARCHAR,
move_objid VARCHAR,
move_qty VARCHAR,
move_date VARCHAR,
move_user VARCHAR,
request_qty VARCHAR,
receipt_date VARCHAR,
CONSTRAINT inventory_mgmt_in_pkey PRIMARY KEY (objid)
);
CREATE INDEX IF NOT EXISTS inventory_mgmt_in_parent_objid_idx ON inventory_mgmt_in (parent_objid);
CREATE INDEX IF NOT EXISTS inventory_mgmt_in_contract_mgmt_objid_idx ON inventory_mgmt_in (contract_mgmt_objid);
@@ -0,0 +1,28 @@
-- ====================================================================
-- inventory_mgmt_out — 불출 라인 (의뢰 + 실제 불출)
-- ====================================================================
-- 출처: wace_plm 운영 DB 211.115.91.141:11133/waceplm
-- 추출일: 2026-05-15
-- 부모: inventory_mgmt.objid → parent_objid (자재 마스터)
-- 부모2: inventory_mgmt_out_master.objid → inventory_request_master_objid
-- 흐름: REQUEST_QTY 먼저 입력 (의뢰) → OUT_QTY/OUT_DATE/ACQ_USER/SIGN 입력 (불출)
-- ====================================================================
CREATE TABLE IF NOT EXISTS inventory_mgmt_out (
objid VARCHAR NOT NULL,
parent_objid VARCHAR,
request_qty VARCHAR,
out_qty VARCHAR,
out_date VARCHAR,
writer VARCHAR,
acq_user VARCHAR,
regdate TIMESTAMP,
inventory_request_master_objid VARCHAR,
sign VARCHAR,
contract_mgmt_objid VARCHAR,
unit VARCHAR,
CONSTRAINT inventory_mgmt_out_pkey PRIMARY KEY (objid)
);
CREATE INDEX IF NOT EXISTS inventory_mgmt_out_parent_objid_idx ON inventory_mgmt_out (parent_objid);
CREATE INDEX IF NOT EXISTS inventory_mgmt_out_master_objid_idx ON inventory_mgmt_out (inventory_request_master_objid);
@@ -0,0 +1,32 @@
-- ====================================================================
-- inventory_mgmt_out_master — 불출의뢰 마스터 (Rfw-YYYY-seq)
-- ====================================================================
-- 출처: wace_plm 운영 DB 211.115.91.141:11133/waceplm
-- 추출일: 2026-05-15
-- 자식: inventory_mgmt_out (불출 라인) → inventory_request_master_objid
-- 상태:
-- reception_status='reception' / ''=미접수
-- outstatus='complete' / ''=미완료
-- 채번: inventory_out_no = 'Rfw-' || YYYY || '-' || seq
-- ====================================================================
CREATE TABLE IF NOT EXISTS inventory_mgmt_out_master (
objid VARCHAR NOT NULL,
parent_objid VARCHAR,
inventory_out_no VARCHAR,
request_date VARCHAR,
request_id VARCHAR,
reception_status VARCHAR,
reception_id VARCHAR,
reception_date VARCHAR,
outstatus VARCHAR,
writer VARCHAR,
regdate TIMESTAMP,
remark VARCHAR,
contract_mgmt_objid VARCHAR,
sign VARCHAR,
CONSTRAINT inventory_mgmt_out_master_pkey PRIMARY KEY (objid)
);
CREATE INDEX IF NOT EXISTS inventory_mgmt_out_master_no_idx ON inventory_mgmt_out_master (inventory_out_no);
CREATE INDEX IF NOT EXISTS inventory_mgmt_out_master_status_idx ON inventory_mgmt_out_master (reception_status, outstatus);
@@ -0,0 +1,18 @@
-- ====================================================================
-- inventory_mgmt_history — 자재 투입(인계/인수) 이력
-- ====================================================================
-- 출처: wace_plm 운영 DB 211.115.91.141:11133/waceplm
-- 추출일: 2026-05-15
-- ====================================================================
CREATE TABLE IF NOT EXISTS inventory_mgmt_history (
objid VARCHAR NOT NULL,
parent_objid VARCHAR,
contract_objid VARCHAR,
reg_date VARCHAR,
input_qty VARCHAR,
input_date VARCHAR,
assumption_user VARCHAR,
successor_user VARCHAR,
CONSTRAINT inventory_mgmt_history_pkey PRIMARY KEY (objid)
);