Files
integral-shop-mgtv1/crmeb_22miao/docs/商品寄卖服务系统管理后台API接口PRD-完整版.md
Developer 0b3d8b6be6 Initial commit: Integral Shop CRMEB Project
Backend: Spring Boot 2.2.6 + MyBatis Plus
- crmeb-admin: Admin API module
- crmeb-service: Business logic
- crmeb-common: Common utilities
- crmeb-front: Frontend API

Frontend: Vue 2.6.10 + Element UI 2.13.0
- Admin management system
- 454 Vue components

Analyzed by Miao Agent on 2026-02-28
Project Score: 5.5/10
Security: High Risk (JWT bypass, API over-permission)
2026-02-28 04:10:52 +08:00

33 KiB
Raw Permalink Blame History

商品寄卖服务系统管理后台API接口PRD完整版

1. 项目概述

1.1 项目背景

商品寄卖服务系统是一个提供商品寄卖、交易、物流管理和财务管理的综合性平台。管理后台API接口文档旨在规范系统前后端交互确保系统各功能模块的正常运行。

1.2 参考系统管理后台

1.3 文档目的

本文档详细描述管理后台的API接口规范、接口功能、请求参数、响应格式等信息为前后端开发人员提供统一的接口参考标准。

1.4 术语定义

  • 管理员:系统后台操作人员,拥有不同权限
  • 用户:平台注册用户,可进行购买、寄售等操作
  • 自营商品:平台直接销售的商品
  • 寄售商品:用户委托平台销售的二手商品
  • 转拍:用户购买商品后再次上架销售的行为
  • 提现:用户将账户余额提取到银行卡或支付宝的操作
  • 优惠券:平台发放的虚拟货币
  • 个人奖金:用户自己交易获得的奖励
  • 推广奖金:用户邀请他人消费获得的返佣

2. API接口设计规范

2.1 接口URL规范

  • 基础路径https://miao1admin.suzhouyuqi.com/app/admin
  • 模块划分/模块名/操作,如/user/select
  • HTTP方法GET查询、POST新增/修改、DELETE删除

2.2 请求头规范

