- 引入 alibabacloud/dysmsapi-20170525 依赖,集成阿里云短信服务 - 将短信验证码从6位改为4位,优化用户体验 - 添加聚水潭商品按时间范围同步功能,支持分页拉取 - 增强Cron任务异常处理,添加错误日志记录 - 修复系统附件服务中图片路径处理逻辑 - 更新阿里云SDK相关组件至最新版本 - 添加think-trace调试扩展,便于问题排查 - 优化跨域中间件,使用str_contains替代strpos
139 lines
2.9 KiB
Markdown
139 lines
2.9 KiB
Markdown
# 聚水潭商品拉取测试总结
|
||
|
||
## ✅ 测试结果
|
||
|
||
### 1. Token问题已解决
|
||
- **原因**: HaichaoBridge需要`runtime/jstdata/jst_token_data.json`文件
|
||
- **解决方案**: 运行`php init_jst_token.php`
|
||
- **状态**: ✅ 已解决
|
||
|
||
### 2. API接口调用成功
|
||
- **Token验证**: ✅ 通过
|
||
- **API连接**: ✅ 成功
|
||
- **数据拉取**: ⚠️ 返回空(见下文说明)
|
||
|
||
### 3. 数据为空的原因
|
||
|
||
`getProductListStand()`方法使用时间过滤:
|
||
```php
|
||
// 只查询10天前到3天前修改过的商品
|
||
$time = 10;
|
||
'modified_begin' => 10天前
|
||
'modified_end' => 3天前
|
||
```
|
||
|
||
**可能原因**:
|
||
1. 聚水潭系统中没有商品在指定时间范围内修改过
|
||
2. 商品最近没有更新
|
||
3. 时间范围需要调整
|
||
|
||
---
|
||
|
||
## 📋 可用测试脚本
|
||
|
||
### 1. init_jst_token.php
|
||
初始化Token文件(已运行)
|
||
|
||
```bash
|
||
php init_jst_token.php
|
||
```
|
||
|
||
### 2. test_haichao.php
|
||
测试HaichaoJstServices
|
||
```bash
|
||
# 获取示例数据
|
||
php test_haichao.php
|
||
|
||
# 查询指定SPU
|
||
php test_haichao.php 4651127369
|
||
```
|
||
|
||
### 3. test_haichao_all.php
|
||
全量拉取测试
|
||
```bash
|
||
php test_haichao_all.php
|
||
```
|
||
|
||
### 4. test_jst_final_demo.php
|
||
完整展示脚本
|
||
```bash
|
||
php test_jst_final_demo.php
|
||
```
|
||
|
||
---
|
||
|
||
## 🔧 建议操作
|
||
|
||
### 如果需要拉取所有商品
|
||
|
||
可以修改HaichaoJstServices.php中的时间范围:
|
||
|
||
**文件**: `/home/jone/workspace/CRMEB_PRO/app/haichao/HaichaoJstServices.php`
|
||
|
||
**位置**: 第655-667行
|
||
|
||
```php
|
||
public function getProductListStand(): array
|
||
{
|
||
$time = 10; // 修改为更大的值,如 365(一年)
|
||
$data = $this->post('open/mall/item/query', [
|
||
'modified_begin' => date('Y-m-d H:i', (time() - (86400 * $time))),
|
||
'modified_end' => date('Y-m-d H:i', time() - (86400 * $time) + 7 * 86400),
|
||
'i_ids' => [],
|
||
'page_index' => 1,
|
||
'page_size' => 50,
|
||
'date_field' => '',
|
||
])['data'];
|
||
return $data;
|
||
}
|
||
```
|
||
|
||
### 或者直接查询指定SPU
|
||
|
||
```bash
|
||
php test_haichao.php 4651127369
|
||
php test_haichao.php 5606676507
|
||
php test_haichao.php 5633479406
|
||
```
|
||
|
||
---
|
||
|
||
## 📊 数据结构说明
|
||
|
||
成功返回的JSON格式:
|
||
```json
|
||
{
|
||
"i_id": "4651127369",
|
||
"name": "贝肽斯夏季儿童防晒帽...",
|
||
"s_price": "35.9",
|
||
"market_price": null,
|
||
"c_price": null,
|
||
"pic": "https://img.yzcdn.cn/...",
|
||
"skus": [
|
||
{
|
||
"sku_id": "1N55001102",
|
||
"properties_value": "卡其布黄;M码:头围50-54cm",
|
||
"sale_price": "35.9",
|
||
"market_price": null,
|
||
"cost_price": null
|
||
}
|
||
]
|
||
}
|
||
```
|
||
|
||
---
|
||
|
||
## ⚠️ 注意事项
|
||
|
||
1. **Token有效期**: 30天(2592000秒)
|
||
2. **无RefreshToken**: 无法自动刷新,需要手动更新
|
||
3. **API权限**: 部分接口可能需要额外申请权限
|
||
|
||
---
|
||
|
||
## 📝 下一步建议
|
||
|
||
1. 如果有具体要测试的SPU,请提供
|
||
2. 如果需要拉取全部商品,可以修改时间范围
|
||
3. 建议配置RefreshToken以支持自动续期
|