🆕 #3122 【小程序】增加小程序虚拟支付的相关接口,以及修复短剧点播相关接口字段信息

This commit is contained in:
kevinzhwl
2023-09-03 03:43:14 +00:00
committed by Binary Wang
parent e61cf93a12
commit 7bcb04a383
61 changed files with 2704 additions and 2 deletions

View File

@@ -0,0 +1,33 @@
package cn.binarywang.wx.miniapp.bean.vod;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaVodApplyUploadRequest implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("media_name")
private String mediaName;
@SerializedName("media_type")
private String mediaType;
@SerializedName("cover_type")
private String coverType;
@SerializedName("source_context")
private String sourceContext;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,25 @@
package cn.binarywang.wx.miniapp.bean.vod;
import cn.binarywang.wx.miniapp.bean.WxMaBaseResponse;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaVodApplyUploadResponse extends WxMaBaseResponse implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("upload_id")
private String uploadId;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,32 @@
package cn.binarywang.wx.miniapp.bean.vod;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaVodCdnLogRequest implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("offset")
private Integer offset;
@SerializedName("limit")
private Integer limit;
@SerializedName("start_time")
private Long startTime;
@SerializedName("end_time")
private Long endTime;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,40 @@
package cn.binarywang.wx.miniapp.bean.vod;
import cn.binarywang.wx.miniapp.bean.WxMaBaseResponse;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.List;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
public class WxMaVodCdnLogResponse extends WxMaBaseResponse implements Serializable {
private static final long serialVersionUID = -7663757440028175135L;
@SerializedName("total_count")
private Integer totalCount;
@SerializedName("domestic_cdn_logs")
private List<CdnLogInfo> domesticCdnLogs;
@Data
public static class CdnLogInfo {
@SerializedName("date")
private Long date;
@SerializedName("name")
private String name;
@SerializedName("url")
private String url;
@SerializedName("start_time")
private Long startTime;
@SerializedName("end_time")
private Long endTime;
}
}

View File

@@ -0,0 +1,30 @@
package cn.binarywang.wx.miniapp.bean.vod;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaVodCdnUsageRequest implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("data_interval")
private Integer dataInterval;
@SerializedName("start_time")
private Long startTime;
@SerializedName("end_time")
private Long endTime;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,36 @@
package cn.binarywang.wx.miniapp.bean.vod;
import cn.binarywang.wx.miniapp.bean.WxMaBaseResponse;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.List;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
public class WxMaVodCdnUsageResponse extends WxMaBaseResponse implements Serializable {
private static final long serialVersionUID = -7663757440028175135L;
@SerializedName("data_interval")
private Integer dataInterval;
@SerializedName("item_list")
private List<DataItem> itemList;
@Data
public static class DataItem {
@SerializedName("value")
private Long value;
@SerializedName("time")
private Long time;
}
}

View File

@@ -0,0 +1,39 @@
package cn.binarywang.wx.miniapp.bean.vod;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.List;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaVodCommitUploadRequest implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("upload_id")
private String uploadId;
@SerializedName("media_part_infos")
private List<PartInfo> mediaPartInfos;
@SerializedName("cover_part_infos")
private List<PartInfo> coverPartInfos;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
@Data
public static class PartInfo {
@SerializedName("part_number")
private Integer partNumber;
@SerializedName("etag")
private String etag;
}
}

View File

@@ -0,0 +1,26 @@
package cn.binarywang.wx.miniapp.bean.vod;
import cn.binarywang.wx.miniapp.bean.WxMaBaseResponse;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaVodCommitUploadResponse extends WxMaBaseResponse implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("media_id")
private Integer mediaId;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,32 @@
package cn.binarywang.wx.miniapp.bean.vod;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaVodGetCdnLogRequest implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("offset")
private Integer offset;
@SerializedName("limit")
private Integer limit;
@SerializedName("start_time")
private Long startTime;
@SerializedName("end_time")
private Long endTime;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,40 @@
package cn.binarywang.wx.miniapp.bean.vod;
import cn.binarywang.wx.miniapp.bean.WxMaBaseResponse;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.List;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
public class WxMaVodGetCdnLogResponse extends WxMaBaseResponse implements Serializable {
private static final long serialVersionUID = -7663757440028175135L;
@SerializedName("total_count")
private Integer totalCount;
@SerializedName("domestic_cdn_logs")
private List<CdnLogInfo> domesticCdnLogs;
@Data
public static class CdnLogInfo {
@SerializedName("date")
private Long date;
@SerializedName("name")
private String name;
@SerializedName("url")
private String url;
@SerializedName("start_time")
private Long startTime;
@SerializedName("end_time")
private Long endTime;
}
}

View File

