View Javadoc
1   package com.foxinmy.weixin4j.payment.mch;
2   
3   import java.util.Date;
4   
5   import javax.xml.bind.annotation.XmlElement;
6   
7   import com.alibaba.fastjson.annotation.JSONField;
8   import com.foxinmy.weixin4j.type.CurrencyType;
9   import com.foxinmy.weixin4j.util.DateUtil;
10  
11  /**
12   * 结算资金
13   * 
14   * @className Settlement
15   * @author jinyu(foxinmy@gmail.com)
16   * @date 2016年3月26日
17   * @since JDK 1.6
18   * @see
19   */
20  @Deprecated
21  public class SettlementRecord extends MerchantResult {
22  
23  	private static final long serialVersionUID = 7952659545609519979L;
24  
25  	/**
26  	 * 付款批次号
27  	 */
28  	@XmlElement(name = "fbatchno")
29  	@JSONField(name = "fbatchno")
30  	private String batchNo;
31  	/**
32  	 * 结算日期
33  	 */
34  	@XmlElement(name = "date_settlement")
35  	@JSONField(name = "date_settlement")
36  	private String settleDate;
37  	/**
38  	 * 交易开始日期
39  	 */
40  	@XmlElement(name = "date_start")
41  	@JSONField(name = "date_start")
42  	private String startDate;
43  	/**
44  	 * 交易结束日期
45  	 */
46  	@XmlElement(name = "date_end")
47  	@JSONField(name = "date_end")
48  	private String endDate;
49  	/**
50  	 * 划账金额:外币标价,外币最小单位
51  	 */
52  	@XmlElement(name = "transaction_id")
53  	@JSONField(name = "transaction_id")
54  	private int settleFee;
55  	/**
56  	 * 未划账金额:外币标价,外币最小单位
57  	 */
58  	@XmlElement(name = "unsettlement_fee")
59  	@JSONField(name = "unsettlement_fee")
60  	private int unSettleFee;
61  	/**
62  	 * 结算币种
63  	 */
64  	@XmlElement(name = "settlementfee_type")
65  	@JSONField(name = "settlementfee_type")
66  	private String settleFeeType;
67  	/**
68  	 * 支付金额:外币标价,外币最小单位
69  	 */
70  	@XmlElement(name = "pay_fee")
71  	@JSONField(name = "pay_fee")
72  	private int payFee;
73  	/**
74  	 * 退款金额:外币标价,外币最小单位
75  	 */
76  	@XmlElement(name = "refund_fee")
77  	@JSONField(name = "refund_fee")
78  	private int refundFee;
79  	/**
80  	 * 支付净额:外币标价,外币最小单位
81  	 */
82  	@XmlElement(name = "pay_net_fee")
83  	@JSONField(name = "pay_net_fee")
84  	private int payNetFee;
85  	/**
86  	 * 手续费金额:外币标价,外币最小单位
87  	 */
88  	@XmlElement(name = "poundage_fee")
89  	@JSONField(name = "poundage_fee")
90  	private int poundageFee;
91  
92  	protected SettlementRecord() {
93  		// jaxb required
94  	}
95  
96  	public String getBatchNo() {
97  		return batchNo;
98  	}
99  
100 	public void setBatchNo(String batchNo) {
101 		this.batchNo = batchNo;
102 	}
103 
104 	public String getSettleDate() {
105 		return settleDate;
106 	}
107 
108 	@JSONField(serialize = false)
109 	public Date getFormatSettleDate() {
110 		return DateUtil.parse2yyyyMMddHHmmss(settleDate);
111 	}
112 
113 	public void setSettleDate(String settleDate) {
114 		this.settleDate = settleDate;
115 	}
116 
117 	public String getStartDate() {
118 		return startDate;
119 	}
120 
121 	@JSONField(serialize = false)
122 	public Date getFormatStartDate() {
123 		return DateUtil.parse2yyyyMMddHHmmss(startDate);
124 	}
125 
126 	public void setStartDate(String startDate) {
127 		this.startDate = startDate;
128 	}
129 
130 	public String getEndDate() {
131 		return endDate;
132 	}
133 
134 	@JSONField(serialize = false)
135 	public Date getFormatEndDate() {
136 		return DateUtil.parse2yyyyMMddHHmmss(settleDate);
137 	}
138 
139 	public void setEndDate(String endDate) {
140 		this.endDate = endDate;
141 	}
142 
143 	public int getSettleFee() {
144 		return settleFee;
145 	}
146 
147 	/**
148 	 * <font color="red">最小单位除100得到的值</font>
149 	 * 
150 	 * @return /100
151 	 */
152 	@JSONField(serialize = false)
153 	public double getFormatSettleFee() {
154 		return settleFee / 100d;
155 	}
156 
157 	public void setSettleFee(int settleFee) {
158 		this.settleFee = settleFee;
159 	}
160 
161 	public int getUnSettleFee() {
162 		return unSettleFee;
163 	}
164 
165 	/**
166 	 * <font color="red">最小单位除100得到的值</font>
167 	 * 
168 	 * @return /100
169 	 */
170 	@JSONField(serialize = false)
171 	public double getFormatUnSettleFee() {
172 		return unSettleFee / 100d;
173 	}
174 
175 	public void setUnSettleFee(int unSettleFee) {
176 		this.unSettleFee = unSettleFee;
177 	}
178 
179 	public String getSettleFeeType() {
180 		return settleFeeType;
181 	}
182 
183 	@JSONField(serialize = false)
184 	public CurrencyType getFormatSettleFeeType() {
185 		return CurrencyType.valueOf(settleFeeType.toUpperCase());
186 	}
187 
188 	public void setSettleFeeType(String settleFeeType) {
189 		this.settleFeeType = settleFeeType;
190 	}
191 
192 	public int getPayFee() {
193 		return payFee;
194 	}
195 
196 	/**
197 	 * <font color="red">最小单位除100得到的值</font>
198 	 * 
199 	 * @return /100
200 	 */
201 	@JSONField(serialize = false)
202 	public double getFormatPayFee() {
203 		return payFee / 100d;
204 	}
205 
206 	public void setPayFee(int payFee) {
207 		this.payFee = payFee;
208 	}
209 
210 	public int getRefundFee() {
211 		return refundFee;
212 	}
213 
214 	/**
215 	 * <font color="red">最小单位除100得到的值</font>
216 	 * 
217 	 * @return /100
218 	 */
219 	@JSONField(serialize = false)
220 	public double getFormatRefundFee() {
221 		return refundFee / 100d;
222 	}
223 
224 	public void setRefundFee(int refundFee) {
225 		this.refundFee = refundFee;
226 	}
227 
228 	public int getPayNetFee() {
229 		return payNetFee;
230 	}
231 
232 	public void setPayNetFee(int payNetFee) {
233 		this.payNetFee = payNetFee;
234 	}
235 
236 	/**
237 	 * <font color="red">最小单位除100得到的值</font>
238 	 * 
239 	 * @return /100
240 	 */
241 	@JSONField(serialize = false)
242 	public double getFormatPayNetFee() {
243 		return payNetFee / 100d;
244 	}
245 
246 	public int getPoundageFee() {
247 		return poundageFee;
248 	}
249 
250 	/**
251 	 * <font color="red">最小单位除100得到的值</font>
252 	 * 
253 	 * @return /100
254 	 */
255 	@JSONField(serialize = false)
256 	public double getFormatPoundageFee() {
257 		return poundageFee / 100d;
258 	}
259 
260 	public void setPoundageFee(int poundageFee) {
261 		this.poundageFee = poundageFee;
262 	}
263 
264 	@Override
265 	public String toString() {
266 		return "SettlementRecord [batchNo=" + batchNo + ", settleDate="
267 				+ settleDate + ", startDate=" + startDate + ", endDate="
268 				+ endDate + ", settleFee=" + settleFee + ", unSettleFee="
269 				+ unSettleFee + ", settleFeeType=" + settleFeeType
270 				+ ", payFee=" + payFee + ", refundFee=" + refundFee
271 				+ ", payNetFee=" + payNetFee + ", poundageFee=" + poundageFee
272 				+ ", " + super.toString() + "]";
273 	}
274 }