Files
geminiWX/BACKEND_API_DOC.md
2025-12-12 17:26:20 +08:00

4.0 KiB
Raw Blame History

后端接口文档 (Backend API Documentation)

1. 概述 (Overview)

本接口文档描述了系统的后端API接口主要包含 CRM小程序业务模块和 System系统管理模块。

  • 基础路径 (Base URL): http://localhost:8000/api (开发环境)
  • 认证方式 (Authentication):
    • 管理后台JWT (JSON Web Token)。Header: Authorization: Bearer <token>
    • 小程序自定义Token。Header: Authorization: Bearer <token> (登录后获取)

2. 通用响应格式 (Common Response Format)

接口通常返回 JSON 格式数据,结构如下:

{
  "code": 200,      // 状态码200 表示成功
  "msg": "success", // 提示信息
  "data": { ... }   // 业务数据
}

3. CRM 模块 (Mini Program & Business)

该模块主要用于微信小程序业务及后台对业务数据的管理。 路径前缀:/api/

3.1 用户认证 (Authentication)

接口路径 方法 描述 参数示例
/auth/login/ POST 小程序登录换取Token { "code": "js_code" }

3.2 用户信息 (User Profile)

接口路径 方法 描述 参数/说明
/user/ GET 获取当前用户信息 Header需带Token
/user/phone/ POST 更新/绑定手机号 { "code": "phone_code" }
/user-coupons/ GET 获取当前用户的优惠券
/user-projects/ GET 获取当前用户的项目
/user-honors/ GET 获取当前用户的荣誉

3.3 业务资源 (Resources)

支持标准的 CRUD 操作。

资源名称 路径 方法 描述
项目 (Projects) /projects/ GET, POST, PUT, DELETE 学位项目、活动等
分类 (Categories) /categories/ GET, POST, PUT, DELETE 项目分类
教师 (Teachers) /teachers/ GET, POST, PUT, DELETE 师资力量
教学中心 (Centers) /teaching-centers/ GET, POST, PUT, DELETE 教学点
优惠券 (Coupons) /coupons/ GET, POST, PUT, DELETE 优惠券定义
可领优惠券 /available-coupons/ GET 获取可领取的优惠券列表
轮播图 (Banners) /banners/ GET, POST, PUT, DELETE 首页轮播图
学员 (Students) /students/ GET, POST, PUT, DELETE 学员信息管理
学员项目 /student-projects/ GET, POST, PUT, DELETE 学员报名的项目
学员优惠券 /student-coupons/ GET, POST, PUT, DELETE 学员持有的优惠券
学员荣誉 /student-honors/ GET, POST, PUT, DELETE 学员获得的荣誉
精彩展示 /student-showcases/ GET, POST, PUT, DELETE 视频或图片展示
通知 (Notifications) /notifications/ GET, POST, PUT, DELETE 系统通知

3.4 仪表盘 (Dashboard)

接口路径 方法 描述
/dashboard/stats/ GET 获取后台首页统计数据

4. System 模块 (System Management)

该模块用于后台系统权限、用户及配置管理。 路径前缀:/api/system/

资源名称 路径 方法 描述
系统用户 /user/ GET, POST, PUT, DELETE 后台管理员
角色 /role/ GET, POST, PUT, DELETE 角色与权限组
权限 /permission/ GET, POST, PUT, DELETE 菜单及按钮权限
组织架构 /organization/ GET, POST, PUT, DELETE 部门管理
岗位 /position/ GET, POST, PUT, DELETE 岗位管理
字典 /dict/ GET, POST, PUT, DELETE 数据字典
文件 /file/ POST, DELETE 文件上传与管理

5. 使用示例 (Usage Examples)

获取项目列表 (Get Projects)

Request:

GET /api/projects/?page=1&size=10 HTTP/1.1
Authorization: Bearer <your_token>

Response:

{
    "count": 100,
    "next": "...",
    "previous": null,
    "results": [
        { "id": 1, "title": "MBA项目", ... }
    ]
}