package tao_vegetable import ( "encoding/json" "fmt" "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability591" "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability591/domain" request2 "git.rosy.net.cn/baseapi/platformapi/tao_vegetable/sdk/ability591/request" "git.rosy.net.cn/baseapi/utils" "git.rosy.net.cn/jx-callback/globals" "io/ioutil" "net/http" ) // ReaderOrderInfo 获取订单状态回调 func (a *API) ReaderOrderInfo(c *http.Request) (*CallbackOrder, error) { body, _ := ioutil.ReadAll(c.Body) if len(body) == 0 { return nil, nil } var callbackOrder *CallbackOrder if err := json.Unmarshal(body, &callbackOrder); err != nil { return nil, err } return callbackOrder, nil } // QueryOrderDetail 自配送查询订单详情 func (a *API) QueryOrderDetail(req *request2.AlibabaAelophyOrderGetRequest) (*domain.AlibabaAelophyOrderGetOrderResponse, error) { globals.SugarLogger.Debugf("进入 QueryOrderDetail") client := ability591.NewAbility591(&a.client) data, _ := client.AlibabaAelophyOrderGet(req, a.token) if !*data.ApiResult.Success { globals.SugarLogger.Debugf("requestId[%s],err[%s]", data.RequestId, utils.Format4Output(data, false)) return nil, fmt.Errorf(*data.ApiResult.ErrMsg) } return data.ApiResult.Model, nil } // DeliveryFinish 订单一下的没一个状态通知接口 // ACCEPTED = 商户接单 REJECTED = 商户取消订单 PICKED = 拣货完成 PACKAGED = 打包出库 SHIPPING = 开始配送 SIGN = 用户签收 REFUSED = 用户拒收 func (a *API) DeliveryFinish(req *request2.AlibabaAelophyOrderWorkCallbackRequest) error { globals.SugarLogger.Debugf("进入 DeliveryFinish") client := ability591.NewAbility591(&a.client) data, _ := client.AlibabaAelophyOrderWorkCallback(req, a.token) if !*data.ApiResult.Success { globals.SugarLogger.Debugf("requestId[%s],err[%s]", data.RequestId, utils.Format4Output(data, false)) return fmt.Errorf(*data.ApiResult.ErrMsg) } return nil } // DeliveryTrajectory 自配送轨迹回传(骑手开始配送之后同步订单数据) func (a *API) DeliveryTrajectory(req *request2.AlibabaAelophyOrderLogisticsTraceCallbackRequest) error { globals.SugarLogger.Debugf("进入 DeliveryTrajectory") client := ability591.NewAbility591(&a.client) data, _ := client.AlibabaAelophyOrderLogisticsTraceCallback(req, a.token) if !*data.ApiResult.Success { globals.SugarLogger.Debugf("requestId[%s],err[%s]", data.RequestId, utils.Format4Output(data, false)) return fmt.Errorf(*data.ApiResult.ErrMsg) } return nil }