- fix Str2Int64 error in wsc.SyncStoreSkus

This commit is contained in:
gazebo
2019-01-24 15:16:49 +08:00
parent 16a3261bd1
commit 8903eafb67

View File

@@ -46,7 +46,7 @@ func (p *PurchaseHandler) SyncStoreCategory(ctx *jxcontext.Context, parentTask t
if level == 2 { if level == 2 {
catImg = DefCatImg catImg = DefCatImg
} }
if catInfo.WscID, err = api.WeimobAPI.AddClassify(catInfo.CatName, utils.Str2Int64(catInfo.ParentVendorCatID), catImg); err == nil { if catInfo.WscID, err = api.WeimobAPI.AddClassify(catInfo.CatName, utils.Str2Int64WithDefault(catInfo.ParentVendorCatID, 0), catImg); err == nil {
updateFields = append(updateFields, dao.GetVendorThingIDStructField(model.VendorNames[model.VendorIDWSC])) updateFields = append(updateFields, dao.GetVendorThingIDStructField(model.VendorNames[model.VendorIDWSC]))
} }
} else if catInfo.WscSyncStatus&(model.SyncFlagModifiedMask|model.SyncFlagModifiedMask) != 0 { // 修改 } else if catInfo.WscSyncStatus&(model.SyncFlagModifiedMask|model.SyncFlagModifiedMask) != 0 { // 修改
@@ -114,7 +114,7 @@ func (p *PurchaseHandler) SyncLocalStoreCategory(ctx *jxcontext.Context, db *dao
catMap := &model.StoreSkuCategoryMap{ catMap := &model.StoreSkuCategoryMap{
StoreID: storeID, StoreID: storeID,
CategoryID: v.ID, CategoryID: v.ID,
WscID: utils.Str2Int64(v.VendorCatID), WscID: utils.Str2Int64WithDefault(v.VendorCatID, 0),
WscSyncStatus: wscSyncStatus, WscSyncStatus: wscSyncStatus,
MtwmSyncStatus: model.SyncFlagNewMask, MtwmSyncStatus: model.SyncFlagNewMask,
EbaiSyncStatus: model.SyncFlagNewMask, EbaiSyncStatus: model.SyncFlagNewMask,
@@ -177,7 +177,7 @@ func (p *PurchaseHandler) SyncStoreSkus(ctx *jxcontext.Context, parentTask tasks
storeSkuBind := &model.StoreSkuBind{} storeSkuBind := &model.StoreSkuBind{}
storeSkuBind.ID = skuItem.BindID storeSkuBind.ID = skuItem.BindID
if skuItem.SkuSyncStatus&model.SyncFlagDeletedMask != 0 { if skuItem.SkuSyncStatus&model.SyncFlagDeletedMask != 0 {
goodsID := utils.Str2Int64(skuItem.VendorNameID) goodsID := utils.Str2Int64WithDefault(skuItem.VendorNameID, 0)
if err = api.WeimobAPI.UpdateGoodsShelfStatus([]int64{goodsID}, false); err == nil { if err = api.WeimobAPI.UpdateGoodsShelfStatus([]int64{goodsID}, false); err == nil {
err = api.WeimobAPI.UpdateGoodsTitle(goodsID, composeFakeDelName(skuItem.Name)) err = api.WeimobAPI.UpdateGoodsTitle(goodsID, composeFakeDelName(skuItem.Name))
} }
@@ -189,9 +189,9 @@ func (p *PurchaseHandler) SyncStoreSkus(ctx *jxcontext.Context, parentTask tasks
if categoryId == 0 { if categoryId == 0 {
categoryId = DefVendorCategoryId categoryId = DefVendorCategoryId
} }
classifyIdList := []int64{utils.Str2Int64(skuItem.VendorCatID)} classifyIdList := []int64{utils.Str2Int64WithDefault(skuItem.VendorCatID, 0)}
if skuItem.SkuVendorCatID != "" { if skuItem.SkuVendorCatID != "" {
if int64Value := utils.Str2Int64(skuItem.SkuVendorCatID); int64Value > 0 { if int64Value := utils.Str2Int64WithDefault(skuItem.SkuVendorCatID, 0); int64Value > 0 {
classifyIdList = append(classifyIdList, int64Value) classifyIdList = append(classifyIdList, int64Value)
} }
} }
@@ -225,8 +225,8 @@ func (p *PurchaseHandler) SyncStoreSkus(ctx *jxcontext.Context, parentTask tasks
} else { } else {
// http://open.weimob.com/docapi/article?tag=Af // http://open.weimob.com/docapi/article?tag=Af
// sku id如果为空则新增sku 如果更新之前的skuId与入参skuId对应则更新sku 如果更新之前的skuId没有和入参的skuId对应删除更新之前的sku // sku id如果为空则新增sku 如果更新之前的skuId与入参skuId对应则更新sku 如果更新之前的skuId没有和入参的skuId对应删除更新之前的sku
skuList[0][weimobapi.KeySkuID] = utils.Str2Int64(skuItem.VendorSkuID) skuList[0][weimobapi.KeySkuID] = utils.Str2Int64WithDefault(skuItem.VendorSkuID, 0)
goodsID := utils.Str2Int64(skuItem.VendorNameID) goodsID := utils.Str2Int64WithDefault(skuItem.VendorNameID, 0)
_, _, err = api.WeimobAPI.UpdateGoods(goodsID, title, false, []string{skuItem.Img}, skuItem.Comment, isPutAway, 0, categoryId, classifyIdList, b2cGoods, skuList, nil) _, _, err = api.WeimobAPI.UpdateGoods(goodsID, title, false, []string{skuItem.Img}, skuItem.Comment, isPutAway, 0, categoryId, classifyIdList, b2cGoods, skuList, nil)
} }
} }
@@ -290,8 +290,8 @@ func composeFakeDelName(name string) string {
// func SplitGoodsAndSkuIDFromJXVendorSkuID(vendorSkuID string) (goodsID, skuID int64) { // func SplitGoodsAndSkuIDFromJXVendorSkuID(vendorSkuID string) (goodsID, skuID int64) {
// list := strings.Split(vendorSkuID, ",") // list := strings.Split(vendorSkuID, ",")
// if len(list) == 2 { // if len(list) == 2 {
// skuID = utils.Str2Int64(list[0]) // skuID = utils.Str2Int64WithDefault(list[0], 0)
// goodsID = utils.Str2Int64(list[1]) // goodsID = utils.Str2Int64WithDefault(list[1], 0)
// } // }
// return goodsID, skuID // return goodsID, skuID
// } // }