第一版完成

This commit is contained in:
2025-07-29 12:45:07 +08:00
commit 7fd39fb409
83 changed files with 8717 additions and 0 deletions

188
README_NEW.md Normal file
View File

@@ -0,0 +1,188 @@
# CMS API 2.0 - 新数据库结构版本
## 🎉 项目概述
基于新数据库结构重新开发的企业级CMS API系统采用GoFrame v2.6.4框架支持完整的RBAC权限管理内容管理产品管理等功能
## 🚀 主要特性
### 已完成功能
- **规范化数据库设计**统一的表结构和命名规范
- **RBAC权限系统**用户-角色-权限完整模型
- **JWT认证**安全的Token认证机制
- **用户管理**完整的用户CRUD操作
- **中间件支持**CORS认证响应处理
- **企业官网功能**产品服务案例团队管理
### 🔄 数据库结构优势
- **用户管理模块**统一用户表 + RBAC权限系统
- **内容管理模块**文章页面分类标签媒体文件
- **企业官网模块**产品服务案例团队询价友情链接
- **系统管理模块**配置管理操作日志
## 📋 快速开始
### 1. 数据库初始化
```bash
# 执行数据库初始化脚本
mysql -u root -p < database_design_new.sql
```
### 2. 启动服务器
```bash
# 使用启动脚本
./start_new_server.ps1
# 或手动启动
go mod tidy
go run main_new.go
```
### 3. 测试API
```bash
# 运行测试脚本
./test_new_api.ps1
```
## 🔧 配置说明
### 数据库配置 (config/config.yaml)
```yaml
database:
default:
host: "127.0.0.1"
port: "3306"
user: "root"
pass: "root"
name: "cc_cms_gf" # 数据库名称
type: "mysql"
```
### JWT配置
```yaml
jwt:
signingKey: "cms_jwt_signing_key_2024"
expire: 7200 # 2小时
```
## 📡 API接口
### 公开接口
- `GET /` - 服务状态检查
- `GET /test/db` - 数据库连接测试
- `POST /api/public/login` - 用户登录
- `GET /api/public/configs` - 获取公开配置
### 用户接口需要认证
- `GET /api/user/profile` - 获取用户信息
- `PUT /api/user/profile` - 更新用户信息
- `POST /api/user/change-password` - 修改密码
- `POST /api/user/logout` - 用户登出
### 管理员接口需要认证
- `GET /api/admin/users` - 用户列表
- `POST /api/admin/users` - 创建用户
- `GET /api/admin/users/:id` - 用户详情
- `PUT /api/admin/users/:id` - 更新用户
- `DELETE /api/admin/users/:id` - 删除用户
## 🗄 数据库表结构
### 核心表
- `users` - 用户表统一管理
- `roles` - 角色表
- `permissions` - 权限表
- `user_roles` - 用户角色关联
- `role_permissions` - 角色权限关联
### 内容管理
- `categories` - 分类表
- `tags` - 标签表
- `articles` - 文章表
- `pages` - 页面表
- `media_files` - 媒体文件表
### 企业官网
- `products` - 产品表
- `services` - 服务表
- `cases` - 案例表
- `team_members` - 团队成员表
- `inquiries` - 客户询价表
- `links` - 友情链接表
### 系统管理
- `system_configs` - 系统配置表
- `operation_logs` - 操作日志表
## 🔐 默认账号
- **用户名**: admin
- **密码**: admin123
- **角色**: 超级管理员
## 📁 项目结构
```
cms-api/
├── config/ # 配置文件
├── internal/
│ ├── controller/ # 控制器层
│ ├── service/ # 服务层
│ ├── dao/ # 数据访问层
│ ├── model/ # 数据模型
│ └── middleware/ # 中间件
├── database_design_new.sql # 数据库初始化脚本
├── main_new.go # 主程序入口
├── start_new_server.ps1 # 启动脚本
├── test_new_api.ps1 # 测试脚本
└── README_NEW.md # 项目说明
```
## 🔄 版本对比
| 功能 | 旧版本 | 新版本 |
|------|--------|--------|
| 数据库设计 | 不规范表结构混乱 | 规范化设计统一命名 |
| 用户管理 | 分离的users和admins表 | 统一的users表 |
| 权限系统 | 简单的JSON字符串 | 完整的RBAC模型 |
| 企业功能 | 缺失 | 完整的企业官网功能 |
| 扩展性 | | 高度可扩展 |
## 🚧 待开发功能
- [ ] 文章管理API
- [ ] 产品管理API
- [ ] 服务管理API
- [ ] 案例管理API
- [ ] 系统配置API
- [ ] 文件上传功能
- [ ] 邮件通知功能
## 🐛 问题排查
### 常见问题
1. **数据库连接失败**
- 检查MySQL服务是否启动
- 确认数据库配置正确
- 确保数据库cc_cms_gf已创建
2. **Token认证失败**
- 检查JWT配置
- 确认Token格式正确
- 验证用户状态是否正常
3. **权限不足**
- 检查用户角色分配
- 确认权限配置正确
## 📞 技术支持
如有问题请检查
1. 数据库是否正确初始化
2. 配置文件是否正确
3. 依赖是否完整安装
4. 服务器端口是否被占用
---
**CMS API 2.0** - 企业级内容管理系统后端API