- ebaiapi.GetEbaiSkuIDFromError扩展为从平台再重新取信息(因为饿百在创建商品重复时,返回信息在变)

This commit is contained in:
gazebo
2019-07-01 15:02:01 +08:00
parent 4aa84c1b52
commit 41c5fb7e85

View File

@@ -206,11 +206,19 @@ func (a *API) SkuCreate(shopID string, customSkuID int, params map[string]interf
return 0, err
}
func GetEbaiSkuIDFromError(err error) int64 {
if err2, ok := err.(*utils.ErrorWithCode); ok && err2.IntCode() == 1 && strings.Index(err2.ErrMsg(), "shop sku exist") >= 0 {
searchResult := skuExistReg.FindStringSubmatch(err2.ErrMsg())
if searchResult != nil && len(searchResult[1]) > 0 {
return utils.Str2Int64(searchResult[1])
func (a *API) GetEbaiSkuIDFromError(shopID string, customSkuID int, err error) int64 {
if err2, ok := err.(*utils.ErrorWithCode); ok && err2.IntCode() == 1 {
if strings.Index(err2.ErrMsg(), "shop sku exist") >= 0 {
searchResult := skuExistReg.FindStringSubmatch(err2.ErrMsg())
if searchResult != nil && len(searchResult[1]) > 0 {
return utils.Str2Int64(searchResult[1])
}
} else if strings.Index(err2.ErrMsg(), "商品已存在") >= 0 {
if skuInfo, err2 := a.SkuList(shopID, &SkuListParams{
CustomSkuID: utils.Int2Str(customSkuID),
}); err2 == nil && skuInfo != nil && len(skuInfo.List) > 0 {
return skuInfo.List[0].SkuID
}
}
}
return 0