1
This commit is contained in:
@@ -29,16 +29,102 @@ func (a *API) GetTiktokOrderDetail(orderId string) (*order_orderDetail_response.
|
||||
}
|
||||
|
||||
// CreateOrderCallback 订单创建,抖店创建订单后,回调消息通知本服务器
|
||||
func (a *API) CreateOrderCallback(request *http.Request) (resp []*OrderCallback, callbackResponse *CallbackResponse) {
|
||||
data, err := ioutil.ReadAll(request.Body)
|
||||
func (a *API) CreateOrderCallback(request *http.Request) ([]*OrderCallback, *CallbackResponse) {
|
||||
orderStatus, err := ioutil.ReadAll(request.Body)
|
||||
if err != nil {
|
||||
return nil, &CallbackResponse{Code: CallbackFailCode, Msg: CallbackFail}
|
||||
}
|
||||
|
||||
orderNotify := []*OrderCallback{}
|
||||
if err := json.Unmarshal(data, &orderNotify); err != nil {
|
||||
var resp []*OrderCallback
|
||||
if err := json.Unmarshal(orderStatus, &resp); err != nil {
|
||||
baseapi.SugarLogger.Debugf("Tiktok Notify failed with err:%v", err)
|
||||
return nil, &CallbackResponse{Code: CallbackFailCode, Msg: CallbackFail}
|
||||
}
|
||||
return orderNotify, &CallbackResponse{Code: CallbackSuccessCode, Msg: CallbackSuccess}
|
||||
|
||||
for _, data := range resp {
|
||||
switch data.Tag {
|
||||
case CallbackCreatedOrderMsgTagId: // 创建订单
|
||||
create := CreateOrderData{}
|
||||
if err := json.Unmarshal([]byte(data.Data), create); err != nil {
|
||||
return nil, CallbackResponseErr(false)
|
||||
}
|
||||
data.Body[CallbackCreatedOrderMsgTagId] = append(data.Body[CallbackCreatedOrderMsgTagId], create)
|
||||
case CallbackPayOrderMsgTagId: // 支付订单
|
||||
create := PayOrderData{}
|
||||
if err = json.Unmarshal([]byte(data.Data), create); err != nil {
|
||||
return nil, CallbackResponseErr(false)
|
||||
}
|
||||
data.Body[CallbackPayOrderMsgTagId] = append(data.Body[CallbackPayOrderMsgTagId], create)
|
||||
case CallbackWaitOrderMsgTagId: // 支付订单待处理(风控审核)
|
||||
create := WaitOrderData{}
|
||||
if err = json.Unmarshal([]byte(data.Data), create); err != nil {
|
||||
return nil, CallbackResponseErr(false)
|
||||
}
|
||||
data.Body[CallbackWaitOrderMsgTagId] = append(data.Body[CallbackWaitOrderMsgTagId], create)
|
||||
case CallbackPartGoodsMsgTagId: // 卖家部分发货
|
||||
create := SomeSendOrderData{}
|
||||
if err = json.Unmarshal([]byte(data.Data), create); err != nil {
|
||||
return nil, CallbackResponseErr(false)
|
||||
}
|
||||
data.Body[CallbackPartGoodsMsgTagId] = append(data.Body[CallbackPartGoodsMsgTagId], create)
|
||||
case CallbackPartAllGoodsMsgTagId: // 卖家发货
|
||||
create := BusinessDeliveryData{}
|
||||
if err = json.Unmarshal([]byte(data.Data), create); err != nil {
|
||||
return nil, CallbackResponseErr(false)
|
||||
}
|
||||
data.Body[CallbackPartAllGoodsMsgTagId] = append(data.Body[CallbackPartAllGoodsMsgTagId], create)
|
||||
case CallbackCancelOrderMsgTagId: // 取消订单
|
||||
create := CancelOrderData{}
|
||||
if err = json.Unmarshal([]byte(data.Data), create); err != nil {
|
||||
return nil, CallbackResponseErr(false)
|
||||
}
|
||||
data.Body[CallbackCancelOrderMsgTagId] = append(data.Body[CallbackCancelOrderMsgTagId], create)
|
||||
case CallbackSuccessOrderMsgTagId: // 卖家确认收货时,会自动完成
|
||||
create := SuccessOrderData{}
|
||||
if err = json.Unmarshal([]byte(data.Data), create); err != nil {
|
||||
return nil, CallbackResponseErr(false)
|
||||
}
|
||||
data.Body[CallbackSuccessOrderMsgTagId] = append(data.Body[CallbackSuccessOrderMsgTagId], create)
|
||||
case CallbackWayBillChangeOrderMsgTagId: // 发货物流消息便跟
|
||||
create := WayBillChangeData{}
|
||||
if err = json.Unmarshal([]byte(data.Data), create); err != nil {
|
||||
return nil, CallbackResponseErr(false)
|
||||
}
|
||||
data.Body[CallbackWayBillChangeOrderMsgTagId] = append(data.Body[CallbackWayBillChangeOrderMsgTagId], create)
|
||||
case CallbackReceivingChangeOrderMsgTagId: // 收货地址消息变更(商家审核通过触发)
|
||||
create := ReceivingAddressChangeData{}
|
||||
if err = json.Unmarshal([]byte(data.Data), create); err != nil {
|
||||
return nil, CallbackResponseErr(false)
|
||||
}
|
||||
data.Body[CallbackReceivingChangeOrderMsgTagId] = append(data.Body[CallbackReceivingChangeOrderMsgTagId], create)
|
||||
case CallbackChangeMoneyMsgTagId: // 卖家修改订单/运单金额回调
|
||||
create := UpdateAmountChangeData{}
|
||||
if err = json.Unmarshal([]byte(data.Data), create); err != nil {
|
||||
return nil, CallbackResponseErr(false)
|
||||
}
|
||||
data.Body[CallbackChangeMoneyMsgTagId] = append(data.Body[CallbackChangeMoneyMsgTagId], create)
|
||||
case CallbackBusinessRemarkMsgTagId: // 买家收货消息变更(手机,地址,姓名),用户C端修改触发(需要上面审核接口)
|
||||
create := BuyerUpdateWayBillData{}
|
||||
if err = json.Unmarshal([]byte(data.Data), create); err != nil {
|
||||
return nil, CallbackResponseErr(false)
|
||||
}
|
||||
data.Body[CallbackBusinessRemarkMsgTagId] = append(data.Body[CallbackBusinessRemarkMsgTagId], create)
|
||||
case CallbackApplyUpdateAddressMsgTagId: // 商家修改交易备注回调
|
||||
create := BusinessUpdateRemakeData{}
|
||||
if err = json.Unmarshal([]byte(data.Data), create); err != nil {
|
||||
return nil, CallbackResponseErr(false)
|
||||
}
|
||||
data.Body[CallbackApplyUpdateAddressMsgTagId] = append(data.Body[CallbackApplyUpdateAddressMsgTagId], create)
|
||||
case CallbackSendOrderTimeChangeMsgTagId: // 订单发货时消息变更回调
|
||||
create := AppointmentChangeData{}
|
||||
if err = json.Unmarshal([]byte(data.Data), create); err != nil {
|
||||
return nil, CallbackResponseErr(false)
|
||||
}
|
||||
data.Body[CallbackSendOrderTimeChangeMsgTagId] = append(data.Body[CallbackSendOrderTimeChangeMsgTagId], create)
|
||||
default:
|
||||
return nil, CallbackResponseErr(false)
|
||||
}
|
||||
}
|
||||
|
||||
return resp, &CallbackResponse{Code: CallbackSuccessCode, Msg: CallbackSuccess}
|
||||
}
|
||||
|
||||
@@ -12,10 +12,10 @@ type PublicOrderCallback struct {
|
||||
}
|
||||
|
||||
type OrderCallback struct {
|
||||
Tag string `json:"tag"` // 消息种类,订单创建消息的tag值为"100"
|
||||
MsgId string `json:"msgId"` //消息记录id
|
||||
Data string `json:"data"` // 消息正文
|
||||
Body map[string]interface{} `json:"body"`
|
||||
Tag string `json:"tag"` // 消息种类,订单创建消息的tag值为"100"
|
||||
MsgId string `json:"msgId"` //消息记录id
|
||||
Data string `json:"data"` // 消息正文
|
||||
Body map[string][]interface{} `json:"body"`
|
||||
}
|
||||
|
||||
//#region 创建订单消息通知
|
||||
|
||||
@@ -30,7 +30,6 @@ import (
|
||||
// msg.Tag = params.Get("tag")
|
||||
// msg.MsgId = params.Get("msgId")
|
||||
//
|
||||
//
|
||||
// var tmpObj interface{}
|
||||
// switch msg.Tag {
|
||||
// case CmdOrderPartRefund:
|
||||
|
||||
Reference in New Issue
Block a user