|
|
|
|
@@ -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}
|
|
|
|
|
}
|
|
|
|
|
|