- upc for ebai and mtwm

This commit is contained in:
gazebo
2018-12-13 11:16:28 +08:00
parent edb93cf25e
commit c0effbbf2b
4 changed files with 20 additions and 7 deletions

View File

@@ -44,6 +44,7 @@ type StoreSkuSyncInfo struct {
Name string
Unit string
Img string
Upc string
VendorVendorCatID int64 `orm:"column(vendor_vendor_cat_id)"`
@@ -122,7 +123,7 @@ func GetStoreSkus(db *DaoDB, vendorID, storeID int, skuIDs []int) (skus []*Store
sql := `
SELECT t1.id bind_id, t1.price, t1.unit_price, t1.status store_sku_status, %s.%s_id vendor_sku_id, t1.%s_sync_status sku_sync_status,
t2.*,
t3.prefix, t3.name, t3.unit, t3.img,
t3.prefix, t3.name, t3.unit, t3.img, t3.upc,
t4.%s_category_id vendor_vendor_cat_id,
t5.%s_sync_status cat_sync_status, t5.%s_id vendor_cat_id,
t5sku.%s_sync_status sku_cat_sync_status, t5sku.%s_id sku_vendor_cat_id

View File

@@ -36,6 +36,7 @@ type tStoreSkuFullInfo struct {
Unit string `orm:"size(8)" json:"unit"`
Img string `orm:"size(255)" json:"img"`
PlaceStr string
Upc string
CatName string `orm:"size(255)"`
@@ -78,7 +79,7 @@ var (
func (p *PurchaseHandler) getDirtyStoreSkus(db *dao.DaoDB, storeID int, skuIDs []int) (storeSkuInfoList []*tStoreSkuFullInfo, err error) {
sql := `
SELECT t8.price_percentage, t1.*, t2.spec_quality, t2.spec_unit, t2.weight, t2.status sku_status,
t3.prefix, t3.name, t2.comment, t3.is_global, t3.unit, t3.img,
t3.prefix, t3.name, t2.comment, t3.is_global, t3.unit, t3.img, t3.upc,
t4.name cat_name,
t4.id cat_id, t4.level cat_level, t5.ebai_id cat_ebai_id,
t4p.id parent_cat_id, t5p.ebai_id parent_cat_ebai_id, t5p.ebai_sync_status parent_cat_ebai_sync_status,
@@ -157,7 +158,7 @@ func (p *PurchaseHandler) FullSyncStoreSkus(ctx *jxcontext.Context, parentTask t
case 4:
_, err = p.SyncStoreCategory(ctx, rootTask, storeID, false)
case 5:
_, err = p.SyncStoreSkus(ctx, rootTask, storeID, nil, true, isContinueWhenError)
_, err = p.SyncStoreSkus(ctx, rootTask, storeID, nil, false, isContinueWhenError)
}
return nil, err
}, 6)
@@ -277,6 +278,8 @@ func (p *PurchaseHandler) GetAllRemoteSkus(storeID int) (skus []map[string]inter
}
func (p *PurchaseHandler) DeleteRemoteSkus(storeID int, vendorSkuIDs []string) (err error) {
globals.SugarLogger.Debugf("DeleteRemoteSkus饿百 storeID:%d", storeID)
if vendorSkuIDs == nil {
result, err2 := p.GetAllRemoteSkus(storeID)
if err = err2; err == nil {
@@ -302,6 +305,8 @@ func (p *PurchaseHandler) DeleteRemoteSkus(storeID int, vendorSkuIDs []string) (
}
func (p *PurchaseHandler) DeleteRemoteCategories(storeID int, vendorCatIDs []int64) (err error) {
globals.SugarLogger.Debugf("DeleteRemoteCategories饿百 storeID:%d", storeID)
strStoreID := utils.Int2Str(storeID)
if vendorCatIDs == nil {
result, err2 := api.EbaiAPI.ShopCategoryGet(strStoreID)
@@ -328,9 +333,9 @@ func (p *PurchaseHandler) RefreshStoresAllSkusID(ctx *jxcontext.Context, parentT
}
///////////
func genSkuParamsFromStoreSkuInfo(storeSku *tStoreSkuFullInfo) map[string]interface{} {
func genSkuParamsFromStoreSkuInfo(storeSku *tStoreSkuFullInfo) (params map[string]interface{}) {
price := jxutils.CaculateSkuVendorPrice(storeSku.Price, storeSku.PricePercentage)
return map[string]interface{}{
params = map[string]interface{}{
"name": jxutils.ComposeSkuName(storeSku.Prefix, storeSku.Name, storeSku.Comment, storeSku.Unit, storeSku.SpecQuality, storeSku.SpecUnit, 0),
"status": jxSkuStatus2Ebai(jxutils.MergeSkuStatus(storeSku.SkuStatus, storeSku.Status)),
"left_num": model.MaxStoreSkuStockQty,
@@ -347,6 +352,11 @@ func genSkuParamsFromStoreSkuInfo(storeSku *tStoreSkuFullInfo) map[string]interf
},
},
}
// todo 饿百如果给的UPC是空要报错但如果我要删除UPC怎么弄
if storeSku.Upc != "" {
params["upc"] = storeSku.Upc
}
return params
}
func jxSkuStatus2Ebai(status int) int {
@@ -531,6 +541,7 @@ func (p *PurchaseHandler) updateLocalCatAsNew(db *dao.DaoDB, localCatMap map[str
}
func (p *PurchaseHandler) setStoreSkuSyncStatus(ctx *jxcontext.Context, db *dao.DaoDB, storeID int, skuIDs []int, syncStatus int) (num int64, err error) {
globals.SugarLogger.Debugf("setStoreSkuSyncStatus饿百 storeID:%d", storeID)
return dao.SetStoreSkuSyncStatus(ctx, db, model.VendorIDEBAI, storeID, skuIDs, syncStatus)
}

View File

@@ -141,7 +141,7 @@ func (p *PurchaseHandler) cuSku(db *dao.DaoDB, sku *model.Sku, handler func(skuE
if err == nil {
skuName := jxutils.ComposeSkuName(skuInfoExt.Prefix, skuInfoExt.Name, sku.Comment, skuInfoExt.Unit, sku.SpecQuality, sku.SpecUnit, 0)
skuPrice := jxutils.CaculateSkuPrice(skuInfoExt.Price, sku.SpecQuality, sku.SpecUnit, skuInfoExt.Unit)
if skuInfoExt.Upc != "" {
if true { //skuInfoExt.Upc != "" {
addParams["upcCode"] = skuInfoExt.Upc
}
result, err2 := handler(&skuInfoExt, skuPrice, skuName, shopCategories, addParams)

View File

@@ -263,6 +263,7 @@ func (p *PurchaseHandler) SyncStoreSkus(ctx *jxcontext.Context, parentTask tasks
"weight": skuItem.Weight,
"price": foodData["price"],
"stock": "*",
"upc": skuItem.Upc,
},
}
if globals.EnableStoreWrite && globals.EnableMtwmStoreWrite {
@@ -309,7 +310,7 @@ func (p *PurchaseHandler) FullSyncStoreSkus(ctx *jxcontext.Context, parentTask t
case 3:
_, err = p.SyncStoreCategory(ctx, rootTask, storeID, false)
case 4:
// _, err = p.SyncStoreSkus(ctx, rootTask, storeID, nil, true, isContinueWhenError)
_, err = p.SyncStoreSkus(ctx, rootTask, storeID, nil, true, isContinueWhenError)
}
return nil, err
}, 5)