package jdapi import ( "git.rosy.net.cn/baseapi/utils" ) const ( OrderStatusAddComment = "12001" OrderStatusModifyComment = "12006" OrderStatusTipChanged = "12008" OrderStatusPurchased = "41000" // 也即待处理,JD的消息很怪,新定单消息发过来是32000,但如果不是自动接单的,去查却是41000?,接单后才变为32000 OrderStatusNew = "32000" OrderStatusAdjust = "33080" OrderStatusWaitOutStore = "32001" OrderStatusFinishedPickup = "2" OrderStatusDelivering = "33040" OrderStatusDelivered = "33060" OrderStatusFinished = "90000" OrderStatusCanceled = "20020" OrderStatusUserApplyCancel = "20030" // 这个其实不是一个状态,是一个动作 OrderStatusLocked = "20010" OrderStatusUnlocked = "20050" OrderStatusInfoChanged = "1" ) const ( DeliveryStatusWait4Grap = "10" DeliveryStatusAccepted = "20" DeliveryStatusCourierCanceled = "21" DeliveryStatusCourierArrived = "23" DeliveryStatusFailedGetGoods = "25" DeliveryStatusFailedGetGoodsRejected = "26" DeliveryStatusFailedGetGoodsWaiting = "27" DeliveryStatusGotGoods = "30" DeliveryStatusFailedDelivery = "35" DeliveryStatusFinished = "40" ) const ( PromotionTypeNormal = 1 PromotionTypeSeckill = 2 PromotionTypeDirectDown = 3 PromotionTypeLimitedTime = 4 PromotionTypeAddMoneyBuy = 1202 PromotionTypeOverflowGiveGift = 1203 PromotionTypeBuyGiveGift = 6 ) func (a API) OrderQuery(jdParams map[string]interface{}) (retVal []interface{}, err error) { retVal, err = a.AccessAPIHavePage("order/es/query", jdParams, nil, nil, nil) return } // orderFreightMoney 基础运费 // tips 商家承担小费 // merchantPaymentDistanceFreightMoney 取件服务费(开票)(正向单展示远距离运费;售后单则展示达达售后运费) // orderBaseFreightMoney ? func (a API) QuerySingleOrder(orderId string) (map[string]interface{}, error) { jdParams := make(map[string]interface{}) jdParams["orderId"] = orderId result, err := a.AccessAPIHavePage("order/es/query", jdParams, nil, nil, nil) if err != nil { return nil, err } return result[0].(map[string]interface{}), nil } func (a API) LegacyQuerySingleOrder(orderId string) (map[string]interface{}, error) { jdParams := make(map[string]interface{}) jdParams["orderId"] = orderId result, err := a.AccessAPI("order/es/query", jdParams) if err != nil { return nil, err } dataStr, _ := result["data"].(string) var data map[string]interface{} utils.UnmarshalUseNumber([]byte(dataStr), &data) result["data"] = data var dataResult map[string]interface{} utils.UnmarshalUseNumber([]byte(data["result"].(string)), &dataResult) data["result"] = dataResult return result, nil } func (a API) OrderAcceptOperate(orderId string, isAgreed bool) (interface{}, error) { jdParams := map[string]interface{}{ "orderId": orderId, "isAgreed": utils.Bool2String(isAgreed), "operator": utils.GetAPIOperator(), } return a.AccessAPINoPage("ocs/orderAcceptOperate", jdParams, nil, nil) }