package suning import ( "context" "github.com/gogf/gf/encoding/gjson" ) type QueryMessageReq struct { SnRequest struct { SnBody struct { QueryQuerymessage struct { MsgType string `json:"msgType"` PageNo string `json:"pageNo"` PageSize string `json:"pageSize"` } `json:"queryQuerymessage"` } `json:"sn_body"` } `json:"sn_request"` } type QueryMessageRes struct { SnResponseContent struct { SnHead struct { TotalSize string `json:"totalSize"` PageTotal string `json:"pageTotal"` PageNo string `json:"pageNo"` ReturnMessage string `json:"returnMessage"` } `json:"sn_head"` SnBody struct { QueryQuerymessage []struct { MsgType string `json:"msgType"` MsgList []struct { Opt string `json:"opt"` OrderNo string `json:"orderNo"` ProductCode string `json:"productCode"` CreateTime string `json:"createTime"` Channel string `json:"channel"` OrderItemNo string `json:"orderItemNo"` Id string `json:"id"` SupplierCode string `json:"supplierCode"` Status string `json:"status"` Afterchanged []struct { SecondPid string `json:"secondPid"` SnId string `json:"snId"` Level string `json:"level"` Name string `json:"name"` Pid string `json:"pid"` Id string `json:"id"` } `json:"afterchanged"` BeforeChanged []struct { SecondPid string `json:"secondPid"` SnId string `json:"snId"` Level string `json:"level"` Name string `json:"name"` Pid string `json:"pid"` Id string `json:"id"` } `json:"beforeChanged"` } `json:"msgList"` } `json:"queryQuerymessage"` } `json:"sn_body"` } `json:"sn_responseContent"` } // 获取订单状态 func QueryMessage(ctx context.Context, msgType, pageNo, pageSize string) (res QueryMessageRes, err error) { params := QueryMessageReq{} params.SnRequest.SnBody.QueryQuerymessage.MsgType = msgType params.SnRequest.SnBody.QueryQuerymessage.PageNo = pageNo params.SnRequest.SnBody.QueryQuerymessage.PageSize = pageSize result, err := post(ctx, "suning.sngoods.querymessage.query", params) if nil != err { return } err = gjson.New(result).Scan(&res) return } type MessageDelReq struct { SnRequest struct { SnBody struct { DeleteMessage struct { MsgType string `json:"msgType"` MsgList []*MessageDelReqMsgList `json:"msgList"` } `json:"deleteMessage"` } `json:"sn_body"` } `json:"sn_request"` } type MessageDelReqMsgList struct { Id string `json:"id"` } type MessageDelRes struct { SnResponseContent struct { SnBody struct { DeleteMessage struct { DeleteResult string `json:"deleteResult"` } `json:"deleteMessage"` } `json:"sn_body"` } `json:"sn_responseContent"` } func MessageDel(ctx context.Context, msgType string, msgList []*MessageDelReqMsgList) (res MessageDelRes, err error) { params := MessageDelReq{} params.SnRequest.SnBody.DeleteMessage.MsgType = msgType params.SnRequest.SnBody.DeleteMessage.MsgList = msgList result, err := post(ctx, "suning.sngoods.message.delete", params) if nil != err { return } err = gjson.New(result).Scan(&res) return }