✨ 주요 변경사항: - 단일 docker-compose.yml로 통합 (로컬/시놀로지 환경 지원) - 시놀로지 볼륨 매핑 설정 (volume1: 이미지, volume3: 데이터) - 통합 배포 가이드 및 자동 배포 스크립트 추가 - 완전한 Memos 스타일 워크플로우 구현 🎯 새로운 기능: - 📝 메모 작성 (upload.html) - 이미지 업로드 지원 - 📥 수신함 (inbox.html) - 메모 편집 및 Todo/보드 변환 - ✅ Todo 목록 (todo-list.html) - 오늘 할 일 관리 - 📋 보드 (board.html) - 프로젝트 관리, 접기/펼치기, 이미지 지원 - 📚 아카이브 (archive.html) - 완료된 보드 보관 - 🔐 초기 설정 화면 - 관리자 계정 생성 🔧 기술적 개선: - 이미지 업로드/편집 완전 지원 - 반응형 디자인 및 모바일 최적화 - 보드 완료 후 자동 숨김 처리 - 메모 편집 시 제목 필드 제거 - 테스트 로그인 버튼 제거 (프로덕션 준비) - 과거 코드 정리 (TodoService, CalendarSyncService 등) 📦 배포 관련: - env.synology.example - 시놀로지 환경 설정 템플릿 - SYNOLOGY_DEPLOYMENT_GUIDE.md - 상세한 배포 가이드 - deploy-synology.sh - 원클릭 자동 배포 스크립트 - Nginx 정적 파일 서빙 및 이미지 프록시 설정 🗑️ 정리된 파일: - 사용하지 않는 HTML 페이지들 (dashboard, calendar, checklist 등) - 복잡한 통합 서비스들 (integrations 폴더) - 중복된 시놀로지 설정 파일들
39 lines
1.6 KiB
SQL
39 lines
1.6 KiB
SQL
-- 새로운 워크플로우에 맞게 DB 구조 최적화
|
|
|
|
-- 1. due_date를 start_date로 변경
|
|
ALTER TABLE todos RENAME COLUMN due_date TO start_date;
|
|
|
|
-- 2. tags 컬럼 제거 (사용하지 않음)
|
|
ALTER TABLE todos DROP COLUMN IF EXISTS tags;
|
|
|
|
-- 3. category 기본값 변경 및 기존 데이터 정리
|
|
-- 기존 'checklist' 카테고리를 'memo'로 변경
|
|
UPDATE todos SET category = 'memo' WHERE category = 'checklist';
|
|
|
|
-- 기존 'calendar' 카테고리를 'todo'로 변경
|
|
UPDATE todos SET category = 'todo' WHERE category = 'calendar';
|
|
|
|
-- 4. title을 nullable로 변경 (메모의 경우 선택사항)
|
|
ALTER TABLE todos ALTER COLUMN title DROP NOT NULL;
|
|
|
|
-- 5. description을 NOT NULL로 변경 (내용은 필수)
|
|
UPDATE todos SET description = COALESCE(title, '내용 없음') WHERE description IS NULL OR description = '';
|
|
ALTER TABLE todos ALTER COLUMN description SET NOT NULL;
|
|
|
|
-- 6. category 기본값을 'memo'로 설정
|
|
ALTER TABLE todos ALTER COLUMN category SET DEFAULT 'memo';
|
|
|
|
-- 7. 불필요한 인덱스 정리 및 새로운 인덱스 추가
|
|
-- 기존 due_date 인덱스 제거 (컬럼명이 변경됨)
|
|
DROP INDEX IF EXISTS idx_todos_due_date;
|
|
|
|
-- 새로운 인덱스 생성
|
|
CREATE INDEX IF NOT EXISTS idx_todos_start_date ON todos(start_date);
|
|
CREATE INDEX IF NOT EXISTS idx_todos_category_status ON todos(category, status);
|
|
CREATE INDEX IF NOT EXISTS idx_todos_user_category ON todos(user_id, category);
|
|
|
|
-- 8. 성능 최적화를 위한 복합 인덱스
|
|
CREATE INDEX IF NOT EXISTS idx_todos_workflow ON todos(user_id, category, status, start_date);
|
|
|
|
COMMIT;
|