处理美团AppFood中可能没有sku的情况

This commit is contained in:
gazebo
2019-12-27 23:02:36 +08:00
parent 1ea84798f3
commit 9bd240a22f

View File

@@ -413,7 +413,9 @@ func (p *PurchaseHandler) GetStoreSkusFullInfo(ctx *jxcontext.Context, parentTas
if err != nil { if err != nil {
return nil, err return nil, err
} }
skuNameList = append(skuNameList, vendorSku2Jx(skuInfo)) if skuName := vendorSku2Jx(skuInfo); skuName != nil {
skuNameList = append(skuNameList, skuName)
}
} else { } else {
var storeSkuMap map[string]*partner.StoreSkuInfo var storeSkuMap map[string]*partner.StoreSkuInfo
if storeSkuList != nil { if storeSkuList != nil {
@@ -430,7 +432,9 @@ func (p *PurchaseHandler) GetStoreSkusFullInfo(ctx *jxcontext.Context, parentTas
} else { } else {
for _, v := range result { for _, v := range result {
if storeSkuMap[v.AppFoodCode] != nil { if storeSkuMap[v.AppFoodCode] != nil {
skuNameList = append(skuNameList, vendorSku2Jx(v)) if skuName := vendorSku2Jx(v); skuName != nil {
skuNameList = append(skuNameList, skuName)
}
} }
} }
} }
@@ -443,6 +447,10 @@ func (p *PurchaseHandler) GetStoreSkusFullInfo(ctx *jxcontext.Context, parentTas
} }
func vendorSku2Jx(appFood *mtwmapi.AppFood) (skuName *partner.SkuNameInfo) { func vendorSku2Jx(appFood *mtwmapi.AppFood) (skuName *partner.SkuNameInfo) {
if len(appFood.SkuList) == 1 {
globals.SugarLogger.Warnf("vendorSku2Jx, strange appFood:%s", utils.Format4Output(appFood, true))
return nil
}
prefix, name, comment, specUnit, unit, specQuality := jxutils.SplitSkuName(appFood.Name) prefix, name, comment, specUnit, unit, specQuality := jxutils.SplitSkuName(appFood.Name)
vendorSku := appFood.SkuList[0] vendorSku := appFood.SkuList[0]
weight := int(utils.Str2Int64WithDefault(vendorSku.Weight, 0)) weight := int(utils.Str2Int64WithDefault(vendorSku.Weight, 0))
@@ -488,7 +496,9 @@ func vendorSku2Jx(appFood *mtwmapi.AppFood) (skuName *partner.SkuNameInfo) {
func vendorSkuList2Jx(appFoodList []*mtwmapi.AppFood) (skuNameList []*partner.SkuNameInfo) { func vendorSkuList2Jx(appFoodList []*mtwmapi.AppFood) (skuNameList []*partner.SkuNameInfo) {
for _, appFood := range appFoodList { for _, appFood := range appFoodList {
skuNameList = append(skuNameList, vendorSku2Jx(appFood)) if skuName := vendorSku2Jx(appFood); skuName != nil {
skuNameList = append(skuNameList, skuName)
}
} }
return skuNameList return skuNameList
} }