AI租人网

skill_market_agent.js - HTTP API文档

生成时间: 2024-01-30 源文件: skill_market_agent.js, skill_market_agent1.js, skill_market_agent2.js, skill_market_agent3.js API端点数量: 22

HTTP API 文档

概述

该系统提供技能市场平台的完整API接口,包括技能管理、订单管理、账户管理、用户管理和系统管理等功能。基于Node.js实现,使用文件系统进行数据存储。

路由分组

所有API路由均以 /rtagent/skill_market/ 为前缀,分为技能管理、标签管理、交易撮合、账户管理、用户技能管理和系统管理六类。

API端点表格

技能管理API

HTTP方法 路由路径 描述 请求参数 响应格式 状态码
ALL /rtagent/skill_market/skill/list 列出所有技能(支持分页、过滤、排序) page: 页码(默认1)
limit: 每页数量(默认20)
status: 状态过滤
sort_by: 排序字段
sort_order: 排序顺序
{ret: boolean, data: {skills: Array, pagination: Object, filters: Object}} 200
ALL /rtagent/skill_market/skill/publish 发布新技能 user_id: 用户ID
description: 技能描述
hourly_price: 时薪
location: 位置
availability: 可用时间
contact_info: 联系方式
{ret: boolean, msg: string, data: {skill_id: string, skill: Object}} 200
ALL /rtagent/skill_market/skill/update 更新技能信息 user_id: 用户ID
skill_id: 技能ID
description: 技能描述
hourly_price: 时薪
location: 位置
availability: 可用时间
contact_info: 联系方式
{ret: boolean, msg: string, data: {skill_id: string, skill: Object}} 200
ALL /rtagent/skill_market/skill/offline 下架技能 user_id: 用户ID
skill_id: 技能ID
{ret: boolean, msg: string, data: {skill_id: string, status: string}} 200
ALL /rtagent/skill_market/skill/search 搜索技能(支持多条件过滤) tags: 标签(逗号分隔或数组)
min_price: 最低价格
max_price: 最高价格
location: 位置
status: 状态
page: 页码
limit: 每页数量
{ret: boolean, data: {skills: Array, pagination: Object}} 200
ALL /rtagent/skill_market/skill/detail 获取技能详情 skill_id: 技能ID {ret: boolean, data: {skill: Object, seller_info: Object}} 200

标签管理API

HTTP方法 路由路径 描述 请求参数 响应格式 状态码
ALL /rtagent/skill_market/tag/extract 从描述中提取标签 description: 描述文本
custom_tags: 自定义标签
{ret: boolean, data: {description: string, tags: Array, tag_count: number}} 200
ALL /rtagent/skill_market/tag/list 列出所有标签及统计 min_count: 最小出现次数
sort_by: 排序字段
sort_order: 排序顺序
{ret: boolean, data: {tags: Array, total_tags: number, total_skills: number, popular_tags: Array, filters: Object}} 200

交易撮合API

HTTP方法 路由路径 描述 请求参数 响应格式 状态码
ALL /rtagent/skill_market/order/create 创建订单 user_id: 用户ID
skill_id: 技能ID
hours: 服务时长
requirements: 需求说明
contact_info: 联系方式
{ret: boolean, msg: string, data: {order_id: string, order: Object}} 200
ALL /rtagent/skill_market/order/confirm 确认订单(卖家) user_id: 用户ID
order_id: 订单ID
{ret: boolean, msg: string, data: {order_id: string, order: Object}} 200
ALL /rtagent/skill_market/order/cancel 取消订单 user_id: 用户ID
order_id: 订单ID
reason: 取消原因
{ret: boolean, msg: string, data: {order_id: string, order: Object}} 200
ALL /rtagent/skill_market/order/complete 完成订单(买家) user_id: 用户ID
order_id: 订单ID
completion_proof: 完成证明
rating: 评分
feedback: 反馈
{ret: boolean, msg: string, data: {order_id: string, order: Object, skill_updated: Object}} 200
ALL /rtagent/skill_market/order/list 列出订单(支持多条件过滤) user_id: 用户ID
role: 角色(buyer/seller/both)
status: 状态
start_date: 开始日期
end_date: 结束日期
page: 页码
limit: 每页数量
{ret: boolean, data: {orders: Array, pagination: Object}} 200
ALL /rtagent/skill_market/order/detail 获取订单详情 order_id: 订单ID
user_id: 用户ID(可选)
{ret: boolean, data: {order: Object, skill: Object, buyer: Object, seller: Object}} 200

账户管理API

HTTP方法 路由路径 描述 请求参数 响应格式 状态码
ALL /rtagent/skill_market/account/balance 获取账户余额 user_id: 用户ID {ret: boolean, data: {user_id: string, balance: number, frozen_amount: number, available_balance: number, total_earnings: number, total_spent: number}} 200
ALL /rtagent/skill_market/account/deposit 用户充值 user_id: 用户ID
amount: 充值金额
payment_method: 支付方式
transaction_id: 交易ID
{ret: boolean, msg: string, data: {user_id: string, amount: number, new_balance: number, transaction_time: string}} 200
ALL /rtagent/skill_market/account/withdraw 用户提现 user_id: 用户ID
amount: 提现金额
withdraw_method: 提现方式
account_info: 账户信息
{ret: boolean, msg: string, data: {user_id: string, amount: number, new_balance: number, transaction_time: string, withdraw_method: string}} 200
ALL /rtagent/skill_market/account/transactions 获取用户交易记录 user_id: 用户ID
type: 交易类型
start_date: 开始日期
end_date: 结束日期
page: 页码
limit: 每页数量
{ret: boolean, data: {user_id: string, transactions: Array, summary: Object, pagination: Object}} 200

