From c295b492b81bdfea9d73d7968fe437b98af5e658 Mon Sep 17 00:00:00 2001 From: pro Date: Fri, 30 Jan 2026 15:05:49 +0900 Subject: [PATCH] =?UTF-8?q?docs:sales=5Fscenario=5Fchecklists=20=ED=85=8C?= =?UTF-8?q?=EC=9D=B4=EB=B8=94=20=EC=8A=A4=ED=82=A4=EB=A7=88=20=EB=8F=99?= =?UTF-8?q?=EA=B8=B0=ED=99=94=20=EC=9D=B4=EB=A0=A5=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.5 --- 서버작업이력.md | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/서버작업이력.md b/서버작업이력.md index ab43c722..5b0a65f2 100644 --- a/서버작업이력.md +++ b/서버작업이력.md @@ -238,6 +238,33 @@ # lrwxrwxrwx 1 pro develop 39 Jan 30 14:35 tenant-storage -> /home/webservice/sh --- +### 10. sales_scenario_checklists 테이블 스키마 동기화 + +**문제**: 로컬과 서버의 테이블 구조 불일치 (컬럼 및 인덱스 누락) + +**추가된 컬럼**: +```sql +ALTER TABLE sales_scenario_checklists ADD COLUMN scenario_type ENUM('sales','manager') NOT NULL DEFAULT 'sales' COMMENT '시나리오 유형' AFTER tenant_id; +ALTER TABLE sales_scenario_checklists ADD COLUMN checkpoint_id VARCHAR(50) DEFAULT NULL COMMENT '체크포인트 ID' AFTER step_id; +ALTER TABLE sales_scenario_checklists ADD COLUMN checked_at TIMESTAMP NULL DEFAULT NULL COMMENT '체크 일시' AFTER is_checked; +ALTER TABLE sales_scenario_checklists ADD COLUMN checked_by BIGINT UNSIGNED DEFAULT NULL COMMENT '체크한 사용자 ID' AFTER checked_at; +ALTER TABLE sales_scenario_checklists ADD COLUMN memo TEXT COMMENT '메모' AFTER checked_by; +``` + +**추가된 인덱스**: +```sql +ALTER TABLE sales_scenario_checklists ADD UNIQUE KEY sales_scenario_checkpoint_unique (tenant_id, scenario_type, step_id, checkpoint_id); +ALTER TABLE sales_scenario_checklists ADD INDEX sales_scenario_checklists_tenant_id_scenario_type_index (tenant_id, scenario_type); +``` + +**작업 방법** (tinker 사용): +```bash +cd /home/webservice/mng +php artisan tinker --execute="DB::statement('ALTER TABLE ...');" +``` + +--- + ## 참고: Docker vs 서버 경로 차이 | 항목 | Docker (로컬) | 서버 |