This commit is contained in:
邹宗楠
2022-11-25 14:17:06 +08:00
parent 6ac39c8a9c
commit 7951af8df8
3 changed files with 58 additions and 45 deletions

View File

@@ -105,7 +105,7 @@ func (a *API) QueryOrderDetail(orderNumber, userOrderNum string) ([]QueryOrderDe
// QueryAccountBill 余额查询
func (a *API) QueryAccountBill() (string, error) {
data, err := a.AccessAPI(BaseUrl, QueryAccountBill, http.MethodPost, nil)
data, err := a.AccessAPI(BaseUrl, QueryAccountBill, http.MethodPost, map[string]interface{}{})
if err != nil {
return "", err
}

View File

@@ -481,137 +481,137 @@ func (a *API) CreateOrderCallback(orderStatus []byte) (map[string][]interface{},
}
// GetCallbackOrderId 获取回调函数订单id
func (a *API) GetCallbackOrderId(msgId string, data interface{}) (string, *CallbackResponse) {
func (a *API) GetCallbackOrderId(msgId string, data interface{}) (string, int64, *CallbackResponse) {
switch msgId {
case CallbackCreatedOrderMsgTagId: // 创建订单
create := CreateOrderData{}
if err := utils.Map2StructByJson(data, &create, false); err != nil {
return "", Err2CallbackResponse(err, "")
return "", 0, Err2CallbackResponse(err, "")
}
return utils.Int64ToStr(create.PId), Err2CallbackResponse(nil, "")
return utils.Int64ToStr(create.PId), create.ShopId, Err2CallbackResponse(nil, "")
case CallbackPayOrderMsgTagId: // 支付订单
create := PayOrderData{}
if err := utils.Map2StructByJson(data, &create, false); err != nil {
return "", CallbackResponseErr(false)
return "", 0, CallbackResponseErr(false)
}
return utils.Int64ToStr(create.PId), Err2CallbackResponse(nil, "")
return utils.Int64ToStr(create.PId), create.ShopId, Err2CallbackResponse(nil, "")
case CallbackWaitOrderMsgTagId: // 支付订单待处理(风控审核)
create := WaitOrderData{}
if err := utils.Map2StructByJson(data, &create, false); err != nil {
return "", CallbackResponseErr(false)
return "", 0, CallbackResponseErr(false)
}
return utils.Int64ToStr(create.PId), Err2CallbackResponse(nil, "")
return utils.Int64ToStr(create.PId), create.ShopId, Err2CallbackResponse(nil, "")
case CallbackPartGoodsMsgTagId: // 卖家部分发货
create := SomeSendOrderData{}
if err := utils.Map2StructByJson(data, &create, false); err != nil {
return "", CallbackResponseErr(false)
return "", 0, CallbackResponseErr(false)
}
return utils.Int64ToStr(create.PId), Err2CallbackResponse(nil, "")
return utils.Int64ToStr(create.PId), create.ShopId, Err2CallbackResponse(nil, "")
case CallbackPartAllGoodsMsgTagId: // 卖家发货
create := BusinessDeliveryData{}
if err := utils.Map2StructByJson(data, &create, false); err != nil {
return "", CallbackResponseErr(false)
return "", 0, CallbackResponseErr(false)
}
return utils.Int64ToStr(create.PId), Err2CallbackResponse(nil, "")
return utils.Int64ToStr(create.PId), create.ShopId, Err2CallbackResponse(nil, "")
case CallbackCancelOrderMsgTagId: // 取消订单
create := CancelOrderData{}
if err := utils.Map2StructByJson(data, &create, false); err != nil {
return "", CallbackResponseErr(false)
return "", 0, CallbackResponseErr(false)
}
return utils.Int64ToStr(create.PId), Err2CallbackResponse(nil, "")
return utils.Int64ToStr(create.PId), create.ShopId, Err2CallbackResponse(nil, "")
case CallbackSuccessOrderMsgTagId: // 卖家确认收货时,会自动完成
create := SuccessOrderData{}
if err := utils.Map2StructByJson(data, &create, false); err != nil {
return "", CallbackResponseErr(false)
return "", 0, CallbackResponseErr(false)
}
return utils.Int64ToStr(create.PId), Err2CallbackResponse(nil, "")
return utils.Int64ToStr(create.PId), create.ShopId, Err2CallbackResponse(nil, "")
case CallbackWayBillChangeOrderMsgTagId: // 发货物流消息便跟
create := WayBillChangeData{}
if err := utils.Map2StructByJson(data, &create, false); err != nil {
return "", CallbackResponseErr(false)
return "", 0, CallbackResponseErr(false)
}
return utils.Int64ToStr(create.PId), Err2CallbackResponse(nil, "")
return utils.Int64ToStr(create.PId), create.ShopId, Err2CallbackResponse(nil, "")
case CallbackReceivingChangeOrderMsgTagId: // 收货地址消息变更(商家审核通过触发)
create := ReceivingAddressChangeData{}
if err := utils.Map2StructByJson(data, &create, false); err != nil {
return "", CallbackResponseErr(false)
return "", 0, CallbackResponseErr(false)
}
return utils.Int64ToStr(create.PId), Err2CallbackResponse(nil, "")
return utils.Int64ToStr(create.PId), create.ShopId, Err2CallbackResponse(nil, "")
case CallbackChangeMoneyMsgTagId: // 卖家修改订单/运单金额回调
create := UpdateAmountChangeData{}
if err := utils.Map2StructByJson(data, &create, false); err != nil {
return "", CallbackResponseErr(false)
return "", 0, CallbackResponseErr(false)
}
return utils.Int64ToStr(create.PId), Err2CallbackResponse(nil, "")
return utils.Int64ToStr(create.PId), create.ShopId, Err2CallbackResponse(nil, "")
case CallbackBusinessRemarkMsgTagId: // 买家收货消息变更(手机,地址,姓名),用户C端修改触发(需要上面审核接口)
create := BuyerUpdateWayBillData{}
if err := utils.Map2StructByJson(data, &create, false); err != nil {
return "", CallbackResponseErr(false)
return "", 0, CallbackResponseErr(false)
}
return utils.Int64ToStr(create.PId), Err2CallbackResponse(nil, "")
return utils.Int64ToStr(create.PId), create.ShopId, Err2CallbackResponse(nil, "")
case CallbackApplyUpdateAddressMsgTagId: // 商家修改交易备注回调
create := BusinessUpdateRemakeData{}
if err := utils.Map2StructByJson(data, &create, false); err != nil {
return "", CallbackResponseErr(false)
return "", 0, CallbackResponseErr(false)
}
return utils.Int64ToStr(create.PId), Err2CallbackResponse(nil, "")
return utils.Int64ToStr(create.PId), create.ShopId, Err2CallbackResponse(nil, "")
case CallbackSendOrderTimeChangeMsgTagId: // 订单发货时消息变更回调
create := AppointmentChangeData{}
if err := utils.Map2StructByJson(data, &create, false); err != nil {
return "", CallbackResponseErr(false)
return "", 0, CallbackResponseErr(false)
}
return create.PId, Err2CallbackResponse(nil, "")
return create.PId, create.ShopId, Err2CallbackResponse(nil, "")
/*********下面属于订单退货消息************/
case CallbackRefundOrderMsgTagId: // 买家发起售后申请消息
create := BuyerRefundCreatedData{}
if err := utils.Map2StructByJson(data, &create, false); err != nil {
return "", CallbackResponseErr(false)
return "", 0, CallbackResponseErr(false)
}
return utils.Int64ToStr(create.PId), Err2CallbackResponse(nil, "")
return utils.Int64ToStr(create.PId), int64(create.ShopId), Err2CallbackResponse(nil, "")
case CallbackUpdateRefundOrderMsgTagId: // 买家修改售后申请消息
create := BuyerRefundModifiedData{}
if err := utils.Map2StructByJson(data, &create, false); err != nil {
return "", CallbackResponseErr(false)
return "", 0, CallbackResponseErr(false)
}
return utils.Int64ToStr(create.PId), Err2CallbackResponse(nil, "")
return utils.Int64ToStr(create.PId), int64(create.ShopId), Err2CallbackResponse(nil, "")
case CallbackRefundOrderSuccessMsgTagId: // 退款成功消息
create := BusinessRefundSuccessData{}
if err := utils.Map2StructByJson(data, &create, false); err != nil {
return "", CallbackResponseErr(false)
return "", 0, CallbackResponseErr(false)
}
return utils.Int64ToStr(create.PId), Err2CallbackResponse(nil, "")
return utils.Int64ToStr(create.PId), int64(create.ShopId), Err2CallbackResponse(nil, "")
case CallbackRefundOrderRefuseMsgTagId: // 拒绝退款消息
create := BusinessNotRefundRefusedData{}
if err := utils.Map2StructByJson(data, &create, false); err != nil {
return "", CallbackResponseErr(false)
return "", 0, CallbackResponseErr(false)
}
return utils.Int64ToStr(create.PId), Err2CallbackResponse(nil, "")
return utils.Int64ToStr(create.PId), int64(create.ShopId), Err2CallbackResponse(nil, "")
case CallbackRefundShopMsgTagId: // 拒绝退货申请消息
create := BusinessNotReturnApplyRefusedData{}
if err := utils.Map2StructByJson(data, &create, false); err != nil {
return "", CallbackResponseErr(false)
return "", 0, CallbackResponseErr(false)
}
return utils.Int64ToStr(create.PId), Err2CallbackResponse(nil, "")
return utils.Int64ToStr(create.PId), int64(create.ShopId), Err2CallbackResponse(nil, "")
case CallbackReturnApplyAgreedMsgTagId: // 卖家同意时,推送此消息
create := BusinessReturnApplyAgreedData{}
if err := utils.Map2StructByJson(data, &create, false); err != nil {
return "", CallbackResponseErr(false)
return "", 0, CallbackResponseErr(false)
}
return utils.Int64ToStr(create.PId), Err2CallbackResponse(nil, "")
return utils.Int64ToStr(create.PId), int64(create.ShopId), Err2CallbackResponse(nil, "")
case CallbackReturnRefundAgreedMsgTagId: // 同意退款消息
create := AppointmentChangeData{}
if err := utils.Map2StructByJson(data, &create, false); err != nil {
return "", CallbackResponseErr(false)
return "", 0, CallbackResponseErr(false)
}
return create.PId, Err2CallbackResponse(nil, "")
return create.PId, create.ShopId, Err2CallbackResponse(nil, "")
case CallbackRefundClosedMsgTagId: // 当买家取消申请或系统超时机制导致退款取消时,会推送此消息
create := UserCancelRefundOrderData{}
if err := utils.Map2StructByJson(data, &create, false); err != nil {
return "", CallbackResponseErr(false)
return "", 0, CallbackResponseErr(false)
}
return utils.Int64ToStr(create.PId), Err2CallbackResponse(nil, "")
return utils.Int64ToStr(create.PId), int64(create.ShopId), Err2CallbackResponse(nil, "")
default:
return "", CallbackResponseErr(false)
return "", 0, CallbackResponseErr(false)
}
}

View File

@@ -276,3 +276,16 @@ func TestGenerateGetURL(t *testing.T) {
t.Fatal("GenerateGetURL错误")
}
}
func TestUtilsIsNil(t *testing.T) {
param := make(map[string]interface{}, 0)
param["aaa"] = "1"
param["bbb"] = ""
param["ccc"] = nil
fmt.Println(param["aaa"] == nil)
fmt.Println(param["bbb"] == nil)
fmt.Println(param["ccc"] == nil)
fmt.Println(param["bbb"] == "")
fmt.Println(param["kkk"] == "")
}