查询商品列表
该接口用于查询商品信息,支持分页查询,返回商品的基本信息、规格、库存等相关数据。
http://ip:port/app/product.queryProduct
GET
| 参数名称 | 必填 | 类型 | 描述 |
|---|---|---|---|
| Authorization | 是 | String | 用户认证token,通过登录接口获取 |
| app-id | 是 | String | 应用ID,系统分配 |
| transaction-id | 是 | String | 请求流水号,格式:1000000000+YYYYMMDDhhmmss+6位序列 |
| sign | 是 | String | 签名 |
| req-time | 是 | String | 请求时间,格式:YYYYMMDDhhmmss |
| 参数名称 | 必填 | 类型 | 描述 | 示例 |
|---|---|---|---|---|
| page | 否 | Integer | 当前页码,默认1 | 1 |
| row | 否 | Integer | 每页记录数,默认10 | 10 |
| productId | 否 | String | 商品ID | 1001 |
| productName | 否 | String | 商品名称 | iPhone 15 |
| categoryId | 否 | String | 商品分类ID | 101 |
| status | 否 | String | 商品状态(如:上架、下架) | ON_SHELF |
| 参数名称 | 类型 | 描述 |
|---|---|---|
| code | String | 返回码,0 表示成功,其他表示失败 |
| msg | String | 返回信息 |
| data | Object | 返回数据 |
| data.total | Integer | 总记录数 |
| data.pages | Integer | 总页数 |
| data.list | List<ProductDto> | 商品列表 |
| 参数名称 | 类型 | 描述 |
|---|---|---|
| productId | String | 商品ID |
| productName | String | 商品名称 |
| price | BigDecimal | 商品价格 |
| stock | Integer | 库存数量 |
| categoryId | String | 分类ID |
| status | String | 商品状态 |
| images | List<String> | 商品图片URL列表 |
| specs | List<ProductSpecDto> | 商品规格列表 |
GET /app/product.queryProduct?page=1&row=10&productName=iPhone HTTP/1.1
Host: localhost:8080
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
app-id: mall-app
transaction-id: 100000000020231201143456000001
sign: 3a7b1c8d9e0f2a4b5c6d7e8f9a0b1c2d
req-time: 20231201143456
{
"code": "0",
"msg": "成功",
"data": {
"total": 15,
"pages": 2,
"list": [
{
"productId": "1001",
"productName": "iPhone 15",
"price": 5999.00,
"stock": 100,
"categoryId": "101",
"status": "ON_SHELF",
"images": [
"http://example.com/image1.jpg",
"http://example.com/image2.jpg"
],
"specs": [
{
"specId": "2001",
"specName": "颜色",
"values": ["黑色", "白色"]
}
]
}
]
}
}
page 和 row 参数进行分页查询。 productInnerServiceSMOImpl.queryProducts() 获取商品列表。 getProductBMOImpl.freshProductDtos() 补充商品图片、规格等信息。 product 获取基本信息。 file_rel 获取图片信息。 product_spec 获取规格信息。Authorization 和 app-id。 page 和 row 需合理设置,避免大数据量查询。