You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
			
				
					
					
						
							80 lines
						
					
					
						
							3.6 KiB
						
					
					
				
			
		
		
	
	
							80 lines
						
					
					
						
							3.6 KiB
						
					
					
				| package com.ynxbd.wx.wxfactory.bean.refund;
 | |
| 
 | |
| import lombok.Getter;
 | |
| import lombok.NoArgsConstructor;
 | |
| import lombok.Setter;
 | |
| import lombok.ToString;
 | |
| import weixin.popular.bean.DynamicField;
 | |
| import weixin.popular.bean.paymch.Coupon;
 | |
| import weixin.popular.bean.paymch.MchBase;
 | |
| 
 | |
| import javax.xml.bind.annotation.XmlAccessType;
 | |
| import javax.xml.bind.annotation.XmlAccessorType;
 | |
| import javax.xml.bind.annotation.XmlRootElement;
 | |
| import javax.xml.bind.annotation.XmlTransient;
 | |
| import java.util.ArrayList;
 | |
| import java.util.List;
 | |
| import java.util.Map;
 | |
| 
 | |
| 
 | |
| @Getter
 | |
| @Setter
 | |
| @NoArgsConstructor
 | |
| @ToString
 | |
| @XmlRootElement(name = "xml")
 | |
| @XmlAccessorType(XmlAccessType.FIELD)
 | |
| public class WxRefundQueryRoot extends MchBase implements DynamicField {
 | |
|     private String device_info;
 | |
|     private String transaction_id;
 | |
|     private String out_trade_no;
 | |
|     private Integer total_fee;
 | |
|     private Integer settlement_total_fee;
 | |
|     private String fee_type;
 | |
|     private Integer cash_fee;
 | |
|     private Integer refund_count;
 | |
|     private String refund_account;
 | |
|     private Integer total_refund_count;
 | |
|     @XmlTransient
 | |
|     private List<WxRefundItem> items;
 | |
| 
 | |
|     public void buildDynamicField(Map<String, String> dataMap) {
 | |
|         if (dataMap != null) {
 | |
|             String refund_countStr = dataMap.get("refund_count");
 | |
|             if (refund_countStr != null) {
 | |
|                 List<WxRefundItem> list = new ArrayList<>();
 | |
| 
 | |
|                 WxRefundItem item;
 | |
|                 List<Coupon> couponList;
 | |
|                 for (int i = 0; i < Integer.parseInt(refund_countStr); ++i) {
 | |
|                     item = new WxRefundItem();
 | |
|                     item.setOut_refund_no(dataMap.get("out_refund_no_" + i));
 | |
|                     item.setRefund_id(dataMap.get("refund_id_" + i));
 | |
|                     item.setRefund_channel(dataMap.get("refund_channel_" + i));
 | |
|                     item.setRefund_fee(dataMap.get("refund_fee_" + i) == null ? null : Integer.parseInt(dataMap.get("refund_fee_" + i)));
 | |
|                     item.setSettlement_refund_fee(dataMap.get("settlement_refund_fee_" + i) == null ? null : Integer.parseInt(dataMap.get("settlement_refund_fee_" + i)));
 | |
|                     item.setCoupon_type(dataMap.get("coupon_type_" + i));
 | |
|                     item.setCoupon_refund_fee(dataMap.get("coupon_refund_fee_" + i) == null ? null : Integer.parseInt(dataMap.get("coupon_refund_fee_" + i)));
 | |
|                     item.setCoupon_refund_count(dataMap.get("coupon_refund_count_" + i) == null ? null : Integer.parseInt(dataMap.get("coupon_refund_count_" + i)));
 | |
|                     item.setCoupon_refund(dataMap.get("coupon_refund_" + i));
 | |
|                     item.setRefund_status(dataMap.get("refund_status_" + i));
 | |
|                     item.setRefund_recv_accout(dataMap.get("refund_recv_accout_" + i));
 | |
|                     // 新增
 | |
|                     item.setRefund_success_time(dataMap.get("refund_success_time_" + i));
 | |
|                     item.setN(i);
 | |
|                     if (item.getCoupon_refund_count() != null) {
 | |
|                         couponList = new ArrayList<>();
 | |
| 
 | |
|                         for (int j = 0; j < item.getCoupon_refund_count(); ++j) {
 | |
|                             Coupon coupon = new Coupon(null, dataMap.get("coupon_refund_id_" + i + "_" + j), dataMap.get("coupon_refund_fee_" + i + "_" + j) == null ? null : Integer.parseInt(dataMap.get("coupon_refund_fee_" + i + "_" + j)), j);
 | |
|                             couponList.add(coupon);
 | |
|                         }
 | |
|                         item.setCoupons(couponList);
 | |
|                     }
 | |
|                     list.add(item);
 | |
|                 }
 | |
|                 this.items = list;
 | |
|             }
 | |
|         }
 | |
| 
 | |
|     }
 | |
| }
 | |
| 
 |