Files
nl_cms-api/README_NEW.md
2025-07-29 12:45:07 +08:00

4.7 KiB
Raw Permalink Blame History

CMS API 2.0 - 新数据库结构版本

🎉 项目概述

基于新数据库结构重新开发的企业级CMS API系统采用GoFrame v2.6.4框架支持完整的RBAC权限管理、内容管理、产品管理等功能。

🚀 主要特性

已完成功能

  • 规范化数据库设计:统一的表结构和命名规范
  • RBAC权限系统:用户-角色-权限完整模型
  • JWT认证安全的Token认证机制
  • 用户管理完整的用户CRUD操作
  • 中间件支持CORS、认证、响应处理
  • 企业官网功能:产品、服务、案例、团队管理

🔄 数据库结构优势

  • 用户管理模块:统一用户表 + RBAC权限系统
  • 内容管理模块:文章、页面、分类、标签、媒体文件
  • 企业官网模块:产品、服务、案例、团队、询价、友情链接
  • 系统管理模块:配置管理、操作日志

📋 快速开始

1. 数据库初始化

# 执行数据库初始化脚本
mysql -u root -p < database_design_new.sql

2. 启动服务器

# 使用启动脚本
./start_new_server.ps1

# 或手动启动
go mod tidy
go run main_new.go

3. 测试API

# 运行测试脚本
./test_new_api.ps1

🔧 配置说明

数据库配置 (config/config.yaml)

database:
  default:
    host: "127.0.0.1"
    port: "3306"
    user: "root"
    pass: "root"
    name: "cc_cms_gf"  # 数据库名称
    type: "mysql"

JWT配置

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