diff --git a/business/jxcallback/orderman/orderman_ext.go b/business/jxcallback/orderman/orderman_ext.go index 16907e81e..f6992174c 100644 --- a/business/jxcallback/orderman/orderman_ext.go +++ b/business/jxcallback/orderman/orderman_ext.go @@ -939,7 +939,7 @@ func (c *OrderManager) AmendMissingOrders(ctx *jxcontext.Context, vendorIDs []in } if len(dateVendorList) > 0 { var missingOrderList []*tOrderVendorPair - var updateOrderStatusList []*tOrderVendorPair + var updateOrderStatusList []*model.GoodsOrder db := dao.GetDB() vendorStoreIDMap := make(map[int]string) if storeID > 0 { @@ -994,14 +994,14 @@ func (c *OrderManager) AmendMissingOrders(ctx *jxcontext.Context, vendorIDs []in if goodsOrder == nil { missingOrderList = append(missingOrderList, pair) } else { - if goodsOrder.Status != model.OrderStatusFinished && goodsOrder.Status != model.OrderStatusCanceled { + if model.IsOrderFinalStatus(goodsOrder.Status) { if goodsOrder.BusinessType == model.BusinessTypeImmediate { if time.Now().Sub(goodsOrder.CreatedAt).Hours() >= orderSubTimeImmediatelyArrive { - updateOrderStatusList = append(updateOrderStatusList, pair) + updateOrderStatusList = append(updateOrderStatusList, goodsOrder) } } else { if time.Now().Sub(goodsOrder.ExpectedDeliveredTime).Hours() >= orderSubTimeDelayArrive { - updateOrderStatusList = append(updateOrderStatusList, pair) + updateOrderStatusList = append(updateOrderStatusList, goodsOrder) } } } @@ -1027,12 +1027,12 @@ func (c *OrderManager) AmendMissingOrders(ctx *jxcontext.Context, vendorIDs []in case 2: task3 := tasksch.NewParallelTask("AmendMissingOrders UpdateOrders", tasksch.NewParallelConfig().SetIsContinueWhenError(isContinueWhenError), ctx, func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) { - pair := batchItemList[0].(*tOrderVendorPair) - if handler := partner.GetPurchaseOrderHandlerFromVendorID(pair.VendorID); handler != nil { - order, err2 := handler.GetOrder(pair.VendorOrgCode, pair.VendorOrderID) + goodsOrder := batchItemList[0].(*model.GoodsOrder) + if handler := partner.GetPurchaseOrderHandlerFromVendorID(goodsOrder.VendorID); handler != nil { + status, err2 := handler.GetOrderStatus(goodsOrder.VendorOrgCode, goodsOrder.VendorOrderID) if err = err2; err == nil { - if order.Status == model.OrderStatusCanceled || order.Status == model.OrderStatusFinished { - err = c.UpdateOrderFields(order, []string{"Status"}) + if status == model.OrderStatusCanceled || status == model.OrderStatusFinished { + _, err = dao.UpdateEntity(db, goodsOrder, "Status") } } } diff --git a/business/jxstore/cms/sku.go b/business/jxstore/cms/sku.go index cbd40eae3..05f80c6eb 100644 --- a/business/jxstore/cms/sku.go +++ b/business/jxstore/cms/sku.go @@ -1344,10 +1344,10 @@ func UpdateSkuNamesExPrefix(ctx *jxcontext.Context, nameIDs []int, exPrefix, fro db = dao.GetDB() ) if fromTime != "" { - fromTimeP = utils.Str2Time(fromTime) + fromTimeP = utils.Time2Date(utils.Str2Time(fromTime)) } if toTime != "" { - toTimeP = utils.Str2Time(toTime) + toTimeP = utils.Time2Date(utils.Str2Time(toTime)) } if toTimeP.Before(fromTimeP) { return "", fmt.Errorf("结束时间不可以小于开始时间!开始时间:[%v],结束时间:[%v]", fromTimeP, toTimeP) diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go index 122ad6a70..c02b9ef74 100644 --- a/business/jxstore/cms/store_sku.go +++ b/business/jxstore/cms/store_sku.go @@ -2532,8 +2532,15 @@ func GetVendorStoreSkuPrice(ctx *jxcontext.Context, vendorIDs []int, skuID int, storeDetail *dao.StoreDetail inStoreSku = &partner.StoreSkuInfo{} ) - - skuNameList, err := dao.GetSkus(dao.GetDB(), []int{skuID}, nil, nil, nil) + storeMap := &model.StoreMap{ + VendorID: vendorID, + Status: model.SkuStatusNormal, + VendorStoreID: vendorStoreID, + } + db := dao.GetDB() + dao.GetEntity(db, storeMap, "StoreID") + fmt.Println(storeMap.StoreID) + skuNameList, err := dao.GetSkus(db, []int{skuID}, nil, nil, nil) if err != nil { return retVal, err } diff --git a/business/jxstore/misc/misc.go b/business/jxstore/misc/misc.go index 9f599670c..6fa55f25e 100644 --- a/business/jxstore/misc/misc.go +++ b/business/jxstore/misc/misc.go @@ -165,20 +165,13 @@ func syncStoreSku() { if (time.Now().Unix()/24*3600)%10 == 0 { syncFlag |= model.SyncFlagSaleMask } - db := dao.GetDB() task := tasksch.NewParallelTask("同步京西与平台数据", nil, jxcontext.AdminCtx, func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) { step := batchItemList[0].(int) errList := errlist.New() switch step { case 0: - //清除skuname中额外前缀过期的时间 - err = cms.DeleteSkuNameExPrefixOverdue(db) - //为sku和storeSkuBind打上要更新商品额外前缀的标记 - err = cms.SetMultiStoreSkuSyncModifyStatus(db, partner.GetMultiStoreVendorIDs()) - err = cms.SetSingleStoreSkuSyncModifyStatus(db, partner.GetSingleStoreVendorIDs()) - case 1: - _, err = cms.CurVendorSync.LoopMultiStoresVendors(jxcontext.AdminCtx, db, "同步多门店平台商品库", false, true, + _, err = cms.CurVendorSync.LoopMultiStoresVendors(jxcontext.AdminCtx, dao.GetDB(), "同步多门店平台商品库", false, true, func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) { vendorInfo := batchItemList[0].(*cms.MultiStoreVendorInfo) _, err = cms.FullSyncVendorStuff(jxcontext.AdminCtx, task, vendorInfo.VendorID, vendorInfo.OrgCode, false, true) @@ -187,20 +180,20 @@ func syncStoreSku() { errList.AddErr(err) // cms.CurVendorSync.SyncStoresSkus2(jxcontext.AdminCtx, dao.GetDB(), partner.GetMultiStoreVendorIDs(), nil, false, nil, []int{27379}, syncFlag, true, true) - _, err = cms.CurVendorSync.FullSyncStoresSkus(jxcontext.AdminCtx, db, partner.GetMultiStoreVendorIDs(), nil, false, []int{27379}, true, true) + _, err = cms.CurVendorSync.FullSyncStoresSkus(jxcontext.AdminCtx, dao.GetDB(), partner.GetMultiStoreVendorIDs(), nil, false, []int{27379}, true, true) errList.AddErr(err) - case 2: + case 1: _, err = cms.CurVendorSync.AmendAndPruneStoreStuff(jxcontext.AdminCtx, partner.GetSingleStoreVendorIDs(), nil, false, true, cms.AmendPruneAll, false) errList.AddErr(err) SaveImportantTaskID(TaskNameSyncStoreSku, SpecialTaskID) - taskID, err2 := cms.CurVendorSync.SyncStoresSkus2(jxcontext.AdminCtx, db, partner.GetSingleStoreVendorIDs(), nil, false, nil, nil, syncFlag, true, true) + taskID, err2 := cms.CurVendorSync.SyncStoresSkus2(jxcontext.AdminCtx, dao.GetDB(), partner.GetSingleStoreVendorIDs(), nil, false, nil, nil, syncFlag, true, true) errList.AddErr(err2) SaveImportantTaskID(TaskNameSyncStoreSku, taskID) } err = errList.GetErrListAsOne() return retVal, err - }, []int{0, 1, 2}) + }, []int{0, 1}) tasksch.HandleTask(task, nil, true).Run() } diff --git a/business/model/sku.go b/business/model/sku.go index dd99174e2..86af76811 100644 --- a/business/model/sku.go +++ b/business/model/sku.go @@ -170,7 +170,7 @@ type SkuName struct { Prefix string `orm:"size(255)" json:"prefix"` Name string `orm:"size(255);index" json:"name"` - ExPrefix string `orm:"size(255);index" json:"exPrefix"` + ExPrefix string `orm:"size(255)" json:"exPrefix"` ExPrefixBegin *time.Time `orm:"null" json:"exPrefixBegin"` ExPrefixEnd *time.Time `orm:"null" json:"exPrefixEnd"` @@ -211,7 +211,7 @@ func (*SkuName) TableUnique() [][]string { func (*SkuName) TableIndex() [][]string { return [][]string{ - []string{"ExPrefix", "ExPrefixBegin", "ExPrefixEnd"}, + []string{"ExPrefix", "ExPrefixBegin", "ExPrefixEnd", "DeletedAt"}, } } diff --git a/business/partner/purchase/ebai/store_sku2.go b/business/partner/purchase/ebai/store_sku2.go index 878550bee..ec7e619d8 100644 --- a/business/partner/purchase/ebai/store_sku2.go +++ b/business/partner/purchase/ebai/store_sku2.go @@ -320,7 +320,7 @@ func (p *PurchaseHandler) GetStoreSkusFullInfo(ctx *jxcontext.Context, parentTas params.SkuID = utils.Str2Int64WithDefault(storeSkuList[0].VendorSkuID, 0) } } - page1, err := api.EbaiAPI.SkuList(vendorStoreID, params) + page1, err := api.EbaiAPI.SkuList(utils.Int2Str(storeID), params) if err == nil { skuNameList = append(skuNameList, vendorSkuList2Jx(page1.List)...) if page1.Pages > 1 { @@ -334,7 +334,7 @@ func (p *PurchaseHandler) GetStoreSkusFullInfo(ctx *jxcontext.Context, parentTas PageSize: ebaiapi.MaxSkuListPageSize, Page: batchItemList[0].(int), } - pageSku, err2 := api.EbaiAPI.SkuList(vendorStoreID, callParams) + pageSku, err2 := api.EbaiAPI.SkuList(utils.Int2Str(storeID), callParams) if err2 == nil { return pageSku.List, err2 }