尝试过滤掉饿鲜达不要的分类

This commit is contained in:
苏尹岚
2020-02-17 09:12:31 +08:00
parent ae2056c64e
commit 1a0a535d7b
4 changed files with 65 additions and 7 deletions

View File

@@ -1511,3 +1511,27 @@ func SumExianDaDepot(ctx *jxcontext.Context) (err error) {
}
return err
}
func CopyEbaiSkuPriceToJx(ctx *jxcontext.Context) (err error) {
db := dao.GetDB()
skuList, err := api.EbaiAPI.PageGetSkuList(32267350915)
for _, v := range skuList {
price := int(utils.Float64TwoInt64(v["sale_price"].(float64) * 100))
var skuNameList []*model.SkuName
sql := `
SELECT *
FROM sku_name
WHERE upc = ?
AND exd_sku_id <> ''
`
sqlParams := []interface{}{
v["upc"].(string),
}
err = dao.GetRows(db, &skuNameList, sql, sqlParams...)
for _, vv := range skuNameList {
vv.Price = price
dao.UpdateEntity(db, vv, "Price")
}
}
return err
}

View File

@@ -24,6 +24,9 @@ const (
var (
sensitiveWordRegexp = regexp.MustCompile(`商品名称中含有敏感词(\[.*\])`)
categoryCheck = map[string]string{
"赠品专区": "赠品专区",
}
)
func (p *PurchaseHandler) GetStoreSkusBatchSize(funcID int) (batchSize int) {
@@ -71,23 +74,29 @@ func (p *PurchaseHandler) IsErrCategoryNotExist(err error) (isNotExist bool) {
return ebaiapi.IsErrCategoryNotExist(err)
}
func getCheckExdStoreNameAndSeq(storeID int, storeCat *dao.SkuStoreCatInfo) (name string, seq int) {
func getCheckExdStoreNameAndSeq(storeID int, storeCat *dao.SkuStoreCatInfo) (name string, seq int, isCheck bool) {
store, err := dao.GetStoreDetail(dao.GetDB(), storeID, model.VendorIDEBAI)
if err != nil || store == nil {
return storeCat.Name, storeCat.Seq
return storeCat.Name, storeCat.Seq, false
}
if strings.Contains(store.Name, model.ExdStoreName) {
return storeCat.ExdName, storeCat.ExdSeq
if categoryCheck[storeCat.ExdName] != "" {
return storeCat.ExdName, storeCat.ExdSeq, true
}
return storeCat.ExdName, storeCat.ExdSeq, false
} else {
return storeCat.Name, storeCat.Seq
return storeCat.Name, storeCat.Seq, false
}
return name, seq
return name, seq, false
}
func (p *PurchaseHandler) CreateStoreCategory(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeCat *dao.SkuStoreCatInfo) (err error) {
var vendorCatID int64
if globals.EnableEbaiStoreWrite {
catName, catSeq := getCheckExdStoreNameAndSeq(storeID, storeCat)
catName, catSeq, isCheck := getCheckExdStoreNameAndSeq(storeID, storeCat)
if isCheck {
return nil
}
vendorCatID, err = api.EbaiAPI.ShopCategoryCreate(utils.Int2Str(storeID), utils.Str2Int64WithDefault(storeCat.ParentVendorCatID, 0), formatCatName(catName), jxCatSeq2Ebai(catSeq))
} else {
vendorCatID = jxutils.GenFakeID()
@@ -98,7 +107,10 @@ func (p *PurchaseHandler) CreateStoreCategory(ctx *jxcontext.Context, storeID in
func (p *PurchaseHandler) UpdateStoreCategory(ctx *jxcontext.Context, storeID int, vendorStoreID string, storeCat *dao.SkuStoreCatInfo) (err error) {
if globals.EnableEbaiStoreWrite {
catName, catSeq := getCheckExdStoreNameAndSeq(storeID, storeCat)
catName, catSeq, isCheck := getCheckExdStoreNameAndSeq(storeID, storeCat)
if isCheck {
return nil
}
err = api.EbaiAPI.ShopCategoryUpdate(utils.Int2Str(storeID), utils.Str2Int64WithDefault(storeCat.VendorCatID, 0), formatCatName(catName), jxCatSeq2Ebai(catSeq))
// todo, 饿百将一个分类重复改名也会报分类名重复错特殊处理一下不过因为GetStoreCategory其实会拉取所有的门店分类是比较耗时的操作
if utils.IsErrMatch(err, "1", []string{"分类名称已经存在"}) {

View File

@@ -431,3 +431,16 @@ func (c *SkuController) SumExianDaDepot() {
return retVal, "", err
})
}
// @Title 复制一个饿百的店的商品的价格到京西饿鲜达商品
// @Description 复制一个饿百的店的商品的价格到京西饿鲜达商品
// @Param token header string true "认证token"
// @Success 200 {object} controllers.CallResult
// @Failure 200 {object} controllers.CallResult
// @router /CopyEbaiSkuPriceToJx [put]
func (c *SkuController) CopyEbaiSkuPriceToJx() {
c.callCopyEbaiSkuPriceToJx(func(params *tSkuCopyEbaiSkuPriceToJxParams) (retVal interface{}, errCode string, err error) {
err = cms.CopyEbaiSkuPriceToJx(params.Ctx)
return retVal, "", err
})
}

View File

@@ -1251,6 +1251,15 @@ func init() {
Filters: nil,
Params: nil})
beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:SkuController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:SkuController"],
beego.ControllerComments{
Method: "CopyEbaiSkuPriceToJx",
Router: `/CopyEbaiSkuPriceToJx`,
AllowHTTPMethods: []string{"put"},
MethodParams: param.Make(),
Filters: nil,
Params: nil})
beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:SkuController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:SkuController"],
beego.ControllerComments{
Method: "DeleteCategory",