京西刷价格
This commit is contained in:
@@ -4641,46 +4641,3 @@ func StoreSkuPriceAudit(ctx *jxcontext.Context, storeSkuAudits []*model.StoreSku
|
|||||||
return hint, err
|
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
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -1617,3 +1617,69 @@ func UploadJdsImage(ctx *jxcontext.Context) (err error) {
|
|||||||
})
|
})
|
||||||
return err
|
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
|
||||||
|
}
|
||||||
|
|||||||
@@ -381,3 +381,16 @@ func (c *TempOpController) UploadJdsImage() {
|
|||||||
return retVal, "", err
|
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
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|||||||
@@ -2448,6 +2448,15 @@ func init() {
|
|||||||
Filters: nil,
|
Filters: nil,
|
||||||
Params: 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.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:TempOpController"] = append(beego.GlobalControllerRouter["git.rosy.net.cn/jx-callback/controllers:TempOpController"],
|
||||||
beego.ControllerComments{
|
beego.ControllerComments{
|
||||||
Method: "RefreshMtpsWaybillFee",
|
Method: "RefreshMtpsWaybillFee",
|
||||||
|
|||||||
Reference in New Issue
Block a user