diff --git a/business/jxstore/misc/misc2.go b/business/jxstore/misc/misc2.go index cf39fc63c..f1331fd31 100644 --- a/business/jxstore/misc/misc2.go +++ b/business/jxstore/misc/misc2.go @@ -1,7 +1,7 @@ package misc import ( - "fmt" + //"fmt" "time" "encoding/json" "strconv" @@ -12,6 +12,8 @@ import ( "git.rosy.net.cn/jx-callback/business/model" "git.rosy.net.cn/jx-callback/business/partner" "git.rosy.net.cn/jx-callback/globals" + "git.rosy.net.cn/jx-callback/business/partner/putils" + "git.rosy.net.cn/baseapi" ) const ( @@ -41,11 +43,11 @@ func SetStoreOptime(startTime, endTime int16) { if startTime == 0 || endTime == 0 { startOpStoreTime = startOpStoreTimeDefault endOpStoreTime = endOpStoreTimeDefault - fmt.Println("The store time can't be 0") + baseapi.SugarLogger.Debugf("The store time can't be 0") } else { startOpStoreTime = startTime endOpStoreTime = endTime - fmt.Println("SetStoreOptime:", startTime, endTime) + baseapi.SugarLogger.Debugf("SetStoreOptime:%d do:%d", startTime, endTime) } } @@ -88,7 +90,7 @@ func StartOrEndOpStore(startOrEnd bool) { storeInfo, err := cms.GetStores(ctx, "", map[string]interface{}{}, 0, -1, utils.DefaultTimeValue, utils.DefaultTimeValue, 0, 0) if err != nil { - fmt.Println(err) + baseapi.SugarLogger.Errorf("storeInfo error:%v", err) } else { for _, storeListValue := range storeInfo.Stores { storeID := storeListValue.ID @@ -96,11 +98,11 @@ func StartOrEndOpStore(startOrEnd bool) { for _, vendorListValue := range storeListValue.StoreMaps { vendorID, _ := strconv.Atoi(vendorListValue["vendorID"].(json.Number).String()) vendorStoreID := vendorListValue["vendorStoreID"].(string) - fmt.Println(storeID, vendorID, vendorStoreID, "----", vendorListValue) + baseapi.SugarLogger.Debugf("storeID:%d vendorID:%d vendorStoreID:%s vendorListValue:%v", storeID, vendorID, vendorStoreID, vendorListValue) storeSkuHandler := partner.GetPurchasePlatformFromVendorID(vendorID).(partner.IPurchasePlatformStoreSkuHandler) storeSkuList, err := storeSkuHandler.GetStoreSkusBareInfo(ctx, nil, storeID, vendorStoreID, nil) if err != nil { - fmt.Println(err) + baseapi.SugarLogger.Errorf("storeSkuList error:%v", err) } else { if _, ok := vendorList[vendorID]; ok { if len(storeSkuList) > 0 { @@ -108,21 +110,30 @@ func StartOrEndOpStore(startOrEnd bool) { AddOrDelExtraStoreOptime(vendorID, storeID, vendorStoreID, &storeListValue.Store, false) } skuNameMap := GetSkuNameMap(vendorID, storeID, vendorStoreID) - for _, skuValue := range storeSkuList { - skuNameInfo := skuNameMap[skuValue.SkuID] - needCheckName := skuNameInfo != nil - skuName := "" - if skuNameInfo != nil { - skuName = skuNameInfo.Name - } - if (needCheckName && skuName != specialSkuName) || !needCheckName { - skuValue.Stock = GetStockValue(startOrEnd) - var storeSkuList = []*partner.StoreSkuInfo{skuValue} - if successList, err := storeSkuHandler.UpdateStoreSkusStock(ctx, storeID, vendorStoreID, storeSkuList); err == nil { - fmt.Println(successList, err) + isContinueWhenError := true + _, err = putils.FreeBatchStoreSkuInfo(func(batchedStoreSkuList []*partner.StoreSkuInfo) (result interface{}, err error) { + var filterBatchedStoreSkuList []*partner.StoreSkuInfo + for _, skuValue := range batchedStoreSkuList { + skuNameInfo := skuNameMap[skuValue.SkuID] + needCheckName := skuNameInfo != nil + skuName := "" + if skuNameInfo != nil { + skuName = skuNameInfo.Name + } + if (needCheckName && skuName != specialSkuName) || !needCheckName { + skuValue.Stock = GetStockValue(startOrEnd) + filterBatchedStoreSkuList = append(filterBatchedStoreSkuList, skuValue) } } - } + + var successList []*partner.StoreSkuInfo + if successList, err = storeSkuHandler.UpdateStoreSkusStock(ctx, storeID, vendorStoreID, filterBatchedStoreSkuList); err == nil { + successList = batchedStoreSkuList + baseapi.SugarLogger.Debugf("successList:%v error:%v", successList, err) + } + return nil, err + }, ctx, nil, storeSkuList, storeSkuHandler.GetStoreSkusBatchSize(partner.FuncUpdateStoreSkusStock), isContinueWhenError) + if startOrEnd { AddOrDelExtraStoreOptime(vendorID, storeID, vendorStoreID, &storeListValue.Store, true) } diff --git a/controllers/temp_op.go b/controllers/temp_op.go index 3b5d945bb..fce5fc2f2 100644 --- a/controllers/temp_op.go +++ b/controllers/temp_op.go @@ -10,6 +10,7 @@ import ( "git.rosy.net.cn/jx-callback/business/model/dao" "git.rosy.net.cn/jx-callback/globals/api" "github.com/astaxie/beego" + "git.rosy.net.cn/jx-callback/business/jxstore/misc" ) type TempOpController struct { @@ -271,3 +272,20 @@ func (c *TempOpController) TestIt() { return retVal, "", err }) } + +// @Title 开启或结束所有平台商店的额外时间 +// @Description 开启或结束所有平台商店的额外时间,并且修改所有商品库存为0或99999(开启:0 , 结束:99999) +// @Param token header string true "认证token" +// @Param startOrEndStore query bool true "开启或结束" +// @Param startTime query int false "开始营业时间(格式:930代表早上9点30分)" +// @Param endTime query int false "结束营业时间" +// @Success 200 {object} controllers.CallResult +// @Failure 200 {object} controllers.CallResult +// @router /TestStartOrEndOpStore [get] +func (c *TempOpController) TestStartOrEndOpStore() { + c.callTestStartOrEndOpStore(func(params *tTempopTestStartOrEndOpStoreParams) (retVal interface{}, errCode string, err error) { + misc.SetStoreOptime(int16(params.StartTime), int16(params.EndTime)) + misc.StartOrEndOpStore(params.StartOrEndStore) + return retVal, "", err + }) +} diff --git a/main.go b/main.go index 67c8a92a8..81aa12ff6 100644 --- a/main.go +++ b/main.go @@ -57,6 +57,7 @@ func Init() { if globals.IsProductEnv() { ebai.CurPurchaseHandler.StartRefreshComment() misc.Init() + misc.InitEx() } } diff --git a/routers/commentsRouter_controllers.go b/routers/commentsRouter_controllers.go index 74940d1cb..ee8e4b0fd 100644 --- a/routers/commentsRouter_controllers.go +++ b/routers/commentsRouter_controllers.go @@ -1690,6 +1690,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: "TestStartOrEndOpStore", + Router: `/TestStartOrEndOpStore`, + AllowHTTPMethods: []string{"get"}, + 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: "UpdateAllWeiXinRemark",