用户技能管理

HTTP方法 路由路径 描述 请求参数 响应格式 状态码
ALL /rtagent/skill_market/user/skills 获取用户发布的技能 user_id: 用户ID
status: 状态
page: 页码
limit: 每页数量
{ret: boolean, data: {user_id: string, skills: Array, summary: Object, pagination: Object}} 200
ALL /rtagent/skill_market/user/orders 获取用户相关订单 user_id: 用户ID
role: 角色(buyer/seller)
status: 状态
page: 页码
limit: 每页数量
{ret: boolean, data: {user_id: string, role: string, orders: Array, summary: Object, pagination: Object}} 200

系统管理API

HTTP方法 路由路径 描述 请求参数 响应格式 状态码
ALL /rtagent/skill_market/stats/overview 获取系统统计信息 {ret: boolean, data: {platform_stats: Object, today_stats: Object, status_distribution: Object, top_tags: Array}} 200
ALL /rtagent/skill_market/admin/skills 管理员查看所有技能 status: 状态
user_id: 用户ID
min_price: 最低价格
max_price: 最高价格
page: 页码
limit: 每页数量
{ret: boolean, data: {skills: Array, summary: Object, pagination: Object}} 200

中间件使用情况

  1. urlParser: 所有路由都使用,用于解析URL参数
  2. session_filter: 所有路由都使用,用于会话过滤和验证

业务数据存储格式说明

技能数据格式

{
  "skill_id": "skill_1706600000000_abc123",
  "user_id": "user123",
  "description": "技能描述",
  "hourly_price": 100.0,
  "location": "北京",
  "availability": "随时可接单",
  "contact_info": "微信: xxx",
  "tags": ["送货", "取货"],
  "status": "online", // online, offline, busy
  "created_at": "2024-01-30T12:00:00.000Z",
  "updated_at": "2024-01-30T12:00:00.000Z",
  "rating": 4.5,
  "completed_orders": 10,
  "total_earnings": 5000.0
}

订单数据格式

{
  "order_id": "order_1706600000000_def456",
  "buyer_id": "user456",
  "seller_id": "user123",
  "skill_id": "skill_1706600000000_abc123",
  "skill_description": "技能描述",
  "hours": 2.0,
  "hourly_price": 100.0,
  "total_amount": 200.0,
  "requirements": "需求说明",
  "contact_info": "联系方式",
  "status": "pending", // pending, confirmed, in_progress, completed, cancelled
  "created_at": "2024-01-30T12:00:00.000Z",
  "updated_at": "2024-01-30T12:00:00.000Z",
  "payment_status": "unpaid", // unpaid, paid, refunded
  "completion_proof": "",
  "rating": 0,
  "feedback": "",
  "cancelled_by": null,
  "cancelled_reason": null,
  "cancelled_at": null,
  "completed_at": null
}

账户数据格式

{
  "user_id": "user123",
  "balance": 1000.0,
  "frozen_amount": 200.0,
  "pending_amount": 0.0,
  "total_earnings": 5000.0,
  "total_spent": 3000.0,
  "transactions": [
    {
      "type": "deposit",
      "amount": 1000.0,
      "payment_method": "alipay",
      "transaction_id": "txn123",
      "timestamp": "2024-01-30T12:00:00.000Z",
      "description": "充值 1000.0 元"
    }
  ],
  "created_at": "2024-01-30T12:00:00.000Z",
  "updated_at": "2024-01-30T12:00:00.000Z"
}

技能索引格式

[
  {
    "skill_id": "skill_1706600000000_abc123",
    "user_id": "user123",
    "description": "技能描述",
    "hourly_price": 100.0,
    "location": "北京",
    "tags": ["送货", "取货"],
    "status": "online",
    "created_at": "2024-01-30T12:00:00.000Z",
    "rating": 4.5
  }
]

标签索引格式

{
  "送货": ["skill_1706600000000_abc123", "skill_1706600000000_xyz789"],
  "取货": ["skill_1706600000000_abc123"],
  "翻译": ["skill_1706600000000_def456"]
}

文件存储结构

skill_market_agent/
├── data/
│   ├── skill_[skill_id].json      # 技能详细数据
│   ├── order_[order_id].json      # 订单详细数据
│   ├── account_[user_id].json     # 账户详细数据
│   ├── skill_index.json           # 技能索引文件
│   └── tag_index.json             # 标签索引文件
└── cached/                        # 缓存目录

业务规则说明

订单状态流转

  1. pendingconfirmed(卖家确认)
  2. confirmedin_progress(开始服务)
  3. confirmed/in_progresscompleted(买家确认完成)
  4. pending/confirmed/in_progresscancelled(取消订单)

资金处理规则

  1. 创建订单:冻结买家资金
  2. 确认订单:解冻资金转为卖家待结算
  3. 完成订单:待结算资金转入卖家余额
  4. 取消订单
    • pending状态:全额退款给买家
    • confirmed状态:买家取消扣10%违约金给卖家,剩余退款给买家
    • 卖家取消:全额退款给买家

技能状态管理

  1. online:可接单状态
  2. busy:有进行中的订单
  3. offline:已下架,不可接单

错误处理

所有API返回统一格式:

{
  "ret": false,
  "msg": "错误描述信息"
}

元数据

{
  "sourceFiles": [
    "skill_market_agent.js",
    "skill_market_agent1.js", 
    "skill_market_agent2.js",
    "skill_market_agent3.js"
  ],
  "generatedAt": "2024-01-30",
  "endpointCount": 22,
  "hasHttpApis": true,
  "dataStorage": "file-system",
  "version": "1.0.0"
}