diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go index 6c00282c1..4d011b15a 100644 --- a/business/jxstore/cms/store_sku.go +++ b/business/jxstore/cms/store_sku.go @@ -4641,46 +4641,3 @@ func StoreSkuPriceAudit(ctx *jxcontext.Context, storeSkuAudits []*model.StoreSku return hint, err } -func RefreshJXPriceChange(ctx *jxcontext.Context, isAsync, isContinueWhenError bool) (hint string, err error) { - db := dao.GetDB() - var ( - stores []*model.Store - vendorIDs = []int{0, 1, 3, 5, 9} - ) - sql := ` - SELECT * - FROM store - WHERE deleted_at = ? AND status <> ? AND pay_percentage = ? - AND id = ? - ` - sqlParams := []interface{}{utils.DefaultTimeValue, model.StoreStatusDisabled, 80, 100118} - err = dao.GetRows(db, &stores, sql, sqlParams) - task := tasksch.NewParallelTask("刷新门店价格", tasksch.NewParallelConfig().SetIsContinueWhenError(isContinueWhenError), ctx, - func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) { - store := batchItemList[0].(*model.Store) - var skuBindInfos []*StoreSkuBindInfo - // for _, v := range vendorIDs { - - // } - storeSkus, err := dao.GetStoresSkusInfo(db, []int{store.ID}, nil) - for _, v := range storeSkus { - skuAndName, _ := dao.GetSkus(db, []int{v.SkuID}, nil, nil, nil, nil) - skuBindInfo := &StoreSkuBindInfo{ - StoreID: store.ID, - NameID: skuAndName[0].NameID, - UnitPrice: v.UnitPrice * store.PayPercentage / 100, - } - skuBindInfos = append(skuBindInfos, skuBindInfo) - } - UpdateStoresSkusByBind(ctx, task, skuBindInfos, isAsync, isContinueWhenError, false) - return retVal, err - }, stores) - tasksch.HandleTask(task, nil, true).Run() - if isAsync { - hint = task.GetID() - } else { - _, err = task.GetResult(0) - hint = "1" - } - return hint, err -} diff --git a/business/jxstore/tempop/tempop.go b/business/jxstore/tempop/tempop.go index 9257cd023..ae8bdad66 100644 --- a/business/jxstore/tempop/tempop.go +++ b/business/jxstore/tempop/tempop.go @@ -1617,3 +1617,69 @@ func UploadJdsImage(ctx *jxcontext.Context) (err error) { }) return err } + +func RefreshJXPriceChange(ctx *jxcontext.Context) (hint string, err error) { + db := dao.GetDB() + var ( + stores []*model.Store + vendorIDs = []int{0, 1, 3, 5, 9} + isAsync = true + isContinueWhenError = true + ) + sql := ` + SELECT * + FROM store + WHERE deleted_at = ? AND status <> ? AND pay_percentage = ? + AND id = ? + ` + sqlParams := []interface{}{utils.DefaultTimeValue, model.StoreStatusDisabled, 80, 100118} + err = dao.GetRows(db, &stores, sql, sqlParams) + task := tasksch.NewParallelTask("刷新门店价格", tasksch.NewParallelConfig().SetIsContinueWhenError(isContinueWhenError), ctx, + func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) { + store := batchItemList[0].(*model.Store) + var skuBindInfos []*cms.StoreSkuBindInfo + for _, v := range vendorIDs { + storeMaps, _ := dao.GetStoresMapList(db, []int{v}, []int{store.ID}, nil, model.StoreStatusAll, model.StoreIsSyncAll, "") + if len(storeMaps) > 0 { + storeMap := storeMaps[0] + switch v { + case model.VendorIDJD: + storeMap.PricePercentagePack = "京东测试报价=结算价" + dao.UpdateEntity(db, storeMap, "PricePercentagePack") + case model.VendorIDEBAI: + storeMap.PricePercentagePack = "美团测试报价=结算价" + dao.UpdateEntity(db, storeMap, "PricePercentagePack") + case model.VendorIDMTWM: + storeMap.PricePercentagePack = "饿百测试报价=结算价" + dao.UpdateEntity(db, storeMap, "PricePercentagePack") + case model.VendorIDJDShop: + storeMap.PricePercentagePack = "京西100-100" + dao.UpdateEntity(db, storeMap, "PricePercentagePack") + case model.VendorIDJX: + storeMap.PricePercentagePack = "京西100-100" + dao.UpdateEntity(db, storeMap, "PricePercentagePack") + } + } + } + storeSkus, err := dao.GetStoresSkusInfo(db, []int{store.ID}, nil) + for _, v := range storeSkus { + skuAndName, _ := dao.GetSkus(db, []int{v.SkuID}, nil, nil, nil, nil) + skuBindInfo := &cms.StoreSkuBindInfo{ + StoreID: store.ID, + NameID: skuAndName[0].NameID, + UnitPrice: v.UnitPrice * store.PayPercentage / 100, + } + skuBindInfos = append(skuBindInfos, skuBindInfo) + } + cms.UpdateStoresSkusByBind(ctx, task, skuBindInfos, isAsync, isContinueWhenError, false) + return retVal, err + }, stores) + tasksch.HandleTask(task, nil, true).Run() + if isAsync { + hint = task.GetID() + } else { + _, err = task.GetResult(0) + hint = "1" + } + return hint, err +} diff --git a/controllers/temp_op.go b/controllers/temp_op.go index 82c9ba8ef..90b7f1791 100644 --- a/controllers/temp_op.go +++ b/controllers/temp_op.go @@ -381,3 +381,16 @@ func (c *TempOpController) UploadJdsImage() { return retVal, "", err }) } + +// @Title 京西刷新调价包和门店价格 +// @Description 京西刷新调价包和门店价格 +// @Param token header string true "认证token" +// @Success 200 {object} controllers.CallResult +// @Failure 200 {object} controllers.CallResult +// @router /RefreshJXPriceChange [post] +func (c *TempOpController) RefreshJXPriceChange() { + c.callRefreshJXPriceChange(func(params *tTempopRefreshJXPriceChangeParams) (retVal interface{}, errCode string, err error) { + retVal, err = tempop.RefreshJXPriceChange(params.Ctx) + return retVal, "", err + }) +} diff --git a/routers/commentsRouter_controllers.go b/routers/commentsRouter_controllers.go index ea057cdc2..bade9af68 100644 --- a/routers/commentsRouter_controllers.go +++ b/routers/commentsRouter_controllers.go @@ -2448,6 +2448,15 @@ func init() { Filters: nil, Params: nil}) + beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:TempOpController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:TempOpController"], + beego.ControllerComments{ + Method: "RefreshJXPriceChange", + Router: `/RefreshJXPriceChange`, + AllowHTTPMethods: []string{"post"}, + MethodParams: param.Make(), + Filters: nil, + Params: nil}) + beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:TempOpController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:TempOpController"], beego.ControllerComments{ Method: "RefreshMtpsWaybillFee",