- handle vendorSkuID is not numeric in updateOrderSkuOtherInfo
This commit is contained in:
@@ -205,10 +205,14 @@ func (c *OrderManager) updateOrderSkuOtherInfo(order *model.GoodsOrder, db orm.O
|
||||
|
||||
var sql string
|
||||
if globals.OrderUseNewTable || jxStoreID == globals.DebugStoreID {
|
||||
vendorSkuIDs := make([]int64, len(orderSkus))
|
||||
for k, v := range orderSkus {
|
||||
vendorSkuIDs[k] = utils.Str2Int64(v.VendorSkuID)
|
||||
vendorSkuIDs := make([]int64, 0)
|
||||
for _, v := range orderSkus {
|
||||
intVendorSkuID := utils.Str2Int64WithDefault(v.VendorSkuID, 0)
|
||||
if intVendorSkuID != 0 {
|
||||
vendorSkuIDs = append(vendorSkuIDs, intVendorSkuID)
|
||||
}
|
||||
}
|
||||
if len(vendorSkuIDs) > 0 {
|
||||
if order.VendorID == model.VendorIDELM { // todo 临时用
|
||||
sql = `
|
||||
SELECT t1.sku_id vendor_sku_id, IF(t1.custom_sku_id = -1, 0, t1.custom_sku_id) sku_id, t2.unit_price, t3.weight
|
||||
@@ -241,8 +245,9 @@ func (c *OrderManager) updateOrderSkuOtherInfo(order *model.GoodsOrder, db orm.O
|
||||
}
|
||||
|
||||
for _, v := range orderSkus {
|
||||
if v.VendorSkuID != "-70000" { // todo hard code
|
||||
skuBindInfo := skumapper[utils.Str2Int64(v.VendorSkuID)]
|
||||
intVendorSkuID := utils.Str2Int64WithDefault(v.VendorSkuID, 0)
|
||||
if intVendorSkuID != 0 && v.VendorSkuID != "-70000" { // todo hard code
|
||||
skuBindInfo := skumapper[intVendorSkuID]
|
||||
if skuBindInfo == nil {
|
||||
globals.SugarLogger.Infof("updateOrderSkuOtherInfo [运营%s]%s订单sku找不到门店价格(或商品映射),orderID:%s, StoreID:%d, VendorSkuID:%s, sku:%v", opNum, model.VendorChineseNames[order.VendorID], order.VendorOrderID, jxStoreID, v.VendorSkuID, v)
|
||||
} else {
|
||||
@@ -256,6 +261,7 @@ func (c *OrderManager) updateOrderSkuOtherInfo(order *model.GoodsOrder, db orm.O
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
if order.VendorID == model.VendorIDJD { // todo 为什么要区分京东与其它?
|
||||
|
||||
Reference in New Issue
Block a user