修复自动发货bug

This commit is contained in:
yml
2026-04-14 17:30:36 +08:00
parent bb47d168a9
commit 9f6f67c8a8
14 changed files with 366 additions and 253 deletions
+50
View File
@@ -0,0 +1,50 @@
更新发货状态
简要描述: 接口调用示例
¥基础
执行无物流发货,更新发货状态
请求URL
https://gw-api.agiso.com/aldsIdle/Order/DummySend
请求方式:
POST
公共Header
Authorization
string
httpPost.addHeader("Authorization","Bearer "+ accessToken)
ApiVersion
string
httpPost.addHeader("ApiVersion", "1")
公共参数:
timestamp
Date
时间戳,例如:1468476350。API服务端允许客户端请求最大时间误差为10分钟。
sign
string
API输入参数签名结果,签名算法参照下面的介绍。
参数:
tid
Long
订单号
返回示例
{
"IsSuccess": true,
"Data": null
"Error_Code": 0,
"Error_Msg": ""
"AllowRetry": null,
"RequestId": "20221027142251106"
}
-86
View File
@@ -1,86 +0,0 @@
执行自动发货
简要描述: 接口调用示例
¥高级
调用该接口将根据您在自动发货后台设定的发货规则,进行一次发货逻辑的处理。该操作等同于在手动发货页面的操作。注意:该页面执行后,也会自动发送闲鱼消息,可以通过参数中的选项控制发货中的一些限制。
请求URL
https://gw-api.agiso.com/aldsIdle/Alds/AldsSend
请求方式:
POST
公共Header
Authorization
string
httpPost.addHeader("Authorization","Bearer "+ accessToken)
ApiVersion
string
httpPost.addHeader("ApiVersion", "1")
公共参数:
timestamp
Date
时间戳,例如:1468476350。API服务端允许客户端请求最大时间误差为10分钟。
sign
string
API输入参数签名结果,签名算法参照下面的介绍。
参数:
tids
String
订单编号,多个订单编号间用,分隔开
ignoreAldsLog
Boolean
忽略发货记录
默认值:'false',可选值'true'、'false'
ignoreBlackList
Boolean
忽略黑名单
默认值:'false',可选值'true'、'false'
ignoreOnOff
Boolean
忽略发货开关
默认值:'false',可选值'true'、'false'
ignoreRefundCheck
Boolean
退款中也发
默认值:'false',可选值'true'、'false'
ignoreRestricted
Boolean
忽略限拍限购
默认值:'false',可选值'true'、'false'
ignoreTradeStatusCheck
Boolean
忽略订单状态验证
默认值:'false',可选值'true'、'false'
aldsType
Int
自动发货类型,具体查看底部备注
返回示例
{
"IsSuccess": true,
"Data": null
"Error_Code": 0,
"Error_Msg": ""
"AllowRetry": null,
"RequestId": "20221027142251106"
}
备注
aldsType自动发货类型:付款后发货=1,确认收货后赠送=2
-77
View File
@@ -1,77 +0,0 @@
# 商品识别与履约 SKU 配置
当前后端已支持把外部商品先识别为内部履约 SKU,再继续匹配库存或人工履约。
配置来源已经统一为后台管理页和后端数据文件。
## 配置目标
- `match` 负责识别外部商品
- `skuCode` 代表内部履约 SKU
- `profileKey` 决定后续走库存自动链路还是人工链路
## 推荐配置格式
后台保存后会写入后端数据文件:
- `/app/data/order-fulfillment-bindings.json`
配置结构如下:
```json
[
{
"provider": "agiso",
"platform": "xianyu",
"shopId": "2209880145223",
"skuCode": "sjz_hdl_test01",
"profileKey": "tencent_claim_redeem",
"priority": 10,
"config": {
"note": "三角洲行动腾讯兑换码自动领取"
},
"match": {
"externalSkuCode": "6228372634012",
"externalItemId": "1040695550204",
"externalSkuName": "周边",
"config": {
"resolvedSkuName": "三角洲行动-自动领取"
}
}
},
{
"provider": "agiso",
"platform": "xianyu",
"shopId": "2209880145223",
"skuCode": "danzai_manual_special",
"profileKey": "manual_review",
"priority": 20,
"match": {
"externalSkuCode": "7000000000001",
"externalSkuName": "需要人工发货的商品"
}
}
]
```
## 匹配顺序
系统会按下面顺序匹配外部商品:
1. `externalSkuCode`
2. `externalItemId`
3. 归一化后的 `externalSkuName`
4. 名称包含关系兜底
其中店铺级规则优先于平台级和全局级规则。
## 当前落库行为
- 订单商品的 `sku_code` 会保存为内部履约 SKU
- 原始外部商品信息会保留在 `item_snapshot_json`
- 后续履约任务、库存预占、领取链接都会按内部履约 SKU 继续执行
## 生效方式
- 后台保存后会立即同步到 `sku_fulfillment_bindings`
- 同时会同步到 `product_match_rules`
- 未匹配到规则的商品会自动落到人工处理