chore(cupang): 박스 입수량 박스명을 '쿠팡박스' 로 통일

운영 DB 일괄 변경 스크립트(cupang_box_rules_unify_box_name.sql) 추가.
기존 호수(2호/3호/6호)는 사라지지 않게 memo 뒤로 옮긴다
(예: "피킹비 750원 · 2호").

시드 SQL 2개도 같은 규칙으로 맞춰, 재실행해도 호수 박스명이
되살아나지 않게 했다.

주의: 박스명은 박스 계산의 "자투리 혼합" 그룹 기준이라, 통일 후에는
2호/3호/6호 자투리가 한 박스에 섞여 계산된다(사용자 확인됨).

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-29 02:22:52 +09:00
parent 07f71d1df0
commit 354eebeaac
4 changed files with 145 additions and 38 deletions
@@ -0,0 +1,43 @@
-- ════════════════════════════════════════════════════════════
-- 쿠팡 밀크런 — 박스 입수량 규칙의 박스명을 '쿠팡박스' 로 통일 (cupang_db)
--
-- 실행 전 반드시 백업:
-- docker exec postgres-db pg_dump -U postgres -d cupang_db -t cupang_box_rules \
-- > ~/backup/cupang_box_rules_$(date +%F_%H%M).sql
--
-- 실행:
-- docker exec -i postgres-db psql -U postgres -d cupang_db \
-- < /opt/www/main/scripts/sql/cupang_box_rules_unify_box_name.sql
--
-- 주의: 박스명은 "자투리 혼합 박스" 계산에서 같은 박스끼리만 섞는 기준이다.
-- 통일 후에는 2호/3호/6호 자투리가 한 박스에 섞여 계산된다.
-- 기존 호수(2호/3호/6호)는 없어지지 않게 memo 뒤에 옮겨 적는다.
-- ════════════════════════════════════════════════════════════
BEGIN;
-- 변경 전 상태
SELECT box_name AS "변경전_박스명", count(*) AS "건수"
FROM cupang_box_rules
GROUP BY box_name
ORDER BY box_name;
UPDATE cupang_box_rules
SET memo = btrim(
coalesce(memo, '')
|| CASE WHEN coalesce(memo, '') = '' THEN '' ELSE ' · ' END
|| regexp_replace(box_name, '^쿠팡\s*', '')
),
box_name = '쿠팡박스'
WHERE box_name IS DISTINCT FROM '쿠팡박스';
COMMIT;
-- 변경 후 확인 (박스명이 '쿠팡박스' 한 줄이어야 정상)
SELECT box_name AS "변경후_박스명", count(*) AS "건수"
FROM cupang_box_rules
GROUP BY box_name
ORDER BY box_name;
SELECT product_code, product_name_snapshot, box_name, units_per_box, memo
FROM cupang_box_rules
ORDER BY product_code;