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;
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
    }
 | 
						|
}
 | 
						|
 |