@@ -0,0 +1,30 @@
package cn.binarywang.wx.miniapp.bean.vod;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaVodGetCdnUsageRequest implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("data_interval")
private Integer dataInterval;
@SerializedName("start_time")
private Long startTime;
@SerializedName("end_time")
private Long endTime;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,36 @@
package cn.binarywang.wx.miniapp.bean.vod;
import cn.binarywang.wx.miniapp.bean.WxMaBaseResponse;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.List;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
public class WxMaVodGetCdnUsageResponse extends WxMaBaseResponse implements Serializable {
private static final long serialVersionUID = -7663757440028175135L;
@SerializedName("data_interval")
private Integer dataInterval;
@SerializedName("item_list")
private List<DataItem> itemList;
@Data
public static class DataItem {
@SerializedName("value")
private Long value;
@SerializedName("time")
private Long time;
}
}

View File

@@ -37,7 +37,7 @@ public class WxMaVodGetTaskResponse extends WxMaBaseResponse implements Serializ
@SerializedName("create_time")
private Long createTime;
@SerializedName("finish_time")
private Long finish_time;
private Long finishTime;
@SerializedName("media_id")
private Integer mediaId;

View File

@@ -0,0 +1,32 @@
package cn.binarywang.wx.miniapp.bean.vod;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaVodPullUploadRequest implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("cover_url")
private String coverUrl;
@SerializedName("media_url")
private String mediaUrl;
@SerializedName("media_name")
private String mediaName;
@SerializedName("source_context")
private String sourceContext;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,25 @@
package cn.binarywang.wx.miniapp.bean.vod;
import cn.binarywang.wx.miniapp.bean.WxMaBaseResponse;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaVodPullUploadResponse extends WxMaBaseResponse implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("task_id")
private Integer taskId;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,27 @@
package cn.binarywang.wx.miniapp.bean.vod;
import cn.binarywang.wx.miniapp.bean.WxMaBaseResponse;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import me.chanjar.weixin.common.util.json.WxGsonBuilder;
import java.io.Serializable;
@Data
public class WxMaVodSingleFileUploadResult extends WxMaBaseResponse implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("media_id")
private Integer mediaId;
public static WxMaVodSingleFileUploadResult fromJson(String json) {
return WxGsonBuilder.create().fromJson(json, WxMaVodSingleFileUploadResult.class);
}
@Override
public String toString() {
return WxGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,27 @@
package cn.binarywang.wx.miniapp.bean.vod;
import cn.binarywang.wx.miniapp.bean.WxMaBaseResponse;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import me.chanjar.weixin.common.util.json.WxGsonBuilder;
import java.io.Serializable;
@Data
public class WxMaVodUploadPartResult extends WxMaBaseResponse implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("etag")
private String etag;
public static WxMaVodUploadPartResult fromJson(String json) {
return WxGsonBuilder.create().fromJson(json, WxMaVodUploadPartResult.class);
}
@Override
public String toString() {
return WxGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,47 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayCancelCurrencyPayRequest implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("openid")
private String openid;
@SerializedName("env")
private Integer env;
@SerializedName("user_ip")
private String userIp;
/*
* 退款单的单号
*/
@SerializedName("order_id")
private String orderId;
/*
* 代币支付时传的order_id
*/
@SerializedName("pay_order_id")
private String payOrderId;
/*
* 退款金额
*/
@SerializedName("amount")
private Long amount;
@SerializedName("device_type")
private Integer deviceType;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,26 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.bean.WxMaBaseResponse;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayCancelCurrencyPayResponse extends WxMaBaseResponse implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("order_id")
private String orderId;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,29 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayCreateWithdrawOrderRequest implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("env")
private Integer env;
@SerializedName("withdraw_no")
private String withdrawNo;
@SerializedName("withdraw_amount")
private String withdrawAmount; //提现的金额,单位元,不传的情况下表示全额提现
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,28 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.bean.WxMaBaseResponse;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayCreateWithdrawOrderResponse extends WxMaBaseResponse implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("withdraw_no")
private String withdrawNo;
@SerializedName("wx_withdraw_no")
private String wxWithdrawNo;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,43 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayCurrencyPayRequest implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("openid")
private String openid;
@SerializedName("env")
private Integer env;
@SerializedName("user_ip")
private String userIp;
@SerializedName("amount")
private Long amount;
@SerializedName("order_id")
private String orderId;
@SerializedName("device_type")
private Integer deviceType;
@SerializedName("payitem")
private String payitem;//物品信息。记录到账户流水中。如:[{"productid":"物品id", "unit_price": 单价, "quantity": 数量}]
@SerializedName("remark")
private String remark;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,31 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.bean.WxMaBaseResponse;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayCurrencyPayResponse extends WxMaBaseResponse implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("balance")
private Long balance;
@SerializedName("used_present_amount")
private Long usedPresentAmount;
@SerializedName("order_id")
private String orderId;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,27 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayDownloadBillRequest implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("begin_ds")
private Integer beginDs;
@SerializedName("end_ds")
private Integer endDs;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,25 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.bean.WxMaBaseResponse;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayDownloadBillResponse extends WxMaBaseResponse implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("url")
private String url;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,30 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayNotifyProvideGoodsRequest implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("env")
private Integer env;
@SerializedName("order_id")
private String orderId;
@SerializedName("wx_order_id")
private String wxOrderId;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,35 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayPresentCurrencyRequest implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("openid")
private String openid;
@SerializedName("env")
private Integer env;
@SerializedName("order_id")
private String orderId;
@SerializedName("device_type")
private Integer deviceType;
@SerializedName("amount")
private Long amount;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,31 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.bean.WxMaBaseResponse;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayPresentCurrencyResponse extends WxMaBaseResponse implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("balance")
private Long balance;
@SerializedName("present_balance")
private Long presentBalance;
@SerializedName("order_id")
private String orderId;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,38 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayQueryOrderRequest implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("openid")
private String openid;
@SerializedName("env")
private Integer env;
/*
* 创建的订单号
*/
@SerializedName("order_id")
private String orderId;
/*
* 微信内部单号(与order_id二选一)
*/
@SerializedName("wx_order_id")
private String wxOrderId;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,65 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.bean.WxMaBaseResponse;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayQueryOrderResponse extends WxMaBaseResponse implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("order")
private OrderInfo order;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
@Data
public static class OrderInfo {
@SerializedName("order_id")
private String orderId;
@SerializedName("create_time")
private Long createTime;
@SerializedName("update_time")
private Long updateTime;
@SerializedName("status")
private Integer status;
@SerializedName("biz_type")
private Integer bizType;
@SerializedName("order_fee")
private Long orderFee;
@SerializedName("coupon_fee")
private Long couponFee;
@SerializedName("paid_fee")
private Long paidFee;
@SerializedName("order_type")
private Integer orderType;
@SerializedName("refund_fee")
private Long refundFee;
@SerializedName("paid_time")
private Long paidTime;//unix秒级时间戳
@SerializedName("provide_time")
private Long provideTime;
@SerializedName("env_type")
private Long envType;
@SerializedName("biz_meta")
private String bizMeta;
@SerializedName("token")
private String token;
@SerializedName("leftFee")
private Long leftFee; //支付单类型时表示此单经过退款还剩余的金额,单位分
@SerializedName("wxOrderId")
private String wxOrderId;
}
}

View File

@@ -0,0 +1,24 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayQueryPublishGoodsRequest implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("env")
private Integer env;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,39 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.bean.WxMaBaseResponse;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.List;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayQueryPublishGoodsResponse extends WxMaBaseResponse implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("status")
private Integer status;
@SerializedName("publish_item")
private List<PublishItem> publishItem;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
@Data
public static class PublishItem {
@SerializedName("id")
private String id;
@SerializedName("publish_status")
private Integer publishStatus;
@SerializedName("errmsg")
private String errmsg;
}
}

