Skip to content

Lược đồ Cơ sở dữ liệu (Database Schema)

Thông tin nhanh

  • Engine: Neon (Serverless PostgreSQL)
  • Mô hình: Multi-Tenant Single-DB — tables gắn tenant_id hoặc org_id
  • Migrations: 30+ files trong schema/ (001-030)
  • Connector: @neondatabase/serverless (HTTP/WebSocket)

Xem thêm: Kiến trúc · Affiliate System · Catalog System

Sơ đồ ERD — Core CRM

Sơ đồ ERD — Affiliate System

Sơ đồ ERD — Catalog System

Danh sách Migrations (30 files)

CRM Core (001-009)

FileMô tả
001_init.sqladmin_users, tenants, customers, services, bookings, reviews
002_payments.sqlpayments, bank_accounts
003_minicrm.sqlleads, activities, UTM tracking
004_queue_upgrade.sqlqueue tickets, room config
005_unified_flow.sqlUnified booking-lead flow
006_spa_tenant.sqlMulti-tenant RBAC
007_lead_integration.sqlAPI keys, lead tracking fields
008_call_system.sqlcall_logs, call_scripts
009_booking_enhancements.sqlBooking status enhancements

Seed Data (010-018)

FileNgành
010_seed_call_scripts.sqlKịch bản gọi điện mẫu
011-015_seed_*.sqldental, nail, hair, beauty, gym
016_seed_pet.sqlpet shop
017_seed_clinic_data.sqlclinic
018_seed_spa_data.sqlspa

Auth & Platform (016-025)

FileMô tả
016_multi_org_auth.sqlorganizations, users, multi-org
017_advanced_auth.sqlGoogle OAuth, OTP, invitations
019_public_pages.sqlPublic pages
019_seed_saleagent_org.sqlSaleHay org seed
020_agent_integration.sqlagent_tokens, webhook_subscriptions, delivery_log
021_billing.sqlBilling & subscription tables
022_einvoice.sqlE-invoice (hoá đơn điện tử)
023_tax_reports.sqlTax reporting tables
024_audit_trail.sqlAudit trail system
025_platform_admin.sqlPlatform admin tables

Affiliate (026-029)

FileMô tả
026_affiliate.sqlaffiliates, aff_campaigns, aff_links, aff_clicks, aff_referrals, aff_commissions, aff_payouts
027_affiliate_profile.sqlAffiliate profile enhancements (CCCD, DOB, address)
028_affiliate_attribution.sqlLast-touch attribution model
029_org_affiliates.sqlORG-level affiliates, payout batches, payout items

Catalog (030)

FileMô tả
030_catalog_system.sqlservice_categories, products, service_packages, package_items, price_history + backfill

TIP

Chạy migrations: node run-migration.mjs — script đọc và execute tuần tự mỗi file .sql trong schema/.

Multi-Tenant Model

Hệ thống dùng Single-DB Multi-Tenant — mọi query filter theo tenant_id:

LevelScopeTables
PlatformToàn hệ thốngusers, organizations, affiliates
OrganizationMỗi doanh nghiệporg settings, billing, subscriptions
TenantMỗi chi nhánhcustomers, leads, bookings, services, products

SaleHay CRM Documentation