package com.ruoyi.payment.wx.model;
|
|
import lombok.*;
|
|
import java.util.List;
|
|
/**
|
* @author xiaochen
|
* @ClassName WxPaymentInfoModel
|
* @Description
|
*/
|
@Builder
|
@AllArgsConstructor
|
@NoArgsConstructor
|
@Getter
|
@Setter
|
@ToString
|
public class WxPaymentInfoModel {
|
/**
|
* 合单商户appid
|
*/
|
private String combine_appid;
|
/**
|
* 合单商户号
|
*/
|
private String combine_mchid;
|
/**
|
* 合单商户订单号
|
*/
|
private String combine_out_trade_no;
|
/**
|
* 合单--子单信息
|
*/
|
private List<SubOrders> sub_orders;
|
/**
|
* 合单--支付者
|
*/
|
private CombinePayerInfo combine_payer_info;
|
|
private String appid;
|
private String sp_appid;
|
private String mchid;
|
private String sp_mchid;
|
private String sub_appid;
|
private String sub_mchid;
|
private String description;
|
private String out_trade_no;
|
private String time_expire;
|
private String attach;
|
private String notify_url;
|
private String goods_tag;
|
private SettleInfo settle_info;
|
private Amount amount;
|
private Payer payer;
|
private Detail detail;
|
private SceneInfo scene_info;
|
|
|
@Builder
|
@AllArgsConstructor
|
@NoArgsConstructor
|
@Getter
|
@Setter
|
@ToString
|
public static class SettleInfo {
|
private Boolean profit_sharing;
|
private Integer subsidy_amount;
|
}
|
|
@Builder
|
@AllArgsConstructor
|
@NoArgsConstructor
|
@Getter
|
@Setter
|
@ToString
|
public static class Amount {
|
private Integer total;
|
/**
|
* 合单支付时需要
|
*/
|
private Integer total_amount;
|
@Builder.Default
|
private String currency = "CNY";
|
}
|
|
@Builder
|
@AllArgsConstructor
|
@NoArgsConstructor
|
@Getter
|
@Setter
|
@ToString
|
public static class Payer {
|
private String openid;
|
private String sp_openid;
|
private String sub_openid;
|
}
|
|
|
@Builder
|
@AllArgsConstructor
|
@NoArgsConstructor
|
@Getter
|
@Setter
|
@ToString
|
public static class Detail {
|
private int cost_price;
|
private String invoice_id;
|
private List<GoodsDetail> goods_detail;
|
|
@Builder
|
@AllArgsConstructor
|
@NoArgsConstructor
|
@Getter
|
@Setter
|
@ToString
|
public static class GoodsDetail {
|
private String merchant_goods_id;
|
private String wechatpay_goods_id;
|
private String goods_name;
|
private int quantity;
|
private int unit_price;
|
}
|
}
|
|
@Builder
|
@AllArgsConstructor
|
@NoArgsConstructor
|
@Getter
|
@Setter
|
@ToString
|
public static class SceneInfo {
|
private String payer_client_ip;
|
private String device_id;
|
private StoreInfo store_info;
|
private H5Info h5_info;
|
|
@Builder
|
@AllArgsConstructor
|
@NoArgsConstructor
|
@Getter
|
@Setter
|
@ToString
|
public static class StoreInfo {
|
private String id;
|
private String name;
|
private String area_code;
|
private String address;
|
}
|
|
@Builder
|
@AllArgsConstructor
|
@NoArgsConstructor
|
@Getter
|
@Setter
|
@ToString
|
public static class H5Info {
|
private String type;
|
private String app_name;
|
private String app_url;
|
private String bundle_id;
|
private String package_name;
|
}
|
}
|
|
|
@Builder
|
@AllArgsConstructor
|
@NoArgsConstructor
|
@Getter
|
@Setter
|
@ToString
|
public static class SubOrders {
|
|
private String out_trade_no;
|
|
|
private Amount amount;
|
|
private String mchid;
|
|
private String sub_mchid;
|
|
private String attach;
|
|
private String description;
|
private String goods_tag;
|
|
private SettleInfo settle_info;
|
}
|
|
@Builder
|
@AllArgsConstructor
|
@NoArgsConstructor
|
@Getter
|
@Setter
|
@ToString
|
public static class CombinePayerInfo {
|
private String openid;
|
}
|
|
}
|