feat: CRM Phase 1-2 완성 + 시즌 시뮬레이터 + 개인정보처리방침/이용약관
- WBS-CRM-02: 상담 이력 (consultations 테이블 V008, ClientDetail.razor) - WBS-CRM-03: 문의→고객 전환 (V009 client_id FK, InquiryDetail 고객등록 버튼) - WBS-CRM-04: 신고 일정 캘린더 (tax_filings 테이블 V010, TaxFilingList.razor) - WBS-CRM-05: 문의 상태 5단계 확장 (V011, InquiryStatus enum, InquiryList 탭) - WBS-MKT-04: 시즌 시뮬레이터 어드민 페이지 (SeasonSimulator.razor) - WBS-UX-04: 개인정보처리방침 /taxbaik/privacy, 이용약관 /taxbaik/terms - Dashboard.razor 마감 임박 신고 위젯 추가 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,13 @@
|
||||
-- 상담 이력 테이블
|
||||
CREATE TABLE IF NOT EXISTS consultations (
|
||||
id SERIAL PRIMARY KEY,
|
||||
client_id INT NOT NULL REFERENCES clients(id) ON DELETE CASCADE,
|
||||
consultation_date DATE NOT NULL DEFAULT CURRENT_DATE,
|
||||
service_type VARCHAR(50),
|
||||
summary TEXT NOT NULL,
|
||||
result VARCHAR(30), -- consulting, contracted, rejected, pending, completed
|
||||
fee NUMERIC(12,0),
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_consultations_client ON consultations (client_id);
|
||||
@@ -0,0 +1,4 @@
|
||||
-- 문의 → 고객 연결 (문의에서 고객 카드 생성 시 연결)
|
||||
ALTER TABLE inquiries ADD COLUMN IF NOT EXISTS client_id INT REFERENCES clients(id) ON DELETE SET NULL;
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_inquiries_client ON inquiries (client_id);
|
||||
@@ -0,0 +1,15 @@
|
||||
-- 고객별 세금 신고 일정
|
||||
CREATE TABLE IF NOT EXISTS tax_filings (
|
||||
id SERIAL PRIMARY KEY,
|
||||
client_id INT NOT NULL REFERENCES clients(id) ON DELETE CASCADE,
|
||||
filing_type VARCHAR(60) NOT NULL, -- 부가가치세, 종합소득세, 법인세, 원천징수, 종합부동산세, 기타
|
||||
due_date DATE NOT NULL,
|
||||
status VARCHAR(20) NOT NULL DEFAULT 'pending', -- pending, filed, overdue
|
||||
memo TEXT,
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_tax_filings_client ON tax_filings (client_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_tax_filings_due_date ON tax_filings (due_date);
|
||||
CREATE INDEX IF NOT EXISTS idx_tax_filings_status ON tax_filings (status);
|
||||
@@ -0,0 +1,9 @@
|
||||
-- 문의 상태 5단계로 확장 + 처리 메모 컬럼 추가
|
||||
-- 기존: new, contacted, completed
|
||||
-- 신규: new(신규), consulting(상담중), contracted(계약완료), rejected(거절), closed(종결)
|
||||
|
||||
UPDATE inquiries SET status = 'consulting' WHERE status = 'contacted';
|
||||
UPDATE inquiries SET status = 'closed' WHERE status = 'completed';
|
||||
|
||||
ALTER TABLE inquiries ADD COLUMN IF NOT EXISTS admin_memo TEXT;
|
||||
ALTER TABLE inquiries ADD COLUMN IF NOT EXISTS updated_at TIMESTAMPTZ DEFAULT NOW();
|
||||
Reference in New Issue
Block a user