X-Requested-With: XMLHttpRequest
Content-Type: application/json (POST请求)
Accept: application/json, text/javascript, */*; q=0.01
  • 认证信息通过session/cookie机制实现身份验证

2.3 响应格式规范

  • 统一JSON格式响应
  • 标准响应结构
{
  "code": 0,          // 状态码0成功非0失败
  "msg": "ok",        // 响应消息
  "data": {},         // 数据主体(可以是对象或数组)
  "count": 100        // 分页数据总数(可选,仅列表接口返回)
}

2.4 错误码规范

错误码 说明
0 成功
非0 失败具体错误信息在msg字段中返回

2.5 分页参数规范

所有列表查询接口统一使用以下分页参数:

  • page: 页码从1开始
  • limit: 每页记录数默认10条

2.6 搜索条件规范

搜索条件支持数组格式,第一个元素为操作符,第二个元素为值:

  • 字段名[0]: 操作符like、=、>、<、>=、<=、between等
  • 字段名[1]: 搜索值
  • 示例:mobile[0]=like&mobile[1]=138 表示手机号模糊查询

2.7 日期范围查询规范

日期范围查询使用数组格式:

  • 字段名[0]: 开始日期
  • 字段名[1]: 结束日期
  • 示例:created_at[0]=2025-01-01&created_at[1]=2025-12-31

3. 核心API接口详细说明

3.1 用户管理模块 (user)

3.1.1 用户列表查询

  • 接口URL/app/admin/user/select
  • 请求方法GET
  • 功能描述:查询用户列表,支持分页和多种筛选条件
  • 请求参数
参数名 类型 必填 说明
page int 页码默认1
limit int 每页记录数默认10
id int 用户ID精确查询
mobile string 手机号(模糊查询)
pid int 推荐人ID
username string 用户名
status int 状态0=禁用1=启用
is_vip int 是否VIP0=否1=是
  • 请求示例
GET /app/admin/user/select?page=1&limit=10&id=&mobile=&pid=
  • 响应数据
{
  "code": 0,
  "msg": "ok",
  "count": 469,
  "data": [
    {
      "id": 92697,
      "pid": 92679,
      "username": "15324401200",
      "nickname": "153****1259",
      "mobile": "15324401200",
      "sex": "1",
      "avatar": "/app/admin/avatar.png",
      "invite": "el0yw1",
      "level": 1,
      "birthday": null,
      "money": "0.000",
      "coupon": "0.000",
      "self_bonus": "0.000",
      "share_bonus": "0.000",
      "score": 0,
      "last_time": "2025-11-13 14:17:00",
      "last_ip": "116.230.253.100",
      "join_time": "2025-11-13 14:15:44",
      "join_ip": "116.230.253.100",
      "status": 1,
      "viptime": null,
      "is_vip": 1,
      "contract": "https://contract.test.kywtwl.com/upload/contract/1753363479/xieyi.pdf",
      "max_order": 3,
      "is_resell": 1,
      "yesterday_sell_count": 0,
      "today_buy_count": 1,
      "today_buy_total": "29805.86",
      "today_sell_total": 0,
      "poor": -29805.86,
      "pname": "潘1陈1勇",
      "created_at": "2025-11-13 14:15:44",
      "updated_at": "2025-11-13 16:13:34"
    }
  ]
}

3.1.2 用户详情查询

  • 接口URL/app/admin/user/select
  • 请求方法GET
  • 功能描述:查询单个用户详细信息
  • 请求参数
参数名 类型 必填 说明
id int 用户ID
  • 请求示例
GET /app/admin/user/select?id=92697
  • 响应数据:返回单个用户对象(结构同上)

3.1.3 用户信息更新

  • 接口URL/app/admin/user/update
  • 请求方法POST
  • 功能描述:更新用户信息
  • 请求参数
参数名 类型 必填 说明
id int 用户ID
nickname string 昵称
mobile string 手机号
status int 状态0=禁用1=启用
is_vip int 是否VIP0=否1=是
viptime datetime VIP截止时间
max_order int 最高可抢单数
is_resell int 是否可转拍0=否1=是
money decimal 余额
coupon decimal 优惠券余额
self_bonus decimal 个人奖金
share_bonus decimal 推广奖金
password string 新密码(明文)
  • 请求示例
POST /app/admin/user/update
Content-Type: application/x-www-form-urlencoded

id=92697&status=1&is_vip=1&max_order=6
  • 响应数据
{
  "code": 0,
  "msg": "ok",
  "data": []
}

3.2 商品管理模块 (merchandise)

3.2.1 寄售商品列表查询

  • 接口URL/app/admin/merchandise/select
  • 请求方法GET
  • 功能描述:查询寄售商品列表
  • 请求参数
参数名 类型 必填 说明
page int 页码默认1
limit int 每页记录数默认10
id int 商品ID
user_id int 卖家用户ID
title string 商品标题(模糊查询)
status int 状态0=已售1=未售
is_show int 是否显示0=隐藏1=显示
  • 请求示例
GET /app/admin/merchandise/select?page=1&limit=10
  • 响应数据
{
  "code": 0,
  "msg": "ok",
  "count": 50,
  "data": [
    {
      "id": 144753,
      "old_id": 0,
      "user_id": 92166,
      "title": "商品标题",
      "image": "[\"url1\",\"url2\"]",
      "price": "1000.00",
      "is_show": 1,
      "status": 1,
      "created_at": "2025-11-13 10:00:00",
      "updated_at": "2025-11-13 10:00:00",
      "username": "用户昵称"
    }
  ]
}

3.2.2 寄售商品详情查询

  • 接口URL/app/admin/merchandise/select
  • 请求方法GET
  • 功能描述:查询单个寄售商品详情
  • 请求参数
参数名 类型 必填 说明
id int 商品ID
  • 请求示例
GET /app/admin/merchandise/select?id=144753

3.2.3 寄售商品更新

  • 接口URL/app/admin/merchandise/update
  • 请求方法POST
  • 功能描述:更新寄售商品信息(主要用于审核和上下架)
  • 请求参数
参数名 类型 必填 说明
id int 商品ID
is_show int 是否显示0=隐藏1=显示
status int 状态0=已售1=未售
price decimal 寄售价格
  • 请求示例
POST /app/admin/merchandise/update
Content-Type: application/x-www-form-urlencoded

id=144753&is_show=1
  • 响应数据
{
  "code": 0,
  "msg": "ok",
  "data": []
}

3.3 订单管理模块 (order)

3.3.1 订单列表查询

  • 接口URL/app/admin/order/select
  • 请求方法GET
  • 功能描述:查询订单列表,支持多种筛选条件
  • 请求参数
参数名 类型 必填 说明
page int 页码默认1
limit int 每页记录数默认10
order_sn[0] string 订单号搜索方式like
order_sn[1] string 订单号
seller_id int 卖家ID
buyer_id int 买家ID
status int 订单状态0=待付款1=已支付2=已完成
is_resell int 是否转拍0=否1=是
is_cancel int 是否取消0=否1=是
is_show int 是否显示0=隐藏1=显示
buy_time[0] datetime 购买开始时间
buy_time[1] datetime 购买结束时间
confirm_time[0] datetime 确认开始时间
confirm_time[1] datetime 确认结束时间
  • 请求示例
GET /app/admin/order/select?page=1&limit=50&order_sn[0]=like&order_sn[1]=&seller_id=&buyer_id=&status=&is_resell=&is_cancel=&is_show=&buy_time[0]=&buy_time[1]=&confirm_time[0]=&confirm_time[1]=
  • 响应数据
{
  "code": 0,
  "msg": "ok",
  "count": 100,
  "data": [
    {
      "id": 12345,
      "old_id": 0,
      "seller_id": 0,
      "buyer_id": 92697,
      "order_sn": "79629117630147968611",
      "total_money": "1000.00",
      "pay_time": "2025-11-13 10:00:00",
      "pay_img": "",
      "status": 1,
      "is_resell": 0,
      "is_show": 1,
      "is_cancel": 0,
      "consignee": "张三",
      "phone": "13800138000",
      "province": "江苏省",
      "city": "苏州市",
      "area": "工业园区",
      "address": "详细地址",
      "merchandise_id": 0,
      "confirm_time": null,
      "buy_time": "2025-11-13 09:00:00",
      "buy_ip": "192.168.1.1",
      "cancel_ip": "",
      "created_at": "2025-11-13 09:00:00",
      "updated_at": "2025-11-13 10:00:00",
      "seller_name": "平台",
      "buyer_name": "张三"
    }
  ]
}

3.3.2 订单详情查询

  • 接口URL/app/admin/order/select
  • 请求方法GET
  • 功能描述:查询单个订单详情
  • 请求参数
参数名 类型 必填 说明
id int 订单ID

3.3.3 订单更新

  • 接口URL/app/admin/order/update
  • 请求方法POST
  • 功能描述:更新订单状态
  • 请求参数
参数名 类型 必填 说明
id int 订单ID
status int 订单状态0=待付款1=已支付2=已完成
is_show int 是否显示0=隐藏1=显示
is_cancel int 是否取消0=否1=是
  • 请求示例
POST /app/admin/order/update
Content-Type: application/x-www-form-urlencoded

id=12345&status=2
  • 响应数据
{
  "code": 0,
  "msg": "ok",
  "data": []
}

3.4 提现管理模块 (withdraw)

3.4.1 提现列表查询

  • 接口URL/app/admin/withdraw/select
  • 请求方法GET
  • 功能描述:查询提现申请列表
  • 请求参数
参数名 类型 必填 说明
page int 页码默认1
limit int 每页记录数默认10
transfer_no[0] string 提现编号搜索方式like
transfer_no[1] string 提现编号
user_id int 用户ID
cate int 提现类型2=优惠券4=推广奖金
account_type int 账号类型1=银行卡2=支付宝
status int 状态0=待审核1=通过2=驳回
created_at[0] datetime 申请开始时间
created_at[1] datetime 申请结束时间
updated_at[0] datetime 处理开始时间
updated_at[1] datetime 处理结束时间
  • 请求示例
GET /app/admin/withdraw/select?page=1&limit=10&transfer_no[0]=like&transfer_no[1]=&cate=4&account_type=&status=&created_at[0]=&created_at[1]=&updated_at[0]=&updated_at[1]=
  • 响应数据
{
  "code": 0,
  "msg": "ok",
  "count": 50,
  "data": [
    {
      "id": 4457,
      "transfer_no": "W202511130001",
      "user_id": 92697,
      "cate": 4,
      "account_type": 2,
      "account_id": 123,
      "account_info": "{\"username\":\"张三\",\"account\":\"138****8000\"}",
      "money": "100.00",
      "handling_fee": "1.00",
      "actual_amount": "99.00",
      "status": 0,
      "remark": "",
      "created_at": "2025-11-13 10:00:00",
      "updated_at": "2025-11-13 10:00:00",
      "username": "张三",
      "mobile": "13800138000"
    }
  ]
}

3.4.2 提现详情查询

  • 接口URL/app/admin/withdraw/select
  • 请求方法GET
  • 功能描述:查询单个提现申请详情
  • 请求参数
参数名 类型 必填 说明
id int 提现记录ID

3.4.3 提现审核

  • 接口URL/app/admin/withdraw/update
  • 请求方法POST
  • 功能描述:审核提现申请
  • 请求参数
参数名 类型 必填 说明
id int 提现记录ID
status int 状态1=通过2=驳回
remark string 审核备注(驳回时必填原因)
  • 请求示例
POST /app/admin/withdraw/update
Content-Type: application/x-www-form-urlencoded

id=4457&status=1&remark=审核通过
  • 响应数据
{
  "code": 0,
  "msg": "ok",
  "data": []
}

3.5 财务日志管理模块

3.5.1 优惠券日志查询

  • 接口URL/app/admin/coupon-log/select
  • 请求方法GET
  • 功能描述:查询优惠券发放和使用日志
  • 请求参数
参数名 类型 必填 说明
page int 页码默认1
limit int 每页记录数默认10
user_id int 用户ID
type int 类型1=收入2=支出3=提现驳回
memo[0] string 备注搜索方式like
memo[1] string 备注内容
created_at[0] datetime 开始时间
created_at[1] datetime 结束时间
  • 请求示例
GET /app/admin/coupon-log/select?page=1&limit=10&user_id=&type=1&memo[0]=like&memo[1]=&created_at[0]=&created_at[1]=
  • 响应数据
{
  "code": 0,
  "msg": "ok",
  "count": 100,
  "data": [
    {
      "id": 1,
      "user_id": 92697,
      "type": 1,
      "money": "10.000",
      "before": "0.000",
      "after": "10.000",
      "memo": "系统发放",
      "created_at": "2025-11-13 10:00:00",
      "updated_at": "2025-11-13 10:00:00",
      "username": "张三",
      "mobile": "13800138000"
    }
  ]
}

3.5.2 个人奖金日志查询

  • 接口URL/app/admin/selfbonus-log/select
  • 请求方法GET
  • 功能描述:查询个人奖金变动日志
  • 请求参数:(同优惠券日志)

3.5.3 推广奖金日志查询

  • 接口URL/app/admin/sharebonus-log/select
  • 请求方法GET
  • 功能描述:查询推广奖金变动日志
  • 请求参数同优惠券日志type支持1=收入2=支出3=提现驳回)

3.6 系统管理模块

3.6.1 获取系统配置

  • 接口URL/app/admin/setting/index

  • 请求方法GET

  • 功能描述:获取系统配置信息

  • 请求参数:无

  • 响应数据

{
  "code": 0,
  "msg": "ok",
  "data": ["*"]
}

3.6.2 获取系统设置

  • 接口URL/app/admin/setting/get

  • 请求方法GET

  • 功能描述:获取系统设置详情

  • 请求参数:无

  • 响应数据:返回系统设置的键值对列表

3.6.3 更新系统设置

  • 接口URL/app/admin/setting/update
  • 请求方法POST
  • 功能描述:更新系统设置
  • 请求参数:键值对形式,根据具体设置项而定

3.6.4 获取菜单配置

  • 接口URL/app/admin/rule/get

  • 请求方法GET

  • 功能描述:获取系统菜单配置

  • 请求参数:无

  • 响应数据

{
  "logo": {
    "title": "采贪平台",
    "image": "/app/admin/admin/images/logo.png"
  },
  "menu": {
    "data": "/app/admin/rule/get",
    "method": "GET",
    "accordion": true,
    "collapse": false,
    "control": false,
    "controlWidth": 500,
    "select": "0",
    "async": true
  },
  "tab": {
    "enable": true,
    "keepState": true,
    "preload": false,
    "session": false,
    "max": "30",
    "index": {
      "id": "8",
      "href": "/app/admin/user/index",
      "title": "用户管理"
    }
  },
  "theme": {
    "defaultColor": "2",
    "defaultMenu": "light-theme",
    "defaultHeader": "light-theme",
    "allowCustom": true,
    "banner": false
  },
  "colors": [
    {"id": "1", "color": "#36b368", "second": "#f0f9eb"},
    {"id": "2", "color": "#2d8cf0", "second": "#ecf5ff"},
    {"id": "3", "color": "#f6ad55", "second": "#fdf6ec"},
    {"id": "4", "color": "#f56c6c", "second": "#fef0f0"},
    {"id": "5", "color": "#3963bc", "second": "#ecf5ff"}
  ],
  "other": {
    "keepLoad": "500",
    "autoHead": false,
    "footer": false
  },
  "header": {
    "message": false
  }
}

3.6.5 获取系统配置(通用)

  • 接口URL/app/admin/config/get
  • 请求方法GET
  • 功能描述:获取系统通用配置
  • 请求参数:无

3.6.6 获取账户信息

  • 接口URL/app/admin/account/info

  • 请求方法GET

  • 功能描述:获取当前登录管理员账户信息

  • 请求参数:无

  • 响应数据

{
  "code": 0,
  "msg": "ok",
  "data": {
    "id": 1,
    "username": "admin",
    "nickname": "管理员",
    "avatar": "/app/admin/avatar.png",
    "email": "admin@example.com",
    "mobile": "13800138000",
    "login_at": "2025-11-13 08:00:00"
  }
}

4. 数据库表结构参考

4.1 用户表wa_users

字段名 类型 说明
id int 用户ID
pid int 推荐人ID
username varchar 用户名
nickname varchar 昵称
mobile varchar 手机号
password varchar 密码(加密)
salt varchar 密码盐
sex enum 性别0=女1=男
avatar varchar 头像URL
invite varchar 邀请码
level tinyint 用户等级
birthday date 生日
money decimal 余额
coupon decimal 优惠券余额
self_bonus decimal 个人奖金
share_bonus decimal 推广奖金
score int 积分
last_time datetime 最后登录时间
last_ip varchar 最后登录IP
join_time datetime 注册时间
join_ip varchar 注册IP
token varchar 登录Token
status tinyint 状态0=禁用1=启用
is_vip tinyint 是否VIP0=否1=是
viptime datetime VIP截止时间
contract varchar 合同文件
max_order int 最高可抢单数
is_resell tinyint 是否可转拍0=否1=是
created_at datetime 创建时间
updated_at datetime 更新时间

4.2 寄售商品表wa_merchandise

字段名 类型 说明
id int 主键ID
old_id int 从订单转拍过来的原订单ID
user_id int 卖家用户ID
title varchar 商品标题
image varchar 商品图片JSON数组
price decimal 寄售价格
is_show tinyint 是否显示0=隐藏1=显示
status tinyint 状态0=已售1=未售
created_at datetime 创建时间
updated_at datetime 更新时间

4.3 订单表wa_order

字段名 类型 说明
id int 订单ID
old_id int 从订单转拍过来的原订单ID
seller_id int 卖家ID0=平台)
buyer_id int 买家ID
order_sn varchar 订单号
total_money decimal 订单金额
pay_time datetime 支付时间
pay_img varchar 支付凭证图片
status tinyint 状态0=待付款1=已支付2=已完成
is_resell tinyint 是否转拍0=否1=是
is_show tinyint 是否显示0=隐藏1=显示
is_cancel tinyint 是否取消0=否1=是
consignee varchar 收货人
phone varchar 收货电话
province varchar 省份
city varchar 城市
area varchar 区县
address varchar 详细地址
merchandise_id int 寄售商品ID
confirm_time datetime 确认收货时间
buy_time datetime 下单抢购时间
buy_ip varchar 下单IP
cancel_ip varchar 取消订单IP
created_at datetime 创建时间
updated_at datetime 更新时间

4.4 提现表wa_withdraw

字段名 类型 说明
id int 提现记录ID
transfer_no varchar 提现编号
user_id int 用户ID
cate tinyint 提现类型2=优惠券4=推广奖金
account_type tinyint 账号类型1=银行卡2=支付宝
account_id int 收款账号ID
account_info text 收款账号信息JSON
money decimal 提现金额
handling_fee decimal 手续费
actual_amount decimal 实际到账金额
status tinyint 状态0=待审核1=通过2=驳回
remark varchar 备注
created_at datetime 创建时间
updated_at datetime 更新时间

4.5 财务日志表(通用结构)

财务日志表包括:

  • wa_money_log余额变动日志
  • wa_coupon_log优惠券变动日志
  • wa_selfbonus_log个人奖金变动日志
  • wa_sharebonus_log推广奖金变动日志
字段名 类型 说明
id int 主键ID
user_id int 用户ID
type tinyint 类型1=收入2=支出3=提现驳回
money decimal 变更金额
before decimal 变更前余额
after decimal 变更后余额
memo varchar 备注说明
created_at datetime 创建时间
updated_at datetime 更新时间

5. API调用示例

5.1 用户列表查询示例

jQuery AJAX:

$.ajax({
  url: '/app/admin/user/select',
  type: 'GET',
  data: {
    page: 1,
    limit: 10,
    mobile: '138'
  },
  success: function(res) {
    if (res.code === 0) {
      console.log('总记录数:', res.count);
      console.log('用户列表:', res.data);
    } else {
      layer.msg(res.msg);
    }
  }
});

Fetch API:

fetch('/app/admin/user/select?page=1&limit=10', {
  method: 'GET',
  headers: {
    'X-Requested-With': 'XMLHttpRequest'
  }
})
.then(response => response.json())
.then(data => {
  if (data.code === 0) {
    console.log(data.data);
  }
});

5.2 用户信息更新示例

$.ajax({
  url: '/app/admin/user/update',
  type: 'POST',
  data: {
    id: 92697,
    status: 1,
    is_vip: 1,
    max_order: 6
  },
  success: function(res) {
    if (res.code === 0) {
      layer.msg('更新成功');
    } else {
      layer.msg(res.msg);
    }
  }
});

5.3 订单列表查询示例(带复杂筛选条件)

$.ajax({
  url: '/app/admin/order/select',
  type: 'GET',
  data: {
    page: 1,
    limit: 50,
    'order_sn[0]': 'like',
    'order_sn[1]': '796291',
    seller_id: '',
    buyer_id: '',
    status: '',
    is_resell: 1,
    is_cancel: '',
    is_show: '',
    'buy_time[0]': '2025-11-01',
    'buy_time[1]': '2025-11-30',
    'confirm_time[0]': '',
    'confirm_time[1]': ''
  },
  success: function(res) {
    if (res.code === 0) {
      console.log('订单列表:', res.data);
    }
  }
});

5.4 提现审核示例

$.ajax({
  url: '/app/admin/withdraw/update',
  type: 'POST',
  data: {
    id: 4457,
    status: 1,  // 1=通过2=驳回
    remark: '审核通过'
  },
  success: function(res) {
    if (res.code === 0) {
      layer.msg('审核成功');
      // 刷新列表
      table.reload('withdrawTable');
    } else {
      layer.msg(res.msg);
    }
  }
});

5.5 寄售商品上下架示例

$.ajax({
  url: '/app/admin/merchandise/update',
  type: 'POST',
  data: {
    id: 144753,
    is_show: 1  // 1=显示0=隐藏
  },
  success: function(res) {
    if (res.code === 0) {
      layer.msg('操作成功');
    } else {
      layer.msg(res.msg);
    }
  }
});

6. 业务流程说明

6.1 用户注册流程

  1. 用户通过邀请码注册(邀请码关联推荐人)
  2. 创建用户记录,生成专属邀请码
  3. 初始化财务账户余额、优惠券、奖金均为0
  4. 记录注册IP和时间

6.2 订单交易流程

1. 用户下单创建订单status=0
   ↓
2. 用户支付更新status=1记录pay_time
   ↓
3. 卖家发货
   ↓
4. 买家确认收货更新status=2记录confirm_time
   ↓
5. 交易完成(资金结算,奖励计算)

6.3 商品转拍流程

1. 买家购买商品并确认收货
   ↓
2. 买家申请转拍(创建寄售商品记录)
   - 记录old_id原订单ID
   - 设置寄售价格
   - 等待管理员审核is_show=0
   ↓
3. 管理员审核通过is_show=1
   ↓
4. 商品上架展示
   ↓
5. 其他用户购买(生成新订单)
   ↓
6. 卖家收款(扣除平台手续费)

6.4 提现审核流程

1. 用户提交提现申请
   - 选择提现类型(优惠券/推广奖金)
   - 选择收款方式(银行卡/支付宝)
   - 填写提现金额
   - 系统自动扣除相应账户余额
   ↓
2. 管理员审核
   - 查看用户信息和收款账号
   - 审核通过标记status=1
   - 审核驳回标记status=2填写驳回原因
   ↓
3. 驳回时系统自动返还金额
   - 记录类型为3提现驳回的财务日志
   - 恢复用户相应账户余额

6.5 财务账户说明

用户有4个独立的财务账户

  1. 余额money

    • 来源:充值、退款、活动奖励
    • 用途:购买商品、提现
    • 变动记录wa_money_log
  2. 优惠券coupon

    • 来源:系统发放、活动赠送
    • 用途:购买商品抵扣、提现(可选)
    • 变动记录wa_coupon_log
  3. 个人奖金self_bonus

    • 来源:自己交易获得的奖励
    • 用途:提现、转入余额
    • 变动记录wa_selfbonus_log
  4. 推广奖金share_bonus

    • 来源:邀请用户消费返佣
    • 用途:提现
    • 变动记录wa_sharebonus_log

7. 安全注意事项

7.1 接口安全

  • 所有接口调用均需进行身份验证基于Session/Cookie
  • 敏感操作需要二次确认(如:大额提现审核)
  • 防止SQL注入使用参数化查询
  • 防止XSS攻击输出数据进行HTML转义
  • 防止CSRF攻击验证Referer和Token

7.2 数据安全

  • 用户密码使用加密算法存储MD5+盐值)
  • 敏感信息脱敏显示(手机号、银行卡号)
  • 定期数据备份(每日全量+每小时增量)
  • 重要操作记录日志(提现、审核等)

7.3 权限控制

  • 基于角色的权限管理RBAC
  • 细粒度的操作权限控制
  • 操作日志记录(谁、何时、做了什么)
  • 敏感功能需要管理员权限

7.4 业务风控

  • 提现限额控制(单笔、单日)
  • 异常交易监控(频繁操作、大额交易)
  • 黑名单机制异常用户、IP
  • 防刷单策略

8. 错误码说明

8.1 通用错误码

错误码 说明 处理建议
0 成功 -
-1 系统错误 联系管理员
1000 参数错误 检查请求参数
1001 缺少必填参数 补充必填参数
1002 参数格式错误 检查参数格式
2000 未登录 跳转登录页
2001 无权限 提示无权限
2002 账号被禁用 联系管理员
3000 数据不存在 刷新页面重试
3001 数据已存在 提示重复
4000 业务逻辑错误 查看msg详细信息

8.2 业务错误码

错误码 说明
5001 余额不足
5002 库存不足
5003 订单状态不正确
5004 提现金额超限
5005 账户已冻结
5006 审核已处理
5007 不支持该操作

9. 接口版本管理

9.1 当前版本

  • 版本号V1.0
  • 更新日期2025-11-13
  • 基础路径/app/admin

9.2 版本变更说明

V1.02025-11-13

  • 初始版本发布
  • 包含用户、订单、商品、提现、财务日志、系统设置等核心模块
  • 支持分页查询、复杂筛选、CRUD操作

10. 技术栈说明

10.1 前端技术

  • 框架Layui轻量级前端UI框架
  • AJAX库jQuery
  • 图表库ECharts如有数据统计需求

10.2 后端技术

  • 语言PHP
  • 框架Webman高性能PHP框架
  • 数据库MySQL 5.7
  • Web服务器Nginx
  • 字符集UTF-8

10.3 开发规范

  • RESTful风格API设计
  • MVC架构模式
  • 统一的响应格式
  • 统一的错误处理机制

11. 测试建议

11.1 功能测试

  • 测试所有接口的正常流程
  • 测试异常参数的处理
  • 测试权限控制
  • 测试数据边界值

11.2 性能测试

  • 接口响应时间(建议<500ms
  • 并发请求处理能力
  • 数据库查询优化
  • 接口限流策略

11.3 安全测试

  • SQL注入测试
  • XSS攻击测试
  • CSRF攻击测试
  • 权限越权测试

12. 附录

12.1 完整接口列表

模块 接口路径 方法 说明
用户管理 /user/index GET 用户管理页面
用户管理 /user/select GET 用户列表/详情查询
用户管理 /user/update POST 用户信息更新
寄售商品 /merchandise/index GET 寄售商品管理页面
寄售商品 /merchandise/select GET 寄售商品列表/详情查询
寄售商品 /merchandise/update POST 寄售商品更新
订单管理 /order/index GET 订单管理页面
订单管理 /order/select GET 订单列表/详情查询
订单管理 /order/update POST 订单信息更新
提现管理 /withdraw/index GET 提现管理页面
提现管理 /withdraw/select GET 提现列表/详情查询
提现管理 /withdraw/update POST 提现审核
优惠券日志 /coupon-log/index GET 优惠券日志页面
优惠券日志 /coupon-log/select GET 优惠券日志查询
个人奖金日志 /selfbonus-log/index GET 个人奖金日志页面
个人奖金日志 /selfbonus-log/select GET 个人奖金日志查询
推广奖金日志 /sharebonus-log/index GET 推广奖金日志页面
推广奖金日志 /sharebonus-log/select GET 推广奖金日志查询
系统设置 /setting/index GET 系统设置页面
系统设置 /setting/get GET 获取系统设置
系统设置 /setting/update POST 更新系统设置
系统配置 /config/get GET 获取系统配置
权限规则 /rule/get GET 获取菜单配置
账户信息 /account/info GET 获取管理员信息

12.2 数据状态枚举汇总

用户状态status

  • 0禁用
  • 1启用

性别sex

  • 0
  • 1

是否VIPis_vip

  • 0
  • 1

订单状态status

  • 0待付款
  • 1已支付
  • 2已完成

寄售商品状态status

  • 0已售
  • 1未售

显示状态is_show

  • 0隐藏
  • 1显示

财务变动类型type

  • 1收入
  • 2支出
  • 3提现驳回

提现类型cate

  • 2优惠券
  • 4推广奖金

提现账号类型account_type

  • 1银行卡
  • 2支付宝

提现状态status

  • 0待审核
  • 1通过
  • 2驳回

12.3 常用查询参数说明

分页参数

  • page页码
  • limit每页数量

搜索条件

  • 字段名[0]操作符like、=、>、<等)
  • 字段名[1]:搜索值

日期范围

  • 字段名[0]:开始日期
  • 字段名[1]:结束日期

13. 联系方式

13.1 技术支持

  • 文档维护:产品团队
  • 技术对接:开发团队
  • 问题反馈提交Issue或联系项目负责人

13.2 更新记录

版本 日期 更新内容 更新人
V1.0 2025-11-13 初始完整版文档 系统分析

文档结束

本文档基于参考系统(https://miao1admin.suzhouyuqi.com的HAR文件分析生成包含了系统所有核心API接口的详细说明。如有疑问或需要补充请联系文档维护团队