修改各处商品查询加入Seq排序字段

This commit is contained in:
Rosy-zhudan
2019-08-30 15:08:44 +08:00
parent de91ac4a20
commit a7270ccd84
6 changed files with 44 additions and 49 deletions

View File

@@ -1044,7 +1044,7 @@ func UploadImg2Platforms(ctx *jxcontext.Context, parentTask tasksch.ITask, imgUR
return imgHintMap, err
}
func SortCategorySku(ctx *jxcontext.Context, catID int, skuIDList []int) (err error) {
func SortCategorySkus(ctx *jxcontext.Context, catID int, skuIDList []int) (err error) {
db := dao.GetDB()
userName := ctx.GetUserName()
var skuList []*model.Sku
@@ -1062,53 +1062,48 @@ func SortCategorySku(ctx *jxcontext.Context, catID int, skuIDList []int) (err er
}
}
// dao.Begin(db)
// defer func() {
// if r := recover(); r != nil || err != nil {
// dao.Rollback(db)
// if r != nil {
// panic(r)
// }
// }
// }()
dao.Begin(db)
defer func() {
if r := recover(); r != nil || err != nil {
dao.Rollback(db)
if r != nil {
panic(r)
}
}
}()
nameIDList := []int{}
for _, value := range skuList {
seq := skuIDMap[value.ID]
kvs := map[string]interface{} {
model.FieldSkuSeq: seq,
//model.FieldJdSyncStatus: (value.JdSyncStatus | model.SyncFlagModifiedMask),
}
dao.UpdateEntityLogically(db, value, kvs, userName, nil)
sku := &model.Sku{}
sku.ID = value.ID
dao.UpdateEntityLogicallyAndUpdateSyncStatus(db, sku, nil, ctx.GetUserName(), nil, model.FieldJdSyncStatus, model.SyncFlagModifiedMask)
nameID := value.NameID
nameIDList = append(nameIDList, nameID)
_, err = CurVendorSync.SyncSku(ctx, db, nameID, -1, false, false, userName)
dao.UpdateEntityLogically(db, value, kvs, userName, nil)
nameIDList = append(nameIDList, value.NameID)
}
//_, err = CurVendorSync.SyncSkus(ctx, db, nameIDList, []int{}, false, false, userName)
// skuIDs, err2 := dao.GetSkuIDByNames(db, nameIDList)
// if err = err2; err == nil && len(skuIDs) > 0 {
// _, err = SetStoreSkuSyncStatus2(db, nil, partner.GetSingleStoreVendorIDs(), skuIDs, model.SyncFlagModifiedMask)
// }
// if err == nil {
// dao.Commit(db)
// } else {
// dao.Rollback(db)
// }
taskSeqFunc := func(task *tasksch.SeqTask, step int, params ...interface{}) (result interface{}, err error) {
switch step {
case 0:
skuIDs, err2 := dao.GetSkuIDByNames(db, nameIDList)
if err = err2; err == nil && len(skuIDs) > 0 {
_, err = SetStoreSkuSyncStatus2(db, nil, partner.GetSingleStoreVendorIDs(), skuIDs, model.SyncFlagModifiedMask)
}
if err == nil {
dao.Commit(db)
skuIDs, err2 := dao.GetSkuIDByNames(db, nameIDList)
if err = err2; err == nil && len(skuIDs) > 0 {
_, err = SetStoreSkuSyncStatus2(db, nil, partner.GetSingleStoreVendorIDs(), skuIDs, model.SyncFlagModifiedMask)
}
return result, err
// taskSeqFunc := func(task *tasksch.SeqTask, step int, params ...interface{}) (result interface{}, err error) {
// switch step {
// case 0:
// skuIDs, err2 := dao.GetSkuIDByNames(db, nameIDList)
// if err = err2; err == nil && len(skuIDs) > 0 {
// _, err = SetStoreSkuSyncStatus2(db, nil, partner.GetSingleStoreVendorIDs(), skuIDs, model.SyncFlagModifiedMask)
// }
// }
// return result, err
// }
// taskSeq := tasksch.NewSeqTask("SortCategorySku", ctx, taskSeqFunc, 1)
// taskSeq.Run()
} else {
dao.Rollback(db)
}
taskSeq := tasksch.NewSeqTask("SortCategorySku", ctx, taskSeqFunc, 1)
taskSeq.Run()
}
return err

View File

@@ -373,12 +373,12 @@ func GetStoresSkusNew(ctx *jxcontext.Context, storeIDs, skuIDs []int, isFocus bo
sqlParams = append(sqlParams, v.NameID, v.StoreID)
}
sql += `)
ORDER BY t3.id, t2.name_id, t2.id
ORDER BY t3.id, MIN(t2.seq), t2.name_id, t2.id
`
} else {
if isFocus {
sql += `
ORDER BY t3.id, t2.name_id, t2.id
ORDER BY t3.id, MIN(t2.seq), t2.name_id, t2.id
`
}
sql += `

View File

@@ -284,7 +284,7 @@ func getEbaiCat(catID int64, level int) int64 {
// 饿百的排序是从大到小
func genSkuCatRank(storeSku *dao.StoreSkuSyncInfo) int {
return int(ebaiapi.MaxSkuCatRank - storeSku.VendorPrice)
return int(ebaiapi.MaxSkuCatRank - storeSku.Seq)
}
// 饿百的排序是从大到小

View File

@@ -171,7 +171,7 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI
if storeSku.DescImg != "" {
foodData["picture_contents"] = storeSku.DescImg
}
foodData["sequence"] = storeSku.VendorPrice
foodData["sequence"] = storeSku.Seq
if storeSku.VendorVendorCatID != 0 {
foodData["tag_id"] = utils.Int64ToStr(storeSku.VendorVendorCatID)
} else {

View File

@@ -2,8 +2,8 @@ package controllers
import (
"git.rosy.net.cn/baseapi/utils"
"git.rosy.net.cn/jx-callback/business/jxutils"
"git.rosy.net.cn/jx-callback/business/jxstore/cms"
"git.rosy.net.cn/jx-callback/business/jxutils"
"git.rosy.net.cn/jx-callback/business/model"
"git.rosy.net.cn/jx-callback/business/model/dao"
"github.com/astaxie/beego"
@@ -348,12 +348,12 @@ func (c *SkuController) GetSensitiveWordList() {
// @Param skuIDs formData string true "商品子分类下商品列表"
// @Success 200 {object} controllers.CallResult
// @Failure 200 {object} controllers.CallResult
// @router /SortCategorySku [post]
func (c *SkuController) SortCategorySku() {
c.callSortCategorySku(func(params *tSkuSortCategorySkuParams) (retVal interface{}, errCode string, err error) {
// @router /SortCategorySkus [post]
func (c *SkuController) SortCategorySkus() {
c.callSortCategorySkus(func(params *tSkuSortCategorySkusParams) (retVal interface{}, errCode string, err error) {
var skuIDList []int
if err = jxutils.Strings2Objs(params.SkuIDs, &skuIDList); err == nil {
err = cms.SortCategorySku(params.Ctx, params.CatID, skuIDList)
err = cms.SortCategorySkus(params.Ctx, params.CatID, skuIDList)
}
return retVal, "", err

View File

@@ -1107,8 +1107,8 @@ func init() {
beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:SkuController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:SkuController"],
beego.ControllerComments{
Method: "SortCategorySku",
Router: `/SortCategorySku`,
Method: "SortCategorySkus",
Router: `/SortCategorySkus`,
AllowHTTPMethods: []string{"post"},
MethodParams: param.Make(),
Filters: nil,