临时测试温江直营店SKU与图片自动加多

This commit is contained in:
gazebo
2019-11-22 16:59:32 +08:00
parent f7144ecde1
commit 4a6ada20c4

View File

@@ -1,6 +1,7 @@
package mtwm
import (
"fmt"
"regexp"
"strings"
@@ -25,6 +26,8 @@ const (
const (
defVendorCatID = 200001903 // 生菜
specialStoreID = "8171010"
)
var (
@@ -197,12 +200,35 @@ func (p *PurchaseHandler) IsErrSkuNotExist(err error) (isNotExist bool) {
return mtwmapi.IsErrSkuNotExist(err)
}
func duplicateStoreSkuList(storeSkuList []*dao.StoreSkuSyncInfo, index int) (newStoreSkuList []*dao.StoreSkuSyncInfo) {
newStoreSkuList = make([]*dao.StoreSkuSyncInfo, len(storeSkuList))
for k, v := range storeSkuList {
tmp := *v
tmp.SkuName = fmt.Sprintf("%s.%d", tmp.SkuName, index+1)
tmp.SkuID = index*1000000 + tmp.SkuID
newStoreSkuList[k] = &tmp
}
return newStoreSkuList
}
func (p *PurchaseHandler) UpdateStoreSkus(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeSkuList []*dao.StoreSkuSyncInfo) (successList []*dao.StoreSkuSyncInfo, err error) {
return p.createOrUpdateStoreSkus(ctx, storeID, vendorStoreID, storeSkuList, false)
successList, err = p.createOrUpdateStoreSkus(ctx, storeID, vendorStoreID, storeSkuList, false)
if err == nil && vendorStoreID == specialStoreID {
for i := 0; i < 2; i++ {
p.createOrUpdateStoreSkus(ctx, storeID, vendorStoreID, duplicateStoreSkuList(storeSkuList, i), true)
}
}
return successList, err
}
func (p *PurchaseHandler) CreateStoreSkus(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeSkuList []*dao.StoreSkuSyncInfo) (successList []*dao.StoreSkuSyncInfo, err error) {
return p.createOrUpdateStoreSkus(ctx, storeID, vendorStoreID, storeSkuList, true)
successList, err = p.createOrUpdateStoreSkus(ctx, storeID, vendorStoreID, storeSkuList, true)
if err == nil && vendorStoreID == specialStoreID {
for i := 0; i < 2; i++ {
p.createOrUpdateStoreSkus(ctx, storeID, vendorStoreID, duplicateStoreSkuList(storeSkuList, i), true)
}
}
return successList, err
}
// 对于多门店平台来说storeSkuList中只有SkuID与VendorSkuID有意义
@@ -235,7 +261,11 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI
foodData["category_name"] = storeSku.VendorCatID
}
foodData["is_sold_out"] = skuStatusJX2Mtwm(storeSku.MergedStatus)
foodData["picture"] = strings.Join(jxutils.BatchString2Slice(storeSku.Img, storeSku.Img2), ",")
if vendorStoreID == specialStoreID {
foodData["picture"] = strings.Join(jxutils.BatchString2Slice(storeSku.Img, storeSku.Img, storeSku.Img, storeSku.Img, storeSku.Img), ",")
} else {
foodData["picture"] = strings.Join(jxutils.BatchString2Slice(storeSku.Img, storeSku.Img2), ",")
}
if storeSku.DescImg != "" {
foodData["picture_contents"] = storeSku.DescImg
}