- ebaiapi.OrderIdConvert
- elmapi.GetAllOrders
This commit is contained in:
@@ -171,3 +171,27 @@ func (a *API) OrderDeliveryGet(orderID string) (deliveryInfo map[string]interfac
|
||||
}
|
||||
return nil, err
|
||||
}
|
||||
|
||||
func (a *API) OrderIdConvert(orderID string, isElemeOrder bool) (convertedOrderID string, err error) {
|
||||
key := "order_id"
|
||||
resultKey := "eleme_order_id"
|
||||
if isElemeOrder {
|
||||
key = "eleme_order_id"
|
||||
resultKey = "order_id"
|
||||
}
|
||||
result, err := a.AccessAPI("order.id.convert", map[string]interface{}{
|
||||
key: orderID,
|
||||
})
|
||||
if err == nil {
|
||||
return utils.Interface2String(result.Data.(map[string]interface{})[resultKey]), nil
|
||||
}
|
||||
return "", err
|
||||
}
|
||||
|
||||
func (a *API) SmartOrderIdConvert(orderID string) (convertedOrderID string, err error) {
|
||||
return a.OrderIdConvert(orderID, isOrderIDEleme(orderID))
|
||||
}
|
||||
|
||||
func isOrderIDEleme(orderID string) bool {
|
||||
return len(orderID) == len("3026328756122155111")
|
||||
}
|
||||
|
||||
@@ -44,3 +44,11 @@ func TestOrderDeliveryGet(t *testing.T) {
|
||||
}
|
||||
t.Log(result)
|
||||
}
|
||||
|
||||
func TestSmartOrderIdConvert(t *testing.T) {
|
||||
result, err := api.SmartOrderIdConvert("3035779376398878822")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
t.Log(result)
|
||||
}
|
||||
|
||||
@@ -23,7 +23,7 @@ func init() {
|
||||
// sandbox
|
||||
elmapi = New("623c0904c0d2499e83df15b62902eb65", "RwT214gAsS", "56afff4b9ebd8a7eb532d18fa33f17be57f9b9db", false)
|
||||
// prod
|
||||
// elmapi = New("fee89f45d06f93037dd314ceb78fde7b", "KLRDcOZGrk", "1fc221f8265506531da36fb613d5f5ad673f2e9a", true)
|
||||
// elmapi = New("cf5710018b46e75145eb0f19900bcecd", "KLRDcOZGrk", "1fc221f8265506531da36fb613d5f5ad673f2e9a", true)
|
||||
}
|
||||
|
||||
func TestTest(t *testing.T) {
|
||||
@@ -43,18 +43,6 @@ func TestAccessAPI(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestGetOrder(t *testing.T) {
|
||||
result, err := elmapi.GetOrder("3023582487561731159")
|
||||
if err != nil {
|
||||
t.Fatalf("Error when accessing AccessJDQuery result:%v, error:%v", result, err)
|
||||
} else {
|
||||
shopId := int(utils.MustInterface2Int64(result["shopId"]))
|
||||
if shopId != 157451615 {
|
||||
t.Fatalf("userId is not correct:%v", shopId)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func TestCallbackSign(t *testing.T) {
|
||||
jsonStr := `{"requestId":"200016348669063447","type":18,"appId":78247922,"message":"{\"orderId\":\"3024923917769149510\",\"state\":\"settled\",\"shopId\":157492364,\"updateTime\":1529465510,\"role\":1}","shopId":157492364,"timestamp":1529465510255,"signature":"D65F917D93B4F599B85486C799599141","userId":336072266322770688}`
|
||||
msg, response := elmapi.GetCallbackMsg([]byte(jsonStr))
|
||||
|
||||
@@ -1,5 +1,11 @@
|
||||
package elmapi
|
||||
|
||||
import (
|
||||
"time"
|
||||
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
)
|
||||
|
||||
const (
|
||||
OrderStatusPending = "pending"
|
||||
OrderStatusUnprocessed = "unprocessed"
|
||||
@@ -43,6 +49,10 @@ const (
|
||||
RoleOrderFinished = 9
|
||||
)
|
||||
|
||||
const (
|
||||
MaxGetAllOrdersPageSize = 50
|
||||
)
|
||||
|
||||
func (a *API) GetOrder(orderID string) (map[string]interface{}, error) {
|
||||
result, err := a.AccessAPI("eleme.order.getOrder", map[string]interface{}{
|
||||
"orderId": orderID,
|
||||
@@ -95,3 +105,17 @@ func (a *API) CompleteDeliveryBySelf(orderID, courierPhone string) error {
|
||||
})
|
||||
return err
|
||||
}
|
||||
|
||||
func (a *API) GetAllOrders(shopId string, pageNo, pageSize int, date time.Time) (orderList []map[string]interface{}, err error) {
|
||||
result, err := a.AccessAPI("eleme.order.getAllOrders", map[string]interface{}{
|
||||
"shopId": shopId,
|
||||
"pageNo": pageNo,
|
||||
"pageSize": pageSize,
|
||||
"date": date.Format("2006-01-02"),
|
||||
})
|
||||
if err == nil {
|
||||
innerResult := result.Result.(map[string]interface{})
|
||||
return utils.Slice2MapSlice(innerResult["list"].([]interface{})), nil
|
||||
}
|
||||
return nil, err
|
||||
}
|
||||
|
||||
24
platformapi/elmapi/order_test.go
Normal file
24
platformapi/elmapi/order_test.go
Normal file
@@ -0,0 +1,24 @@
|
||||
package elmapi
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
)
|
||||
|
||||
func TestGetOrder(t *testing.T) {
|
||||
result, err := elmapi.GetOrder("2100664403101818890")
|
||||
if err != nil {
|
||||
t.Fatalf("Error when accessing AccessJDQuery result:%v, error:%v", result, err)
|
||||
} else {
|
||||
sugarLogger.Debug(utils.Format4Output(result, false))
|
||||
// shopId := int(utils.MustInterface2Int64(result["shopId"]))
|
||||
// if shopId != 157451615 {
|
||||
// t.Fatalf("userId is not correct:%v", shopId)
|
||||
// }
|
||||
}
|
||||
}
|
||||
|
||||
func TestGetAllOrders(t *testing.T) {
|
||||
|
||||
}
|
||||
@@ -2,6 +2,8 @@ package elmapi
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
)
|
||||
|
||||
func TestGetUser(t *testing.T) {
|
||||
@@ -17,7 +19,7 @@ func TestGetAccAndStores(t *testing.T) {
|
||||
if err != nil || len(stores) == 0 || len(accs) == 0 {
|
||||
t.Fatalf("GetAccAndStores failed with error:%v", err)
|
||||
}
|
||||
sugarLogger.Debug(stores[0])
|
||||
sugarLogger.Debug(utils.Format4Output(stores, false))
|
||||
}
|
||||
|
||||
func TestGetShop(t *testing.T) {
|
||||
|
||||
Reference in New Issue
Block a user