package com.yanzuoguang.wxxcx.logistics.printer; import com.alibaba.fastjson.TypeReference; import com.yanzuoguang.util.helper.HttpHelper; import com.yanzuoguang.util.helper.JsonHelper; import com.yanzuoguang.wxxcx.base.*; /*** * 获取所有绑定的物流账号 * * @author:heyanou */ public class WxLogisticsGetPathDataRequest implements WxXcxRequestUrl, WxXcxRequestUrlPara, WxXcxRequestPostFormData { private final WxXcxConfig wxXcxConfig; private final WxXcxRequest wxXcxRequest; private final WxXcxAccessToken accessToken; private final WxLogisticsGetPathDataReq req; public WxLogisticsGetPathDataRequest(WxXcxConfig wxXcxConfig, WxXcxRequest wxXcxRequest, WxXcxAccessToken accessToken, WxLogisticsGetPathDataReq req) { this.wxXcxConfig = wxXcxConfig; this.wxXcxRequest = wxXcxRequest; this.accessToken = accessToken; this.req = req; } @Override public String getPost() { return HttpHelper.getUrlParameter(req); } @Override public String getUrlPara() { return HttpHelper.getUrlParameter(accessToken); } @Override public String getUrl() { return wxXcxConfig.getBaseUrl() + wxXcxConfig.getLogisticsGetPathDataUrl() + "?" + this.getUrlPara(); } /*** * <b>response返回结果集检测</b> * @return 返回类对象 */ public WxLogisticsGetPathDataRes getResponse() { // todo: 检测参数是否合法 return this.wxXcxRequest.request(this, response -> { WxLogisticsGetPathDataRes ret = JsonHelper.deserialize(response, new TypeReference<WxLogisticsGetPathDataRes>() { }); WxXcxAssert.assertBaseError(ret); return ret; }); } }