View File

@@ -0,0 +1,24 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayQueryUploadGoodsRequest implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("env")
private Integer env;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,47 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.bean.WxMaBaseResponse;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.List;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayQueryUploadGoodsResponse extends WxMaBaseResponse implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("status")
private Integer status;
@SerializedName("upload_item")
private List<UploadItem> uploadItem;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
@Data
public static class UploadItem {
@SerializedName("id")
private String id;
@SerializedName("name")
private String name;
@SerializedName("price")
private Integer price;
@SerializedName("remark")
private String remark;
@SerializedName("item_url")
private String itemUrl;
@SerializedName("upload_status")
private Integer uploadStatus;
@SerializedName("errmsg")
private String errmsg;
}
}

View File

@@ -0,0 +1,29 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayQueryUserBalanceRequest implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("user_ip")
private String userIp;
@SerializedName("openid")
private String openid;
@SerializedName("env")
private Integer env;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,39 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.bean.WxMaBaseResponse;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayQueryUserBalanceResponse extends WxMaBaseResponse implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("balance")
private Long balance;
@SerializedName("present_balance")
private Long presentBalance;
@SerializedName("sum_save")
private Long sumSave;
@SerializedName("sum_present")
private Long sumPresent;
@SerializedName("sum_balance")
private Long sumBalance;
@SerializedName("sum_cost")
private Long sumCost;
@SerializedName("first_save_flag")
private Boolean firstSaveFlag;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,27 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayQueryWithdrawOrderRequest implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("env")
private Integer env;
@SerializedName("withdraw_no")
private String withdrawNo;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,39 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.bean.WxMaBaseResponse;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayQueryWithdrawOrderResponse extends WxMaBaseResponse implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("withdraw_no")
private String withdrawNo;
@SerializedName("withdraw_amount")
private String withdrawAmount; //提现的金额,单位元,不传的情况下表示全额提现
@SerializedName("wx_withdraw_no")
private String wxWithdrawNo;
@SerializedName("status")
private Integer status;
@SerializedName("withdraw_success_timestamp")
private String withdrawSuccessTimestamp;
@SerializedName("create_time")
private String createTime;
@SerializedName("fail_reason")
private String failReason;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,46 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayRefundOrderRequest implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("openid")
private String openid;
@SerializedName("env")
private Integer env;
@SerializedName("order_id")
private String orderId;
@SerializedName("wx_order_id")
private String wxOrderId;
@SerializedName("refund_order_id")
private String refundOrderId;
@SerializedName("left_fee")
private Long leftFee;
@SerializedName("refund_fee")
private Long refundFee;
@SerializedName("biz_meta")
private String bizMeta;
@SerializedName("refund_reason")
private String refundReason;
@SerializedName("req_from")
private String reqFrom;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,33 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.bean.WxMaBaseResponse;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayRefundOrderResponse extends WxMaBaseResponse implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("refund_order_id")
private String refundOrderId;
@SerializedName("refund_wx_order_id")
private String refundWxOrderId;
@SerializedName("pay_order_id")
private String payOrderId;
@SerializedName("pay_wx_order_id")
private String payWxOrderId;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
}

