1c1ca69feb
- 마이그레이션 005: cupang_shipments.box_plan JSONB (확정 당시 박스 구성) 확정 payload 에서 제품별/혼합 상자와 내용물·상자 종류를 받아 저장 - 달력 오른쪽 목록을 ③ 센터 분배 카드 형식으로 변경 — 혼합 상자는 내용물 트리까지 표시. box_plan 이 없는 예전 출고는 기존 합계 표시로 폴백 - 출고 보기(view.html) ③ 목록도 동일하게 box_plan 기준 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
29 lines
1.4 KiB
SQL
29 lines
1.4 KiB
SQL
-- =====================================================================
|
|
-- cupang_db 마이그레이션 005 — 출고 묶음에 박스 구성(box_plan) 보관
|
|
-- =====================================================================
|
|
-- 사유: 확정 시점의 박스 구성(제품별 박스 / 자투리 혼합 박스의 내용물과
|
|
-- 고른 상자 종류)을 그대로 보여주기 위함. 라인(제품·수량)만으로는
|
|
-- "어느 혼합 상자에 무엇이 몇 개" 들어갔는지 복원할 수 없다.
|
|
--
|
|
-- 형식(JSONB 배열):
|
|
-- [{"kind":"product","name":"미라네 1호 세트","product_code":"MS-1001",
|
|
-- "count":2,"units":8,"quantity":16},
|
|
-- {"kind":"mix","name":"6호상자 혼합 #1","box_type":"6호상자",
|
|
-- "count":1,"units":7,"quantity":7,
|
|
-- "items":[{"product_name":"미라클백 6.0L","quantity":6}, ...]}]
|
|
--
|
|
-- 멱등: ADD COLUMN IF NOT EXISTS. 기존 행은 빈 배열([])이 되며,
|
|
-- 그 경우 화면은 예전처럼 라인 기준으로 표시한다.
|
|
--
|
|
-- 실행:
|
|
-- docker exec -i postgres-db psql -U postgres -d cupang_db < /opt/www/main/scripts/sql/cupang_db_005_shipment_box_plan.sql
|
|
-- =====================================================================
|
|
|
|
\set ON_ERROR_STOP on
|
|
\connect cupang_db
|
|
|
|
ALTER TABLE cupang_shipments
|
|
ADD COLUMN IF NOT EXISTS box_plan JSONB NOT NULL DEFAULT '[]'::jsonb;
|
|
|
|
SELECT 'cupang_db 005 done' AS status;
|