Files
invyone/db/migrations/RUN_081_MIGRATION.md
T
gbpark 8be7e16e56
Build & Deploy to K8s / build-and-deploy (push) Successful in 4m28s
서브도메인설정
2026-04-24 04:56:40 +09:00

2.8 KiB

081 마이그레이션 — 회사관리 UI 메타 컬럼

작성일: 2026-04-24 작성자: gbpark 관련: Phase 3-B 회사관리 메인 화면(v9 목업) 렌더용 필드 확보

목적

목업 accordion row 에서 표시하는 필드 중 COMPANY_MNG상주해야 하는 정적 필드만 컬럼으로 추가. 런타임 계산되는 필드(users / db_size / spark)는 별도 CompanyStatsService 가 집계.

추가 컬럼

컬럼 타입 기본값 용도
PLAN VARCHAR(20) 'Starter' 과금 플랜 (Starter / Standard / Enterprise). 목업의 PLAN badge
INDUSTRY VARCHAR(50) NULL 업종 (예: 반도체, 제조). 목업 accordion 의 industry
TEMPLATES_COUNT INT 0 프로비저닝 시 복제한 그룹 수(필수 3 + 선택 n). 정적 집계용
DB_QUOTA_GB INT 20 회사별 DB 할당량. db_pct 계산 기준값

목업에 있었지만 컬럼 안 만든 것 (기존 필드 재사용 또는 런타임):

  • owner → 기존 REPRESENTATIVE_NAME 사용
  • brn → 기존 BUSINESS_REGISTRATION_NUMBER 사용
  • created → 기존 CREATED_DATE 사용
  • writer → 기존 WRITER 사용
  • users / active30 / db_size / db_pct / spark → 런타임 집계 (아래 문서 참조)

SQL

-- 081: 회사관리 UI 메타 컬럼 추가
ALTER TABLE COMPANY_MNG
  ADD COLUMN IF NOT EXISTS PLAN             VARCHAR(20) DEFAULT 'Starter',
  ADD COLUMN IF NOT EXISTS INDUSTRY         VARCHAR(50),
  ADD COLUMN IF NOT EXISTS TEMPLATES_COUNT  INT         DEFAULT 0,
  ADD COLUMN IF NOT EXISTS DB_QUOTA_GB      INT         DEFAULT 20;

실행

psql -h 183.99.177.40 -U postgres -d vexplor <<'SQL'
ALTER TABLE COMPANY_MNG
  ADD COLUMN IF NOT EXISTS PLAN             VARCHAR(20) DEFAULT 'Starter',
  ADD COLUMN IF NOT EXISTS INDUSTRY         VARCHAR(50),
  ADD COLUMN IF NOT EXISTS TEMPLATES_COUNT  INT         DEFAULT 0,
  ADD COLUMN IF NOT EXISTS DB_QUOTA_GB      INT         DEFAULT 20;
SQL

확인 쿼리

SELECT column_name, data_type, column_default
FROM information_schema.columns
WHERE table_name = 'company_mng'
  AND column_name IN ('plan', 'industry', 'templates_count', 'db_quota_gb')
ORDER BY column_name;

롤백

ALTER TABLE COMPANY_MNG
  DROP COLUMN IF EXISTS PLAN,
  DROP COLUMN IF EXISTS INDUSTRY,
  DROP COLUMN IF EXISTS TEMPLATES_COUNT,
  DROP COLUMN IF EXISTS DB_QUOTA_GB;

기존 API 영향

  • AdminController.listCompanies (기존 회사관리 CRUD) — 새 컬럼 무시. 회귀 없음.
  • ProvisioningController.createinsertCompanyWithTenanttemplates_count 파라미터 추가됨 (CompanyProvisioningService.initiate() 에서 계산).
  • 신규: GET /api/admin/provisioning/companies-stats — 목업 메인 화면 렌더용. 전 필드 + derived 집계 반환.