View File

@@ -0,0 +1,91 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import me.chanjar.weixin.common.util.SignUtils;
import org.apache.commons.lang3.StringUtils;
import java.io.Serializable;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPaySigParams implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
private String sessionKey;
private String appKey;
public String signUriWithBoth(String url, String postData) {
final String sig = this.calcSig(postData);
final String paySig = this.calcPaySig(url, postData);
final String uri = String.format(url, paySig, sig);
return uri;
}
public String signUriWithPay(String url, String postData) {
final String paySig = this.calcPaySig(url, postData);
final String uri = String.format(url, paySig);
return uri;
}
public String signUriWithUser(String url, String postData) {
final String sig = this.calcSig(postData);
final String uri = String.format(url, sig);
return uri;
}
protected String convUrlToSigUri(String url) {
if (url == null) return "";
String t = url.replace("https://api.weixin.qq.com", "");
if (t.contains("?")) {
t = t.substring(0, t.indexOf("?"));
}
return t;
}
public String calcPaySig(String url, String postBody) {
String ak = StringUtils.trimToEmpty(this.appKey);
final String sigUri = convUrlToSigUri(url);
final String paySig = calcPaySignature(sigUri, postBody, ak);
return paySig;
}
public String calcSig(String postBody) {
String sk = StringUtils.trimToEmpty(this.sessionKey);
final String sig = calcSignature(postBody, sk);
return sig;
}
protected String calcSignature(String postBody, String sessionKey) {
// """ 用户登录态signature签名算法
// Args:
// postBody - http POST的数据包体
// sessionKey - 当前用户有效的session_key参考auth.code2Session接口
// Returns:
// 用户登录态签名signature
// """
String needSignData = postBody;
String signature = SignUtils.createHmacSha256Sign(needSignData, sessionKey);
return signature;
}
protected String calcPaySignature(String uri, String postBody, String appKey) {
// """ pay_sig签名算法
// Args:
// uri - 当前请求的API的uri部分不带query_string 例如:/xpay/query_user_balance
// postBody - http POST的数据包体
// appKey - 对应环境的AppKey
// Returns:
// 支付请求签名pay_sig
// """
String needSignData = uri + '&' + postBody;
String paySig = SignUtils.createHmacSha256Sign(needSignData, appKey);
return paySig;
}
}

View File

@@ -0,0 +1,35 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.List;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayStartPublishGoodsRequest implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("env")
private Integer env;
@SerializedName("publish_item")
private List<PublishItem> publishItem;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
@Data
public static class PublishItem {
@SerializedName("id")
private String id;
}
}

View File

@@ -0,0 +1,43 @@
package cn.binarywang.wx.miniapp.bean.xpay;
import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder;
import com.google.gson.annotations.SerializedName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.List;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WxMaXPayStartUploadGoodsRequest implements Serializable {
private static final long serialVersionUID = 7495157056049312108L;
@SerializedName("env")
private Integer env;
@SerializedName("upload_item")
private List<UploadItem> uploadItem;
public String toJson() {
return WxMaGsonBuilder.create().toJson(this);
}
@Data
public static class UploadItem {
@SerializedName("id")
private String id;
@SerializedName("name")
private String name;
@SerializedName("price")
private Integer price;
@SerializedName("remark")
private String remark;
@SerializedName("item_url")
private String itemUrl;
}
}