- 优化AmendMissingOrders
This commit is contained in:
@@ -1090,15 +1090,23 @@ func (c *OrderManager) AmendMissingOrders(ctx *jxcontext.Context, vendorIDs []in
|
||||
vendorIDs = append(vendorIDs, vendorID)
|
||||
}
|
||||
}
|
||||
type tDateVendorPair struct {
|
||||
QueryDate time.Time
|
||||
VendorID int
|
||||
if len(vendorIDs) == 0 {
|
||||
return "", fmt.Errorf("找不到指定的平台")
|
||||
}
|
||||
|
||||
fromDate = utils.Time2Date(fromDate)
|
||||
if utils.IsTimeZero(toDate) {
|
||||
toDate = fromDate
|
||||
}
|
||||
toDate = utils.Time2Date(toDate)
|
||||
if toDate.Sub(fromDate) > 7*24*time.Hour {
|
||||
return "", fmt.Errorf("最多一次一周,请调整时间")
|
||||
}
|
||||
|
||||
type tDateVendorPair struct {
|
||||
QueryDate time.Time
|
||||
VendorID int
|
||||
}
|
||||
var dateVendorList []*tDateVendorPair
|
||||
for _, vendorID := range vendorIDs {
|
||||
for tmpDate := fromDate; tmpDate.Sub(toDate) <= 0; tmpDate = tmpDate.Add(24 * time.Hour) {
|
||||
@@ -1114,21 +1122,21 @@ func (c *OrderManager) AmendMissingOrders(ctx *jxcontext.Context, vendorIDs []in
|
||||
}
|
||||
if len(dateVendorList) > 0 {
|
||||
var missingOrderList []*tOrderVendorPair
|
||||
db := dao.GetDB()
|
||||
vendorStoreIDMap := make(map[int]string)
|
||||
if storeID > 0 {
|
||||
for _, vendorID := range vendorIDs {
|
||||
storeDetail, err2 := dao.GetStoreDetail(db, storeID, vendorID)
|
||||
if err = err2; err != nil {
|
||||
return "", err
|
||||
}
|
||||
vendorStoreIDMap[vendorID] = storeDetail.VendorStoreID
|
||||
}
|
||||
}
|
||||
task := tasksch.NewSeqTask("AmendMissingOrders", ctx,
|
||||
func(task *tasksch.SeqTask, step int, params ...interface{}) (result interface{}, err error) {
|
||||
switch step {
|
||||
case 0:
|
||||
db := dao.GetDB()
|
||||
vendorStoreIDMap := make(map[int]string)
|
||||
if storeID > 0 {
|
||||
for _, vendorID := range vendorIDs {
|
||||
storeDetail, err2 := dao.GetStoreDetail(db, storeID, vendorID)
|
||||
if err = err2; err != nil {
|
||||
return "", err
|
||||
}
|
||||
vendorStoreIDMap[vendorID] = storeDetail.VendorStoreID
|
||||
}
|
||||
}
|
||||
task1 := tasksch.NewParallelTask("AmendMissingOrders ListOrders", tasksch.NewParallelConfig().SetIsContinueWhenError(isContinueWhenError), ctx,
|
||||
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
|
||||
vendorDate := batchItemList[0].(*tDateVendorPair)
|
||||
|
||||
Reference in New Issue
Block a user