76f43cea9b
Build & Deploy to K8s / build-and-deploy (push) Successful in 4m30s
- application.yml, k8s configmap, docker-compose 4종: SPRING_DATASOURCE_URL path
- provisioning 코드: {prefix}_vexplor → {prefix}_invyone 테넌트 DB 네이밍 규칙
- 프론트 마법사: Step1Basic, Step4Run 미리보기 라벨
- CompanyAccordionRow: 기본 DB 이름 포맷
- 마이그레이션/멀티테넌시 문서 동기화
- Traefik 와일드카드 설정 산출물 보관 (notes/)
비밀번호(vexplor0909!!) 및 역사 기록 문서(INVYONE_CONCEPT,
DDD1542, test-output, dashboard-runtime-fixes) 는 의도적으로 미변경.
2.8 KiB
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 invyone <<'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.create→insertCompanyWithTenant에templates_count파라미터 추가됨 (CompanyProvisioningService.initiate()에서 계산).- 신규:
GET /api/admin/provisioning/companies-stats— 목업 메인 화면 렌더용. 전 필드 + derived 집계 반환.