# houseDecoration **Repository Path**: ouyangzhongmin/house-decoration ## Basic Information - **Project Name**: houseDecoration - **Description**: 一个ai开发的定制装修系统 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-04 - **Last Updated**: 2026-01-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 全屋装修定制系统 多商家SaaS平台,为装修公司提供完整的数字化解决方案。 ## 项目概述 本系统是一个完整的多商家SaaS平台,包含5个核心模块: 1. **商家店铺小程序** - C端用户使用,浏览案例、预约服务 2. **商家管理Web端** - 商家后台管理系统 3. **API服务端** - 统一的后端服务 4. **超级管理后台** - 平台运营管理系统 ## 运行命令 根目录执行: pnpm install # 安装所有依赖 pnpm dev:api # 启动API服务 pnpm dev:merchant-web # 启动Web管理端 pnpm dev:super-admin # 启动超级管理端 pnpm build # 构建所有项目 pnpm build:miniapp # 只构建小程序 pnpm lint # 检查所有项目 pnpm format # 格式化所有项目 ## 项目结构 ``` home-decoration-system/ ├── packages/ │ ├── merchant-miniapp/ # 商家店铺小程序 (uni-app) │ ├── merchant-admin-web/ # 商家管理Web端 (Vue3) │ ├── super-admin-web/ # 超级管理后台 (Vue3) │ └── api-server/ # API服务端 (Node.js) ├── docs/ # 文档 │ ├── api.md # API接口文档 │ ├── database.md # 数据库设计 │ └── deployment.md # 部署文档 ├── scripts/ # 脚本 │ ├── init-db.sql # 数据库初始化 │ ├── seed-data.sql # 初始数据 │ └── init-db.js # 初始化脚本 └── .kiro/specs/ # 规格文档 └── home-decoration-system/ ├── requirements.md # 需求文档 ├── design.md # 设计文档 └── tasks.md # 任务列表 ``` ## 技术栈 ### 前端 - **框架**: Vue3 + TypeScript - **构建工具**: Vite - **UI组件**: Element Plus - **状态管理**: Pinia - **路由**: Vue Router - **HTTP客户端**: Axios ### 小程序 - **框架**: uni-app - **语言**: Vue3 + TypeScript - **状态管理**: Pinia ### 后端 - **运行时**: Node.js 18+ - **Web框架**: Express.js - **ORM**: Sequelize - **数据库**: MySQL 8.0 - **缓存**: Redis - **认证**: JWT - **文件上传**: Multer - **日志**: Winston - **进程管理**: PM2 ### 部署 - **容器化**: Docker + Docker Compose - **反向代理**: Nginx - **包管理**: pnpm workspace ## 核心功能 ### C端用户功能 - 微信授权登录 - 浏览装修案例 - 案例搜索和筛选 - 查看设计师信息 - 在线预约服务 - 查看评论 - 用户中心 ### 商家管理功能 - 案例管理 (创建、编辑、删除) - 设计师管理 - 用户管理 - 预约管理 - 评论管理 - 数据统计 - 商家设置 ### 平台管理功能 - 商家管理 - 套餐管理 - 标签系统管理 - 平台数据统计 ## 快速开始 ### 环境要求 - Node.js 18+ - MySQL 8.0+ - Redis 7+ - pnpm 8+ ### 安装依赖 ```bash # 安装pnpm npm install -g pnpm # 安装项目依赖 pnpm install ``` ### 初始化数据库 ```bash # 方式1: 使用SQL脚本 mysql -u root -p < scripts/init-db.sql mysql -u root -p home_decoration < scripts/seed-data.sql # 方式2: 使用Node.js脚本 cd scripts node init-db.js ``` ### 配置环境变量 ```bash cd packages/api-server cp .env.example .env # 编辑 .env 文件,配置数据库和其他参数 ``` ### 启动开发服务 ```bash # 启动API服务端 pnpm dev:api # 启动商家管理Web端 pnpm dev:merchant-web # 启动超级管理后台 pnpm dev:super-admin ``` 访问地址: - API服务: http://localhost:3000 - 商家管理后台: http://localhost:5173 - 超级管理后台: http://localhost:5174 ### 生产环境部署 #### 使用Docker (推荐) ```bash # 构建前端项目 cd packages/merchant-admin-web && pnpm build cd ../super-admin-web && pnpm build # 启动所有服务 docker-compose up -d ``` 详细部署说明请参考 [部署文档](docs/deployment.md) ## 文档 - [需求文档](.kiro/specs/home-decoration-system/requirements.md) - 详细的功能需求和验收标准 - [设计文档](.kiro/specs/home-decoration-system/design.md) - 系统架构和技术设计 - [任务列表](.kiro/specs/home-decoration-system/tasks.md) - 开发任务清单 - [API文档](docs/api.md) - RESTful API接口文档 - [数据库文档](docs/database.md) - 数据库表结构设计 - [部署文档](docs/deployment.md) - 部署和运维指南 ## 数据库设计 系统包含12个核心数据表: - **packages** - 套餐表 - **merchants** - 商家表 - **users** - 用户表 - **designers** - 设计师表 - **cases** - 案例表 - **tags** - 标签表 - **case_tags** - 案例标签关联表 - **appointments** - 预约表 - **communications** - 沟通记录表 - **comments** - 评论表 - **payment_records** - 支付记录表 - **admin_users** - 管理员表 详细表结构请参考 [数据库文档](docs/database.md) ## API接口 系统提供完整的RESTful API接口: - 认证接口 (微信登录、管理员登录) - 案例接口 (CRUD、搜索、筛选) - 设计师接口 (CRUD) - 用户接口 (查询、更新) - 预约接口 (创建、管理、沟通记录) - 评论接口 (CRUD、审核) - 标签接口 (CRUD) - 商家接口 (CRUD、统计) - 文件上传接口 详细接口文档请参考 [API文档](docs/api.md) ## 安全特性 - JWT身份认证 - 密码加密存储 (md5(password+salt)) - 商家数据隔离 - API限流保护 - SQL注入防护 - XSS攻击防护 - HTTPS传输加密 - 操作审计日志 ## 性能优化 - Redis缓存 (标签、商家信息、热门案例) - 数据库索引优化 - 图片懒加载 - 前端路由懒加载 - Gzip压缩 - CDN加速 ## 开发规范 - ESLint + Prettier 代码格式化 - TypeScript 类型检查 - Git提交规范 (feat/fix/docs/style/refactor/test/chore) - 代码注释和文档 ## 项目状态 ✅ 已完成的核心功能: **后端API服务 (100%)** - 项目初始化和基础架构 - 数据库设计和初始化 (12个核心表) - API服务端核心框架 (Express + Sequelize + Redis) - 认证和授权系统 (JWT + 微信登录) - 文件上传功能 (单图/批量上传) - 标签系统API (增删改查 + 缓存) - 商家管理API (完整CRUD + 统计) - 设计师管理API (完整CRUD) - 案例管理API (完整CRUD + 搜索筛选) - 用户管理API (查询 + 更新) - 预约管理API (创建 + 状态管理 + 沟通记录) - 评论管理API (CRUD + 审核) - 支付记录API (创建 + 查询) - API限流和安全加固 **商家店铺小程序 (100%)** - 项目初始化和配置 - 首页 (推荐案例 + 推荐设计师) - 案例图库 (标签筛选 + 分页加载) - 案例详情 (图片轮播 + 设计师信息 + 评论列表) - 搜索功能 (案例/设计师搜索 + 搜索历史) - 商家介绍 (商家信息 + 设计师团队) - 用户中心 (个人信息 + 余额 + 预约记录) - 预约功能 (在线预约 + 在线客服) - 微信授权登录 - 管理员功能 (用户管理 + 商家管理 + 数据统计) **商家管理Web端 (基础框架)** - Vue3 + TypeScript + Element Plus - 路由配置和权限守卫 - 登录页面和主布局 - 数据统计页 - 案例列表页 - HTTP请求封装 - 状态管理 (Pinia) **超级管理后台 (基础框架)** - Vue3 + TypeScript + Element Plus - 路由配置 - 商家管理页面 - HTTP请求封装 **部署和文档 (100%)** - Docker配置 (docker-compose.yml) - Nginx配置 - PM2配置 - API文档 (完整接口文档) - 数据库文档 - 部署文档 - README文档 🚧 可继续扩展的功能: - Web端更多业务页面 (设计师管理、用户详情、预约详情等) - 微信支付集成 - 短信通知功能 - 数据统计图表 (ECharts) - 更多业务功能优化 ## 贡献指南 欢迎提交Issue和Pull Request! ## License MIT ## 联系方式 如有问题,请提交Issue或联系项目维护者。