+ partner.ListOrders
+ AmendMissingOrders
This commit is contained in:
@@ -13,6 +13,7 @@ import (
|
||||
"git.rosy.net.cn/jx-callback/business/jxcallback/scheduler"
|
||||
"git.rosy.net.cn/jx-callback/business/jxutils"
|
||||
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
|
||||
"git.rosy.net.cn/jx-callback/business/jxutils/tasksch"
|
||||
"git.rosy.net.cn/jx-callback/business/model"
|
||||
"git.rosy.net.cn/jx-callback/business/partner"
|
||||
"git.rosy.net.cn/jx-callback/globals"
|
||||
@@ -525,3 +526,51 @@ func (c *PurchaseHandler) AdjustOrder(ctx *jxcontext.Context, order *model.Goods
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
||||
func (c *PurchaseHandler) ListOrders(ctx *jxcontext.Context, parentTask tasksch.ITask, queryDate time.Time, vendorStoreID string) (vendorOrderIDs []string, err error) {
|
||||
if utils.IsTimeZero(queryDate) {
|
||||
return nil, fmt.Errorf("queryDate必须指定")
|
||||
}
|
||||
queryDate = utils.Time2Date(queryDate)
|
||||
|
||||
var vendorStoreIDs []string
|
||||
if vendorStoreID == "" {
|
||||
vendorStoreIDs, err = api.MtwmAPI.PoiGetIDs()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
} else {
|
||||
vendorStoreIDs = []string{vendorStoreID}
|
||||
}
|
||||
task := tasksch.NewParallelTask("mtwm ListOrders", nil, ctx,
|
||||
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
|
||||
vendorStoreID := batchItemList[0].(string)
|
||||
var orderIDs []string
|
||||
seqStart := 1
|
||||
for {
|
||||
seqEnd := seqStart + mtwmapi.MaxGap4GetOrderIdByDaySeq - 1
|
||||
tmpOrderIDs, err2 := api.MtwmAPI.GetOrderIdByDaySeq(vendorStoreID, queryDate, seqStart, seqEnd)
|
||||
if len(tmpOrderIDs) > 0 {
|
||||
for _, v := range tmpOrderIDs {
|
||||
orderIDs = append(orderIDs, utils.Int64ToStr(v))
|
||||
}
|
||||
}
|
||||
if err = err2; err != nil || len(tmpOrderIDs) == 0 {
|
||||
err = nil
|
||||
break
|
||||
}
|
||||
seqStart = seqEnd + 1
|
||||
}
|
||||
retVal = orderIDs
|
||||
return retVal, nil
|
||||
}, vendorStoreIDs)
|
||||
tasksch.HandleTask(task, parentTask, true).Run()
|
||||
orderList, err := task.GetResult(0)
|
||||
if err == nil && len(orderList) > 0 {
|
||||
vendorOrderIDs = make([]string, len(orderList))
|
||||
for k, v := range orderList {
|
||||
vendorOrderIDs[k] = v.(string)
|
||||
}
|
||||
}
|
||||
return vendorOrderIDs, err
|
||||
}
|
||||
|
||||
@@ -2,13 +2,24 @@ package mtwm
|
||||
|
||||
import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
|
||||
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
_ "git.rosy.net.cn/jx-callback/business/jxcallback/orderman"
|
||||
)
|
||||
|
||||
func TestGetOrder(t *testing.T) {
|
||||
result, err := new(PurchaseHandler).GetOrder("33437032333978492")
|
||||
result, err := curPurchaseHandler.GetOrder("33437032333978492")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
t.Log(utils.Format4Output(result, false))
|
||||
}
|
||||
|
||||
func TestListOrders(t *testing.T) {
|
||||
result, err := curPurchaseHandler.ListOrders(jxcontext.AdminCtx, nil, time.Now(), "4626746")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user