Skip to content

ruiyishao/decor-crm

Repository files navigation

装修行业CRM系统

一个专为装修行业设计的智能CRM系统,集成AI客户分析、跟进管理、项目管理等功能。

🚀 在线演示

✨ 核心功能

1. 客户管理

  • 客户信息增删改查
  • 智能标签分类
  • 客户来源追踪
  • AI意向度评分

2. 跟进记录

  • 多类型跟进方式(电话、微信、面谈、上门)
  • AI智能摘要
  • 情感分析
  • 自动提醒

3. 项目管理

  • 装修项目全生命周期管理
  • 进度跟踪
  • 材料管理
  • 工期管理

4. 合同管理

  • 合同创建与管理
  • 付款计划
  • 合同状态追踪
  • 文件存储

5. 数据分析

  • 销售趋势分析
  • 客户来源分析
  • 转化漏斗
  • 业务指标看板

6. AI助手

  • 智能客户分析
  • 自动跟进建议
  • 对话内容智能摘要
  • 客户画像生成

🛠️ 技术栈

  • 前端: Next.js 14 + TypeScript + Tailwind CSS + shadcn/ui
  • 后端: Next.js API Routes
  • 数据库: Supabase (PostgreSQL)
  • AI: OpenAI API
  • 部署: Vercel

📦 安装与部署

1. 克隆项目

git clone https://github.com/yourusername/decor-crm.git
cd decor-crm

2. 安装依赖

npm install

3. 环境变量配置

复制 .env.example.env.local 并填写以下配置:

# Supabase Configuration
NEXT_PUBLIC_SUPABASE_URL=https://your-project.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=your-anon-key
SUPABASE_SERVICE_ROLE_KEY=your-service-role-key

# OpenAI API Key for AI Features
OPENAI_API_KEY=sk-your-openai-api-key

# App Configuration
NEXT_PUBLIC_APP_NAME=装修CRM系统
NEXT_PUBLIC_APP_URL=http://localhost:3000

4. 初始化数据库

  1. Supabase 创建新项目
  2. 打开 SQL Editor
  3. 执行 supabase/migrations/001_initial_schema.sql 文件中的SQL语句

5. 本地开发

npm run dev

访问 http://localhost:3000

6. 部署到 Vercel

# 安装 Vercel CLI
npm i -g vercel

# 登录并部署
vercel login
vercel --prod

📁 项目结构

decor-crm/
├── app/                          # Next.js 应用路由
│   ├── (dashboard)/              # 仪表盘路由组
│   │   ├── ai-assistant/         # AI助手页面
│   │   ├── analytics/            # 数据分析页面
│   │   ├── contracts/            # 合同管理页面
│   │   ├── customers/            # 客户管理页面
│   │   ├── followups/            # 跟进记录页面
│   │   └── projects/             # 项目管理页面
│   ├── api/                      # API路由
│   │   └── ai/                   # AI分析API
│   ├── layout.tsx                # 根布局
│   └── page.tsx                  # 首页
├── components/                   # 组件
│   ├── ai/                       # AI相关组件
│   ├── analytics/                # 数据分析组件
│   ├── contracts/                # 合同组件
│   ├── customers/                # 客户组件
│   ├── dashboard/                # 仪表盘组件
│   ├── followups/                # 跟进组件
│   ├── projects/                 # 项目组件
│   └── ui/                       # UI组件(shadcn)
├── lib/                          # 工具库
│   ├── database.types.ts         # 数据库类型
│   ├── supabase.ts               # Supabase客户端
│   └── utils.ts                  # 工具函数
├── types/                        # TypeScript类型
│   └── index.ts                  # 全局类型
├── supabase/                     # Supabase配置
│   └── migrations/               # 数据库迁移
├── .env.example                  # 环境变量示例
├── next.config.js                # Next.js配置
├── tailwind.config.ts            # Tailwind配置
└── README.md                     # 项目说明

🔑 环境变量说明

变量名 说明 获取方式
NEXT_PUBLIC_SUPABASE_URL Supabase项目URL Supabase Dashboard -> Project Settings -> API
NEXT_PUBLIC_SUPABASE_ANON_KEY Supabase匿名密钥 Supabase Dashboard -> Project Settings -> API
SUPABASE_SERVICE_ROLE_KEY Supabase服务角色密钥 Supabase Dashboard -> Project Settings -> API
OPENAI_API_KEY OpenAI API密钥 OpenAI Platform

🔧 开发指南

添加新页面

  1. app/(dashboard)/ 下创建新目录
  2. 创建 page.tsx 文件
  3. 使用 DashboardLayout 包裹内容

添加新组件

  1. components/ 下创建对应目录
  2. 创建组件文件
  3. 导出组件并在页面中使用

添加API路由

  1. app/api/ 下创建新目录
  2. 创建 route.ts 文件
  3. 导出对应的HTTP方法处理函数

📝 数据库 Schema

客户表 (customers)

  • 基础信息:姓名、电话、邮箱、地址
  • 业务信息:来源、状态、预算、房屋类型、面积
  • AI信息:意向度评分、客户画像

跟进记录表 (follow_ups)

  • 跟进类型、内容
  • AI分析:摘要、情感倾向
  • 后续行动和时间

项目表 (projects)

  • 项目基本信息
  • 进度管理
  • 阶段和材料信息(JSON)

合同表 (contracts)

  • 合同基本信息
  • 付款条款(JSON)
  • 文件存储

🤖 AI功能说明

系统集成了OpenAI API,提供以下智能功能:

  1. 沟通摘要: 自动分析跟进记录,生成简洁摘要
  2. 情感分析: 判断客户沟通的情感倾向
  3. 意向度评分: 根据客户信息评估装修意向
  4. 客户画像: 生成详细的客户偏好和关注点分析
  5. 跟进建议: 提供个性化的跟进策略和话术

🎨 自定义主题

系统使用 Tailwind CSS 和 shadcn/ui,支持自定义主题:

  1. 修改 app/globals.css 中的CSS变量
  2. 更新 tailwind.config.ts 配置
  3. 使用 shadcn CLI 添加新组件

📱 响应式设计

系统采用移动优先的响应式设计:

  • 移动端:侧边栏折叠,优化触摸操作
  • 平板:适配中等屏幕尺寸
  • 桌面端:完整功能展示

🔒 安全建议

  1. 生产环境请启用 Supabase RLS 策略
  2. 定期轮换 API 密钥
  3. 启用 Vercel 的部署保护
  4. 使用环境变量管理敏感信息

🤝 贡献指南

  1. Fork 项目
  2. 创建功能分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 创建 Pull Request

📄 许可证

MIT License - 详见 LICENSE 文件

👨‍💻 作者

🙏 致谢


⭐ 如果这个项目对你有帮助,请给个 Star!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors