Skip to content

Repository files navigation

HUIZHI ChargeOS Mini - API 文档

本文档定义了前端页面所需的数据接口,旨在将前端硬编码(Hardcoded)的展示数据替换为后端动态配置数据。

1. 通用响应格式

所有接口均遵循统一的响应结构:

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

2. 首页 (Home)

2.1 获取快捷入口列表

用于渲染首页顶部的快捷功能导航(支持轮播分页)。

  • 接口地址: /home/shortcuts
  • 请求方式: GET
  • 响应示例:
{
  "code": 200,
  "data": [
    {
      "id": 1,
      "name": "地图找车",
      "icon": "location-o",
      "actionUrl": "/pages/map/map",
      "sort": 10
    },
    {
      "id": 2,
      "name": "搜停车点",
      "icon": "flag-o",
      "actionUrl": "/pages/map/parking",
      "sort": 20
    }
    // ... 更多数据
  ]
}

2.2 获取营销活动卡片

用于渲染首页“购卡骑车更划算”区域的优惠卡片。

  • 接口地址: /home/promotions
  • 请求方式: GET
  • 响应示例:
{
  "code": 200,
  "data": {
    "title": "购卡骑车更划算",
    "moreUrl": "/pages/card/list",
    "cards": [
      {
        "id": 101,
        "title": "单车30天卡起步0.99元",
        "subTitle": "起步只要0.99元",
        "subTitleColor": "#FF5252",
        "price": 0.1,
        "originalPrice": 45.0,
        "unit": "",
        "btnText": "去购买",
        "actionUrl": "/pages/package/buy?id=101"
      },
      {
        "id": 102,
        "title": "单车7天畅骑卡",
        "subTitle": "低至0.98元/天",
        "subTitleColor": "#FF5252",
        "price": 6.8,
        "originalPrice": 15.0,
        "unit": "",
        "btnText": "去购买",
        "actionUrl": "/pages/package/buy?id=102"
      }
    ]
  }
}

2.3 获取底部运营位

用于渲染首页底部的“年度报告”、“骑行规范”等运营卡片。

  • 接口地址: /home/bottom-cards
  • 请求方式: GET
  • 响应示例:
{
  "code": 200,
  "data": [
    {
      "id": 1,
      "title": "2025年度报告",
      "desc": "解锁你的骑行关键词",
      "btnText": "去查看",
      "icon": "medal-o",
      "bgColor": "#FFD54F", // 背景色或图片类名
      "actionUrl": "/pages/report/2025"
    },
    {
      "id": 2,
      "title": "骑行规范早知道",
      "desc": "避免违停费",
      "btnText": "去查看",
      "icon": "orders-o",
      "bgColor": "#4FC3F7",
      "actionUrl": "/pages/guide/rules"
    }
  ]
}

3. 车辆与地图 (Vehicle & Map)

3.1 获取附近车辆

(已存在接口,补充文档)

  • 接口地址: /charging/getNearbyVehicles
  • 请求方式: POST
  • 请求参数:
    {
      "lat": 39.9045035, // 纬度
      "lng": 116.408788, // 经度
      "distance": 5000   // 搜索半径(米)
    }
  • 响应示例:
    {
      "code": 200,
      "data": {
        "records": [
          {
            "vehicleId": "V8888",
            "latitude": 39.905,
            "longitude": 116.409,
            "battery": 80
          }
        ]
      }
    }

4. 个人中心 (User)

4.1 获取用户资产概览

用于个人中心展示余额、优惠券数量、套餐卡数量等。

  • 接口地址: /user/assets
  • 请求方式: GET
  • 响应示例:
{
  "code": 200,
  "data": {
    "balance": 12.50,      // 钱包余额
    "couponCount": 3,      // 优惠券张数
    "packageCount": 1,     // 骑行套餐数
    "points": 500          // 积分
  }
}

4.2 获取用户骑行统计

用于个人中心顶部展示的累计数据。

  • 接口地址: /user/stats
  • 请求方式: GET
  • 响应示例:
{
  "code": 200,
  "data": {
    "totalDistance": 149.5,   // 骑行里程 (km)
    "totalCalories": 8865.8,  // 消耗热量 (kcal)
    "carbonSaved": 7.6,       // 减碳贡献 (kg)
    "totalRides": 58          // 总骑行次数
  }
}

4.3 获取最近订单

用于个人中心“进行中”或“最近完成”的订单展示。

  • 接口地址: /order/recent
  • 请求方式: GET
  • 响应示例:
{
  "code": 200,
  "data": {
    "orderId": "20260120102038",
    "status": 1, // 1: 进行中, 2: 已完成
    "statusText": "骑行中",
    "startTime": "2026-01-20 10:20:38",
    "duration": "15分钟",
    "currentCost": 2.50,
    "vehicleNo": "888123"
  }
}

4.4 微信手机号登录

用于个人中心点击“登录/注册”时,通过微信授权获取手机号进行登录。

  • 接口地址: /auth/wechat-login
  • 请求方式: POST
  • 请求参数:
    {
      "code": "wechat_auth_code_xyz123" // 微信 getPhoneNumber 返回的 code
    }
  • 响应示例:
    {
      "code": 200,
      "data": {
        "token": "user_token_abc123",
        "phone": "138****8888",
        "userInfo": {
          "id": 1001,
          "nickname": "Wechat User"
        }
      }
    }

5. 骑行卡 (Riding Cards)

5.1 获取骑行卡列表

用于“优惠购卡”页面展示可购买的骑行卡列表。

  • 接口地址: /card/list
  • 请求方式: GET
  • 响应示例:
{
  "code": 200,
  "data": {
    "totalSavings": 38.0, // 累计节省金额
    "hotCards": [         // 热门推荐
      {
        "id": 101,
        "name": "单车7天畅骑卡",
        "desc": "每单60分钟内免费 | 多区域可用 >",
        "tag": "低至0.98元/天",
        "price": 6.8,
        "originalPrice": 15.0
      }
    ],
    "moreCards": [ ... ]
  }
}

6. 车辆报修 (Vehicle Repair)

6.1 获取故障部位列表

用于“发现坏车”页面展示可选的故障类型。

  • 接口地址: /repair/fault-types
  • 请求方式: GET
  • 响应示例:
{
  "code": 200,
  "data": [
    { "id": 1, "name": "车篮", "icon": "bag-o" },
    { "id": 2, "name": "车把", "icon": "wap-nav" },
    // ...
  ]
}

6.2 提交报修

用于提交车辆故障信息。

  • 接口地址: /repair/submit
  • 请求方式: POST
  • 请求参数:
    {
      "bikeNo": "888123",
      "faultIds": [1, 3], // 故障类型ID数组
      "photoUrl": "https://..." // 上传的图片地址
    }
  • 响应示例:
    {
      "code": 200,
      "msg": "提交成功"
    }

7. 计价规则 (Pricing Rules)

7.1 获取计价规则

用于“计价规则”页面展示不同时段(平日/节假日)的收费标准。

  • 接口地址: /rule/pricing
  • 请求方式: GET
  • 响应示例:
{
  "code": 200,
  "data": {
    "city": "广州市",
    "rules": {
      "weekday": {
        "basePrice": 1.8,
        "baseDuration": 15, // 分钟
        "timePrice": 1.0,
        "timeUnit": 15 // 分钟
      },
      "holiday": {
        // ... 节假日规则
      }
    },
    "manageFees": [
      { "name": "运营区外还车调度费", "fee": "10元/单" },
      { "name": "禁停区内还车管理费", "fee": "5~10元/单" }
    ]
  }
}

About

小程序

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages