- mtwmapi.CallbackMsg.Data to FormData
This commit is contained in:
@@ -40,8 +40,8 @@ type CallbackResponse struct {
|
||||
|
||||
// !!!特别注意,Data中的数据
|
||||
type CallbackMsg struct {
|
||||
Data url.Values
|
||||
Cmd string
|
||||
FormData url.Values
|
||||
Cmd string
|
||||
}
|
||||
|
||||
var (
|
||||
@@ -77,16 +77,17 @@ func (a *API) GetCallbackMsg(request *http.Request) (msg *CallbackMsg, callbackR
|
||||
msg = &CallbackMsg{
|
||||
Cmd: cmd,
|
||||
}
|
||||
msg.Data = make(url.Values)
|
||||
msg.FormData = make(url.Values)
|
||||
for k, v := range data {
|
||||
// 美团外卖的用户催单信息的timestamp是毫秒(其它的事件是秒),统一归一化为秒
|
||||
if cmd == MsgTypeUserUrgeOrder && k == "timestamp" {
|
||||
intV := utils.Str2Int64(v.(string))
|
||||
if intV > time.Now().Unix()*2 {
|
||||
v = utils.Int64ToStr(intV / 1000)
|
||||
data[k] = v
|
||||
}
|
||||
}
|
||||
msg.Data.Set(k, v.(string))
|
||||
msg.FormData.Set(k, v.(string))
|
||||
}
|
||||
}
|
||||
} else {
|
||||
@@ -100,6 +101,6 @@ func (a *API) GetCallbackMsg(request *http.Request) (msg *CallbackMsg, callbackR
|
||||
}
|
||||
|
||||
func (a *API) GetRefundSkuDetailFromMsg(msg *CallbackMsg) (refundSkuDetail []*RefundSkuDetail) {
|
||||
utils.UnmarshalUseNumber([]byte(msg.Data.Get("food")), &refundSkuDetail)
|
||||
utils.UnmarshalUseNumber([]byte(msg.FormData.Get("food")), &refundSkuDetail)
|
||||
return refundSkuDetail
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ func TestGetRefundSkuDetailFromMsg(t *testing.T) {
|
||||
/mtwm/orderPartialRefund?timestamp=1556595759&reason=%E5%BA%97%E9%93%BA%E5%A4%AA%E5%BF%99%E4%BA%86%21%E5%AE%A2%E5%AE%98%E6%88%91%E6%80%95%E6%82%A8%E7%AD%89%E7%9A%84%E5%A4%AA%E4%B9%85&food=%5B%7B%22app_food_code%22%3A%2231458%22%2C%22box_num%22%3A0%2C%22box_price%22%3A0%2C%22count%22%3A1%2C%22food_name%22%3A%22%E9%B2%9C%E7%AB%B9%E7%AC%8B%EF%BC%88%E9%B8%A1%E5%A9%86%E7%AC%8B%EF%BC%89%5B%E6%9C%AA%E6%B3%A1%E6%B0%B4%5D%E7%BA%A6250g%2F%E4%BB%BD%22%2C%22food_price%22%3A7.97%2C%22origin_food_price%22%3A7.97%2C%22refund_price%22%3A7.97%2C%22sku_id%22%3A%2231458%22%2C%22spec%22%3A%22250g%22%7D%5D&money=7.97&is_appeal=0&pictures=¬ify_type=agree&app_id=589&order_id=67413510345111009&res_type=2&sig=0cef69f37b4a0e924ac4119c3d75117b
|
||||
`)
|
||||
msg := &CallbackMsg{
|
||||
Data: data,
|
||||
FormData: data,
|
||||
}
|
||||
result := api.GetRefundSkuDetailFromMsg(msg)
|
||||
t.Log(utils.Format4Output(result, false))
|
||||
|
||||
Reference in New Issue
Block a user