// Path: src/main/java/com/yunpian/sdk/model/FlowPackage.java
// public class FlowPackage {
// 
//     private Long sn;
//     private double carrier_price;
//     private double discount;
//     private Integer capacity;
//     private Long carrier;
//     private String name;
// 
//     public Integer getCapacity() {
//         return capacity;
//     }
// 
//     public void setCapacity(Integer capacity) {
//         this.capacity = capacity;
//     }
// 
//     public Long getCarrier() {
//         return carrier;
//     }
// 
//     public void setCarrier(Long carrier) {
//         this.carrier = carrier;
//     }
// 
//     public double getCarrier_price() {
//         return carrier_price;
//     }
// 
//     public void setCarrier_price(double carrier_price) {
//         this.carrier_price = carrier_price;
//     }
// 
//     public double getDiscount() {
//         return discount;
//     }
// 
//     public void setDiscount(double discount) {
//         this.discount = discount;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public Long getSn() {
//         return sn;
//     }
// 
//     public void setSn(Long sn) {
//         this.sn = sn;
//     }
// 
//     @Override
//     public String toString() {
//         return "FlowPackageInfo{" + "capacity=" + capacity + ", sn=" + sn + ", carrier_price=" + carrier_price
//                 + ", discount=" + discount + ", carrier=" + carrier + ", name='" + name + '\'' + '}';
//     }
// }
// 
// Path: src/main/java/com/yunpian/sdk/model/FlowSend.java
// public class FlowSend extends BaseInfo {
// }
// 
// Path: src/main/java/com/yunpian/sdk/model/FlowStatus.java
// public class FlowStatus extends BaseStatus {
// }
// 
// Path: src/main/java/com/yunpian/sdk/model/Result.java
// public class Result<T> {
// 
//     private Integer code = Code.OK;
//     private String msg;
//     private String detail;
// 
//     private Throwable e;
// 
//     private T data;
// 
//     public T getData() {
//         return data;
//     }
// 
//     public String getDetail() {
//         return detail;
//     }
// 
//     public Result<T> setDetail(String detail) {
//         this.detail = detail;
//         return this;
//     }
// 
//     public Result<T> setData(T data) {
//         this.data = data;
//         return this;
//     }
// 
//     public Integer getCode() {
//         return code;
//     }
// 
//     public Result<T> setCode(Integer code) {
//         this.code = code;
//         return this;
//     }
// 
//     public String getMsg() {
//         return msg;
//     }
// 
//     public Result<T> setMsg(String msg) {
//         this.msg = msg;
//         return this;
//     }
// 
//     public Throwable getThrowable() {
//         return e;
//     }
// 
//     public Result<T> setThrowable(Throwable e) {
//         this.e = e;
//         return this;
//     }
// 
//     public boolean isSucc() {
//         return code == Code.OK;
//     }
// 
//     @Override
//     public String toString() {
//         return JsonUtil.toJson(this);
//     }
// 
// }


import java.util.List;
import java.util.Map;
import org.junit.Test;
import com.yunpian.sdk.model.FlowPackage;
import com.yunpian.sdk.model.FlowSend;
import com.yunpian.sdk.model.FlowStatus;
import com.yunpian.sdk.model.Result;
package com.yunpian.sdk.api;




/**
 * 手机流量API
 * 
 * https://www.yunpian.com/api2.0/api-flow.html
 * 
 * 
 * @author dzh
 * @date Dec 4, 2016 8:48:08 PM
 * @since 1.2.0
 */
public class TestFlowApi extends TestYunpianClient {

	@Test
	public void get_packageTest() {
		Map<String, String> param = clnt.newParam(1);
		// param.put(CARRIER, "10010");
		Result<List<FlowPackage>> r = clnt.flow().get_package(param);
		System.out.println(r);

		// r = ((FlowApi) clnt.flow().version(VERSION_V1)).get_package(param);
		// System.out.println(r);
	}

	@Test
	public void rechargeTest() {
		Map<String, String> param = clnt.newParam(3);
		param.put(MOBILE, "11111111111");
		param.put(SN, "1008601");
		// param.put(CALLBACK_URL, "http://your_receive_url_address");
		Result<FlowSend> r = clnt.flow().recharge(param);
		System.out.println(r);

		// r = ((FlowApi) clnt.flow().version(VERSION_V1)).recharge(param);
		// System.out.println(r);
	}

