- 整理新同步逻辑

This commit is contained in:
gazebo
2019-07-26 14:21:30 +08:00
parent 6c143b5ed8
commit 11dca2ebcc
6 changed files with 88 additions and 83 deletions

View File

@@ -17,10 +17,6 @@ import (
"git.rosy.net.cn/jx-callback/globals/api"
)
const (
MaxPageSize = 100
)
type tStoreSkuFullInfo struct {
model.StoreSkuBind
@@ -71,14 +67,6 @@ type tStoreCatInfo struct {
Children map[string]*tStoreCatInfo `orm:"-"`
}
var (
defCatMap = map[int]int64{
1: 151301831158987,
2: 15347484581335,
3: 15347484581339,
}
)
func (p *PurchaseHandler) getDirtyStoreSkus(db *dao.DaoDB, storeID int, skuIDs []int) (storeSkuInfoList []*tStoreSkuFullInfo, err error) {
sql := `
SELECT
@@ -397,20 +385,6 @@ func genSkuParamsFromStoreSkuInfo(pricePercentage int, storeSku *tStoreSkuFullIn
return params
}
func jxSkuStatus2Ebai(status int) int {
if status <= 0 {
return ebaiapi.SkuStatusOffline
}
return ebaiapi.SkuStatusOnline
}
func getEbaiCat(catID int64, level int) int64 {
if catID == 0 {
return defCatMap[level]
}
return catID
}
// 从饿百同步分类信息到本地
// 些函数执行后:
// 远程有与本地有的条目会关联(并置标记,下次同步会刷新远程)
@@ -430,7 +404,7 @@ func (p *PurchaseHandler) SyncLocalStoreCategory(db *dao.DaoDB, storeID int, use
if err = dao.GetRows(db, &catList, sql, storeID, utils.DefaultTimeValue, utils.DefaultTimeValue); err == nil {
cat1Map := map[string]*tStoreCatInfo{}
for _, v := range catList {
v.Name = formatName(v.Name)
v.Name = formatCatName(v.Name)
if v.Level == 1 {
cat1 := cat1Map[v.Name]
if cat1 == nil {
@@ -509,7 +483,7 @@ func (p *PurchaseHandler) SyncStoreCategory(ctx *jxcontext.Context, parentTask t
}
} else if catInfo.EbaiSyncStatus&model.SyncFlagNewMask != 0 { // 新增
if globals.EnableEbaiStoreWrite {
catName := formatName(catInfo.Name)
catName := formatCatName(catInfo.Name)
catInfo.EbaiID, err = api.EbaiAPI.ShopCategoryCreate(strStoreID, catInfo.ParentEbaiID, catName, jxCatSeq2Ebai(catInfo.Seq))
if ebaiapi.IsErrCategoryExist(err) {
if catInfo.EbaiID = api.EbaiAPI.GetEbaiCatIDFromName(strStoreID, catName); catInfo.EbaiID > 0 {
@@ -524,7 +498,7 @@ func (p *PurchaseHandler) SyncStoreCategory(ctx *jxcontext.Context, parentTask t
}
} else if catInfo.EbaiSyncStatus&model.SyncFlagModifiedMask != 0 { // 修改
if globals.EnableEbaiStoreWrite {
err = api.EbaiAPI.ShopCategoryUpdate(strStoreID, catInfo.EbaiID, formatName(catInfo.Name), jxCatSeq2Ebai(catInfo.Seq))
err = api.EbaiAPI.ShopCategoryUpdate(strStoreID, catInfo.EbaiID, formatCatName(catInfo.Name), jxCatSeq2Ebai(catInfo.Seq))
}
}
if err == nil {
@@ -598,15 +572,6 @@ func (p *PurchaseHandler) updateLocalCatAsNew(db *dao.DaoDB, localCatMap map[str
return nil
}
func formatName(name string) string {
return utils.TrimBlankChar(utils.FilterMb4(name))
}
// 饿百的排序是从大到小
func jxCatSeq2Ebai(seq int) int {
return 10000 - seq
}
func (p *PurchaseHandler) GetStoresSku(ctx *jxcontext.Context, parentTask tasksch.ITask, storeIDs []int) (storeSkuList []*model.StoreSkuBind, err error) {
return storeSkuList, err
}