add
yj
2024-12-05 b9900893177c78fc559223521fe839aa21000017
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
package com.dobbinsoft.fw.pay.model.notify;
 
import com.dobbinsoft.fw.pay.model.result.MatrixBasePayResult;
import com.thoughtworks.xstream.annotations.XStreamAlias;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
 
import java.util.List;
 
/**
 * 支付结果通用通知 ,文档见:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=9_7
 *
 * @author aimilin6688
 * @since 2.5.0
 */
@Data
@EqualsAndHashCode(callSuper = true)
@NoArgsConstructor
public class MatrixPayOrderNotifyResult extends MatrixBasePayResult {
    private static final long serialVersionUID = 5389718115223345496L;
 
    /**
     * <pre>
     * 字段名:营销详情.
     * 变量名:promotion_detail
     * 是否必填:否,单品优惠才有
     * 类型:String(6000)
     * 示例值:[{"promotion_detail":[{"promotion_id":"109519","name":"单品惠-6","scope":"SINGLE","type":"DISCOUNT","amount":5,"activity_id":"931386","wxpay_contribute":0,"merchant_contribute":0,"other_contribute":5,"goods_detail":[{"goods_id":"a_goods1","goods_remark":"商品备注","quantity":7,"price":1,"discount_amount":4},{"goods_id":"a_goods2","goods_remark":"商品备注","quantity":1,"price":2,"discount_amount":1}]}]}
     * 描述:单品优惠专用参数,详见https://pay.weixin.qq.com/wiki/doc/api/danpin.php?chapter=9_203&index=4
     * </pre>
     */
    private String promotionDetail;
 
    /**
     * <pre>
     * 字段名:设备号.
     * 变量名:device_info
     * 是否必填:否
     * 类型:String(32)
     * 示例值:013467007045764
     * 描述:微信支付分配的终端设备号,
     * </pre>
     */
    private String deviceInfo;
 
    /**
     * <pre>
     * 字段名:用户标识.
     * 变量名:openid
     * 是否必填:是
     * 类型:String(128)
     * 示例值:wxd930ea5d5a258f4f
     * 描述:用户在商户appid下的唯一标识
     * </pre>
     */
    private String openid;
 
    /**
     * <pre>
     * 字段名:是否关注公众账号.
     * 变量名:is_subscribe
     * 是否必填:否
     * 类型:String(1)
     * 示例值:Y
     * 描述:用户是否关注公众账号,Y-关注,N-未关注,仅在公众账号类型支付有效
     * </pre>
     */
    private String isSubscribe;
 
    /**
     * <pre>
     * 字段名:用户子标识.
     * 变量名:sub_openid
     * 是否必填:是
     * 类型:String(128)
     * 示例值:wxd930ea5d5a258f4f
     * 描述:用户在子商户appid下的唯一标识
     * </pre>
     */
    private String subOpenid;
 
    /**
     * <pre>
     * 字段名:是否关注子公众账号.
     * 变量名:sub_is_subscribe
     * 是否必填:否
     * 类型:String(1)
     * 示例值:Y
     * 描述:用户是否关注子公众账号,Y-关注,N-未关注,仅在公众账号类型支付有效
     * </pre>
     */
    private String subIsSubscribe;
 
 
    /**
     * <pre>
     * 字段名:交易类型.
     * 变量名:trade_type
     * 是否必填:是
     * 类型:String(16)
     * 示例值:JSAPI
     * JSA描述:PI、NATIVE、APP
     * </pre>
     */
    private String tradeType;
 
    /**
     * <pre>
     * 字段名:付款银行.
     * 变量名:bank_type
     * 是否必填:是
     * 类型:String(16)
     * 示例值:CMC
     * 描述:银行类型,采用字符串类型的银行标识,银行类型见银行列表
     * </pre>
     */
    private String bankType;
 
    /**
     * <pre>
     * 字段名:订单金额.
     * 变量名:total_fee
     * 是否必填:是
     * 类型:Int
     * 示例值:100
     * 描述:订单总金额,单位为分
     * </pre>
     */
    private Integer totalFee;
    /**
     * <pre>
     * 字段名:应结订单金额.
     * 变量名:settlement_total_fee
     * 是否必填:否
     * 类型:Int
     * 示例值:100
     * 描述:应结订单金额=订单金额-非充值代金券金额,应结订单金额<=订单金额。
     * </pre>
     */
    private Integer settlementTotalFee;
    /**
     * <pre>
     * 字段名:货币种类.
     * 变量名:fee_type
     * 是否必填:否
     * 类型:String(8)
     * 示例值:CNY
     * 描述:货币类型,符合ISO4217标准的三位字母代码,默认人民币:CNY,其他值列表详见货币类型
     * </pre>
     */
    private String feeType;
    /**
     * <pre>
     * 字段名:现金支付金额.
     * 变量名:cash_fee
     * 是否必填:是
     * 类型:Int
     * 示例值:100
     * 描述:现金支付金额订单现金支付金额,详见支付金额
     * </pre>
     */
    private Integer cashFee;
    /**
     * <pre>
     * 字段名:现金支付货币类型.
     * 变量名:cash_fee_type
     * 是否必填:否
     * 类型:String(16)
     * 示例值:CNY
     * 描述:货币类型,符合ISO4217标准的三位字母代码,默认人民币:CNY,其他值列表详见货币类型
     * </pre>
     */
    @XStreamAlias("cash_fee_type")
    private String cashFeeType;
    /**
     * <pre>
     * 字段名:总代金券金额.
     * 变量名:coupon_fee
     * 是否必填:否
     * 类型:Int
     * 示例值:10
     * 描述:代金券金额<=订单金额,订单金额-代金券金额=现金支付金额,详见支付金额
     * </pre>
     */
    private Integer couponFee;
 
    /**
     * <pre>
     * 字段名:代金券使用数量.
     * 变量名:coupon_count
     * 是否必填:否
     * 类型:Int
     * 示例值:1
     * 描述:代金券使用数量
     * </pre>
     */
    private Integer couponCount;
 
    private List<MatrixPayOrderNotifyCoupon> couponList;
 
    /**
     * <pre>
     * 字段名:微信支付订单号.
     * 变量名:transaction_id
     * 是否必填:是
     * 类型:String(32)
     * 示例值:1217752501201407033233368018
     * 描述:微信支付订单号
     * </pre>
     */
    private String transactionId;
 
    /**
     * <pre>
     * 字段名:商户订单号.
     * 变量名:out_trade_no
     * 是否必填:是
     * 类型:String(32)
     * 示例值:1212321211201407033568112322
     * 描述:商户系统的订单号,与请求一致。
     * </pre>
     */
    private String outTradeNo;
    /**
     * <pre>
     * 字段名:商家数据包.
     * 变量名:attach
     * 是否必填:否
     * 类型:String(128)
     * 示例值:123456
     * 描述:商家数据包,原样返回
     * </pre>
     */
    private String attach;
 
    /**
     * <pre>
     * 字段名:支付完成时间.
     * 变量名:time_end
     * 是否必填:是
     * 类型:String(14)
     * 示例值:20141030133525
     * 描述:支付完成时间,格式为yyyyMMddHHmmss,如2009年12月25日9点10分10秒表示为20091225091010。其他详见时间规则
     * </pre>
     */
    private String timeEnd;
 
    /**
     * <pre>
     * 字段名:接口版本号.
     * 变量名:version
     * 类型:String(32)
     * 示例值:1.0
     * 更多信息,详见文档:https://pay.weixin.qq.com/wiki/doc/api/danpin.php?chapter=9_101&index=1
     * </pre>
     */
    private String version;
 
}