1
This commit is contained in:
@@ -156,51 +156,100 @@ type Skus struct {
|
||||
|
||||
// BatchInitData 批量创建商品
|
||||
func BatchInitData(ctx *jxcontext.Context, fromSku []*mtwmapi.AppFood, toApi *mtwmapi.API, vendorStoreID string) error {
|
||||
globals.SugarLogger.Debugf("=")
|
||||
globals.SugarLogger.Debugf("===========[] %s", utils.Format4Output(fromSku[0], false))
|
||||
foodDataList := make([]map[string]interface{}, len(fromSku))
|
||||
for i, storeSku := range fromSku {
|
||||
foodData := make(map[string]interface{})
|
||||
foodData[mtwmapi.KeyAppFoodCode] = storeSku.AppFoodCode
|
||||
//foodData["skus"] = storeSku.Skus
|
||||
skus := make([]*Skus, 0, 0)
|
||||
if err := json.Unmarshal([]byte(storeSku.Skus), &skus); err != nil {
|
||||
return err
|
||||
if storeSku.AppFoodCode != "" {
|
||||
foodData[mtwmapi.KeyAppFoodCode] = storeSku.AppFoodCode
|
||||
} else {
|
||||
foodData[mtwmapi.KeyAppFoodCode] = time.Now().Unix()
|
||||
}
|
||||
skus2 := make([]*Skus, 0, 0)
|
||||
for i2 := 0; i2 < len(skus); i2++ {
|
||||
if skus[i2].Weight != "" && skus[i2].WeightForUnit != "" {
|
||||
skus[i2].WeightForUnit = ""
|
||||
}
|
||||
skus2 = append(skus2, skus[i2])
|
||||
}
|
||||
skusString, err := json.Marshal(skus2)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
foodData["skus"] = string(skusString)
|
||||
|
||||
skus := []map[string]interface{}{
|
||||
map[string]interface{}{
|
||||
"sku_id": foodData[mtwmapi.KeyAppFoodCode],
|
||||
},
|
||||
}
|
||||
foodData["skus"] = skus
|
||||
foodData["name"] = utils.LimitUTF8StringLen(storeSku.Name, mtwmapi.MaxSkuNameCharCount)
|
||||
foodData["description"] = storeSku.Description
|
||||
foodData["price"] = storeSku.Price
|
||||
if storeSku.MinOrderCount != 0 {
|
||||
foodData["min_order_count"] = storeSku.MinOrderCount
|
||||
} else {
|
||||
foodData["min_order_count"] = 1
|
||||
}
|
||||
foodData["min_order_count"] = storeSku.MinOrderCount
|
||||
foodData["unit"] = storeSku.Unit
|
||||
//todo 增加商品必填属性
|
||||
attr := mtwm.SwitchAttr(toApi, vendorStoreID, int64(storeSku.TagID), 0, storeSku.Name)
|
||||
if attr != "" {
|
||||
foodData["common_attr_value"] = attr
|
||||
}
|
||||
foodData["category_code"] = storeSku.CategoryCode
|
||||
foodData["category_name"] = storeSku.CategoryName
|
||||
if storeSku.CategoryCode != "" {
|
||||
foodData["category_code"] = storeSku.CategoryCode
|
||||
} else {
|
||||
foodData["category_name"] = storeSku.CategoryName
|
||||
}
|
||||
foodData["is_sold_out"] = storeSku.IsSoldOut
|
||||
foodData["picture"] = storeSku.Picture
|
||||
foodData["picture_contents"] = storeSku.PictureContents
|
||||
foodData["sequence"] = storeSku.Sequence
|
||||
foodData["tag_id"] = storeSku.TagID
|
||||
foodData["tag_id"] = storeSku.TagID
|
||||
foodDataList[i] = foodData
|
||||
|
||||
skusAttr := make([]*Skus, 0, 0)
|
||||
if err := json.Unmarshal([]byte(storeSku.Skus), &skusAttr); err != nil {
|
||||
return err
|
||||
}
|
||||
//skus2 := make([]*Skus, 0, 0)
|
||||
for i2 := 0; i2 < len(skusAttr); i2++ {
|
||||
if skusAttr[i2].Weight != "" && skusAttr[i2].WeightForUnit != "" {
|
||||
skusAttr[i2].WeightForUnit = ""
|
||||
}
|
||||
//skus2 = append(skus2, skusAttr[i2])
|
||||
skus[0]["spec"] = skusAttr[i2].Spec
|
||||
skus[0]["price"] = skusAttr[i2].Price
|
||||
skus[0]["stock"] = skusAttr[i2].Stock
|
||||
if skusAttr[i2].Upc != "" {
|
||||
skus[0]["upc"] = skusAttr[i2].Upc
|
||||
}
|
||||
skus[0]["ladder_box_num"] = skusAttr[i2].LadderBoxNum
|
||||
skus[0]["ladder_box_price"] = skusAttr[i2].BoxPrice
|
||||
if foodData["tag_id"] != nil {
|
||||
skus[0]["weight"] = skusAttr[i2].Weight // weight字段仅限服饰鞋帽、美妆、日用品、母婴、生鲜果蔬、生活超市下的便利店/超市门店品类的商家使用
|
||||
}
|
||||
break
|
||||
}
|
||||
|
||||
////foodData["skus"] = storeSku.Skus
|
||||
//skusString, err := json.Marshal(skus2)
|
||||
//if err != nil {
|
||||
// return err
|
||||
//}
|
||||
//foodData["skus"] = string(skusString)
|
||||
//
|
||||
//foodData["name"] = utils.LimitUTF8StringLen(storeSku.Name, mtwmapi.MaxSkuNameCharCount)
|
||||
//foodData["description"] = storeSku.Description
|
||||
//foodData["price"] = storeSku.Price
|
||||
//if storeSku.MinOrderCount != 0 {
|
||||
// foodData["min_order_count"] = storeSku.MinOrderCount
|
||||
//} else {
|
||||
// foodData["min_order_count"] = 1
|
||||
//}
|
||||
//foodData["unit"] = storeSku.Unit
|
||||
//attr := mtwm.SwitchAttr(toApi, vendorStoreID, int64(storeSku.TagID), 0, storeSku.Name)
|
||||
//if attr != "" {
|
||||
// foodData["common_attr_value"] = attr
|
||||
//}
|
||||
//if storeSku.CategoryCode != "" {
|
||||
// foodData["category_code"] = storeSku.CategoryCode
|
||||
//} else {
|
||||
// foodData["category_name"] = storeSku.CategoryName
|
||||
//}
|
||||
//
|
||||
//foodData["is_sold_out"] = storeSku.IsSoldOut
|
||||
//foodData["picture"] = storeSku.Picture
|
||||
//foodData["picture_contents"] = storeSku.PictureContents
|
||||
//foodData["sequence"] = storeSku.Sequence
|
||||
//foodData["tag_id"] = storeSku.TagID
|
||||
//foodData["tag_id"] = storeSku.TagID
|
||||
//foodDataList[i] = foodData
|
||||
}
|
||||
|
||||
count := len(foodDataList) / 5
|
||||
|
||||
Reference in New Issue
Block a user