	@Test
	public void pull_statusTest() {
		Map<String, String> param = clnt.newParam(2);
		param.put(MOBILE, "11111111111");
		// param.put(PAGE_SIZE, "20");
// Path: src/main/java/com/yunpian/sdk/model/FlowPackage.java
// public class FlowPackage {
// 
//     private Long sn;
//     private double carrier_price;
//     private double discount;
//     private Integer capacity;
//     private Long carrier;
//     private String name;
// 
//     public Integer getCapacity() {
//         return capacity;
//     }
// 
//     public void setCapacity(Integer capacity) {
//         this.capacity = capacity;
//     }
// 
//     public Long getCarrier() {
//         return carrier;
//     }
// 
//     public void setCarrier(Long carrier) {
//         this.carrier = carrier;
//     }
// 
//     public double getCarrier_price() {
//         return carrier_price;
//     }
// 
//     public void setCarrier_price(double carrier_price) {
//         this.carrier_price = carrier_price;
//     }
// 
//     public double getDiscount() {
//         return discount;
//     }
// 
//     public void setDiscount(double discount) {
//         this.discount = discount;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public Long getSn() {
//         return sn;
//     }
// 
//     public void setSn(Long sn) {
//         this.sn = sn;
//     }
// 
//     @Override
//     public String toString() {
//         return "FlowPackageInfo{" + "capacity=" + capacity + ", sn=" + sn + ", carrier_price=" + carrier_price
//                 + ", discount=" + discount + ", carrier=" + carrier + ", name='" + name + '\'' + '}';
//     }
// }
// 
// Path: src/main/java/com/yunpian/sdk/model/FlowSend.java
// public class FlowSend extends BaseInfo {
// }
// 
// Path: src/main/java/com/yunpian/sdk/model/FlowStatus.java
// public class FlowStatus extends BaseStatus {
// }
// 
// Path: src/main/java/com/yunpian/sdk/model/Result.java
// public class Result<T> {
// 
//     private Integer code = Code.OK;
//     private String msg;
//     private String detail;
// 
//     private Throwable e;
// 
//     private T data;
// 
//     public T getData() {
//         return data;
//     }
// 
//     public String getDetail() {
//         return detail;
//     }
// 
//     public Result<T> setDetail(String detail) {
//         this.detail = detail;
//         return this;
//     }
// 
//     public Result<T> setData(T data) {
//         this.data = data;
//         return this;
//     }
// 
//     public Integer getCode() {
//         return code;
//     }
// 
//     public Result<T> setCode(Integer code) {
//         this.code = code;
//         return this;
//     }
// 
//     public String getMsg() {
//         return msg;
//     }
// 
//     public Result<T> setMsg(String msg) {
//         this.msg = msg;
//         return this;
//     }
// 
//     public Throwable getThrowable() {
//         return e;
//     }
// 
//     public Result<T> setThrowable(Throwable e) {
//         this.e = e;
//         return this;
//     }
// 
//     public boolean isSucc() {
//         return code == Code.OK;
//     }
// 
//     @Override
//     public String toString() {
//         return JsonUtil.toJson(this);
//     }
// 
// }


// Path: src/test/java/com/yunpian/sdk/api/TestFlowApi.java
import java.util.List;
import java.util.Map;
import org.junit.Test;
import com.yunpian.sdk.model.FlowPackage;
import com.yunpian.sdk.model.FlowSend;
import com.yunpian.sdk.model.FlowStatus;
import com.yunpian.sdk.model.Result;

package com.yunpian.sdk.api;




/**
 * 手机流量API
 * 
 * https://www.yunpian.com/api2.0/api-flow.html
 * 
 * 
 * @author dzh
 * @date Dec 4, 2016 8:48:08 PM
 * @since 1.2.0
 */
public class TestFlowApi extends TestYunpianClient {

	@Test
	public void get_packageTest() {
		Map<String, String> param = clnt.newParam(1);
		// param.put(CARRIER, "10010");
		Result<List<FlowPackage>> r = clnt.flow().get_package(param);
		System.out.println(r);

		// r = ((FlowApi) clnt.flow().version(VERSION_V1)).get_package(param);
		// System.out.println(r);
	}

	@Test
	public void rechargeTest() {
		Map<String, String> param = clnt.newParam(3);
		param.put(MOBILE, "11111111111");
		param.put(SN, "1008601");
		// param.put(CALLBACK_URL, "http://your_receive_url_address");
		Result<FlowSend> r = clnt.flow().recharge(param);
		System.out.println(r);

		// r = ((FlowApi) clnt.flow().version(VERSION_V1)).recharge(param);
		// System.out.println(r);
	}

	@Test
	public void pull_statusTest() {
		Map<String, String> param = clnt.newParam(2);
		param.put(MOBILE, "11111111111");
		// param.put(PAGE_SIZE, "20");
		Result<List<FlowStatus>> r = clnt.flow().pull_status(param);