package com.alibaba.json.bvtVO;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.alibaba.fastjson.JSON;
/**
* 交易消息体
*/
@SuppressWarnings("rawtypes")
public class DataTransaction implements Serializable {
private static final long serialVersionUID = 1L;
private Head head = new Head();
private Body body = new Body();
public DataTransaction(){
}
/**
* Head
**/
public static class Head {
private String appid;
private String transcode;
private String seqno;
private User user = new User();
private Ret ret = new Ret();
/**
* 用户信息
*/
public static class User {
private String id;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
}
/**
* 处理结果
*/
public static class Ret {
private String code;
private String msg;
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
}
public String getAppid() {
return appid;
}
public void setAppid(String appid) {
this.appid = appid;
}
public String getTranscode() {
return transcode;
}
public void setTranscode(String transcode) {
this.transcode = transcode;
}
public String getSeqno() {
return seqno;
}
public void setSeqno(String seqno) {
this.seqno = seqno;
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
public Ret getRet() {
return ret;
}
public void setRet(Ret ret) {
this.ret = ret;
}
public void setRetCode(String code) {
this.ret.code = code;
}
public void setRetMsg(String msg) {
this.ret.msg = msg;
}
}
/**
* Body
*/
public static class Body {
private Param param = new Param();
private DataSet dataset;
public Body(){
}
/**
* 参数
*/
public static class Param {
private Limit limit = new Limit();
private Map<String, String> form = new HashMap<String, String>();
/**
* 分页信息
*/
public static class Limit {
private String start;
private String size;
private String total;
private String orderBy;
public String getStart() {
return start;
}
public void setStart(String start) {
this.start = start;
}
public String getSize() {
return size;
}
public void setSize(String size) {
this.size = size;
}
public String getTotal() {
return total;
}
public void setTotal(String total) {
this.total = total;
}
public String getOrderBy() {
return orderBy;
}
public void setOrderBy(String orderBy) {
this.orderBy = orderBy;
}
}
public Limit getLimit() {
return limit;
}
public void setLimit(Limit limit) {
this.limit = limit;
}
public Map<String, String> getForm() {
return form;
}
public void setForm(Map<String, String> form) {
this.form = form;
}
}
/**
* 数据集
*/
public static class DataSet {
private String total;
private List rows = new ArrayList();
public String getTotal() {
return total;
}
public void setTotal(String total) {
this.total = total;
}
public List getRows() {
return rows;
}
public void setRows(List rows) {
this.rows = rows;
}
}
public Param getParam() {
return param;
}
public void setParam(Param param) {
this.param = param;
}
public DataSet getDataset() {
return dataset;
}
public void setDataset(DataSet dataset) {
this.dataset = dataset;
}
public void setDataset(String total, List rows) {
DataSet ds = new DataSet();
ds.setTotal(total);
ds.setRows(rows);
this.setDataset(ds);
}
}
public Head getHead() {
return head;
}
public Body getBody() {
return body;
}
public void setRetMsgCode(String code, String msg) {
this.head.setRetCode(code);
this.head.setRetMsg(msg);
}
public void setRetMsgCode(String code) {
this.setRetMsgCode(code, null);
}
public void setDataSet(String total, List rows) {
this.body.setDataset(total, rows);
}
public static DataTransaction fromJSON(String jsonString) {
return JSON.parseObject(jsonString, DataTransaction.class);
}
public String toJSON() {
return JSON.toJSONString(this);
}
public static void main(String args[]) {
DataTransaction dt = new DataTransaction();
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
Map<String, Object> m = new HashMap<String, Object>();
m.put("name", "tom");
m.put("sex", "m");
list.add(m);
dt.setDataSet("1000", list);
dt.setRetMsgCode("1", "ok");
dt.getHead().setAppid("back");
dt.getHead().setSeqno("201010");
dt.getHead().getUser().setId("root");
Map<String, String> m2 = new HashMap<String, String>();
m2.put("name1", "tom");
m2.put("name2", "tom");
m2.put("name3", "tom");
dt.getBody().getParam().setForm(m2);
System.out.println(dt.toJSON());
DataTransaction dt2 = DataTransaction.fromJSON(dt.toJSON());
System.out.println(dt2.toJSON());
}
}