diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go index 0db981776..6c534f2f1 100644 --- a/business/jxstore/cms/store_sku.go +++ b/business/jxstore/cms/store_sku.go @@ -2527,42 +2527,51 @@ func GetVendorStoreSkuPrice(ctx *jxcontext.Context, vendorIDs []int, skuID int, err = err2 taskFunc := func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) { vendorStoreID := batchItemList[0].(string) - var inStoreSkuList []*partner.StoreSkuInfo - var storeDetail *dao.StoreDetail - inStoreSku := &partner.StoreSkuInfo{ - SkuID: skuID, + var ( + inStoreSkuList []*partner.StoreSkuInfo + storeDetail *dao.StoreDetail + inStoreSku = &partner.StoreSkuInfo{} + ) + + skuNameList, err := dao.GetSkus(dao.GetDB(), []int{skuID}, nil, nil, nil) + if err != nil { + return retVal, err } - inStoreSkuList = append(inStoreSkuList, inStoreSku) if partner.IsMultiStore(vendorID) { multiHandler, _ := partner.GetPurchasePlatformFromVendorID(vendorID).(partner.IMultipleStoresHandler) - storeDetail, err = multiHandler.ReadStore(ctx, "", vendorStoreID) + storeDetail, err = multiHandler.ReadStore(ctx, v, vendorStoreID) + if len(skuNameList) > 0 { + inStoreSku.VendorSkuID = utils.Int64ToStr(skuNameList[0].JdID) + } } else { singleHandler, _ := partner.GetPurchasePlatformFromVendorID(vendorID).(partner.ISingleStoreHandler) - storeDetail, err = singleHandler.ReadStore(ctx, "", vendorStoreID) + storeDetail, err = singleHandler.ReadStore(ctx, v, vendorStoreID) + inStoreSku.SkuID = skuID } + inStoreSkuList = append(inStoreSkuList, inStoreSku) outStoreSkuList, err := handler.GetStoreSkusBareInfo(ctx, v, task, 0, vendorStoreID, inStoreSkuList) - skuNameList, err := dao.GetSkus(dao.GetDB(), []int{skuID}, nil, nil, nil) + if err != nil { + return retVal, err + } if storeDetail != nil { - if len(skuNameList) > 0 { - if len(outStoreSkuList) > 0 { - data := DataVendorStoreSkuPrice{ - StoreID: vendorStoreID, - StoreName: storeDetail.Name, - SkuID: skuID, - SkuName: skuNameList[0].Name, - VendorPrice: utils.Float64ToStr(utils.Str2Float64(utils.Int64ToStr(outStoreSkuList[0].VendorPrice)) / 100), - } - retVal = []DataVendorStoreSkuPrice{data} - } else { - data := DataVendorStoreSkuPrice{ - StoreID: vendorStoreID, - StoreName: storeDetail.Name, - SkuID: skuID, - SkuName: skuNameList[0].Name, - VendorPrice: "", - } - retVal = []DataVendorStoreSkuPrice{data} + if len(outStoreSkuList) > 0 { + data := DataVendorStoreSkuPrice{ + StoreID: vendorStoreID, + StoreName: storeDetail.Name, + SkuID: skuID, + SkuName: skuNameList[0].Name, + VendorPrice: utils.Float64ToStr(utils.Str2Float64(utils.Int64ToStr(outStoreSkuList[0].VendorPrice)) / 100), } + retVal = []DataVendorStoreSkuPrice{data} + } else { + data := DataVendorStoreSkuPrice{ + StoreID: vendorStoreID, + StoreName: storeDetail.Name, + SkuID: skuID, + SkuName: skuNameList[0].Name, + VendorPrice: "", + } + retVal = []DataVendorStoreSkuPrice{data} } } return retVal, err