临时测试温江直营店SKU与图片自动加多
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
package mtwm
|
package mtwm
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"fmt"
|
||||||
"regexp"
|
"regexp"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
@@ -25,6 +26,8 @@ const (
|
|||||||
|
|
||||||
const (
|
const (
|
||||||
defVendorCatID = 200001903 // 生菜
|
defVendorCatID = 200001903 // 生菜
|
||||||
|
|
||||||
|
specialStoreID = "8171010"
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
@@ -197,12 +200,35 @@ func (p *PurchaseHandler) IsErrSkuNotExist(err error) (isNotExist bool) {
|
|||||||
return mtwmapi.IsErrSkuNotExist(err)
|
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) {
|
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) {
|
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有意义
|
// 对于多门店平台来说,storeSkuList中只有SkuID与VendorSkuID有意义
|
||||||
@@ -235,7 +261,11 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI
|
|||||||
foodData["category_name"] = storeSku.VendorCatID
|
foodData["category_name"] = storeSku.VendorCatID
|
||||||
}
|
}
|
||||||
foodData["is_sold_out"] = skuStatusJX2Mtwm(storeSku.MergedStatus)
|
foodData["is_sold_out"] = skuStatusJX2Mtwm(storeSku.MergedStatus)
|
||||||
|
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), ",")
|
foodData["picture"] = strings.Join(jxutils.BatchString2Slice(storeSku.Img, storeSku.Img2), ",")
|
||||||
|
}
|
||||||
if storeSku.DescImg != "" {
|
if storeSku.DescImg != "" {
|
||||||
foodData["picture_contents"] = storeSku.DescImg
|
foodData["picture_contents"] = storeSku.DescImg
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user