package com.simuwang.base.pojo.valuation;

import java.util.Date;
import java.util.List;


/**
 * @author Rain
 */
public class PreAssetsValuationInfo<T extends PreAssetsValuationBase> {
	private String userId;
	private String excelOriginName;
	private String excelNewName;
	private String savePath;
	private AssetsValuationType type;

	private Header header;
	private List<String> footer;
	private List<T> data;
	private Error error;

	public Error getError() {
		return error;
	}

	public void setError(Error error) {
		this.error = error;
	}

	public class Header {
		// 主标题
		private String title;
		// 子标题
		private String subTitle;
		private Date valuationDate;
		private double unitNetValue;
		private List<String> headerList;

		public String getTitle() {
			return title;
		}

		public void setTitle(String title) {
			this.title = title;
		}

		public String getSubTitle() {
			return subTitle;
		}

		public void setSubTitle(String subTitle) {
			this.subTitle = subTitle;
		}

		public Date getValuationDate() {
			return valuationDate;
		}

		public void setValuationDate(Date valuationDate) {
			this.valuationDate = valuationDate;
		}

		public double getUnitNetValue() {
			return unitNetValue;
		}

		public void setUnitNetValue(double unitNetValue) {
			this.unitNetValue = unitNetValue;
		}

		public List<String> getHeaderList() {
			return headerList;
		}

		public void setHeaderList(List<String> headerList) {
			this.headerList = headerList;
		}

		@Override
		public String toString() {
			return "Header{" +
					"title='" + title + '\'' +
					", subTitle='" + subTitle + '\'' +
					", valuationDate=" + valuationDate +
					", unitNetValue=" + unitNetValue +
					", headerList=" + headerList +
					'}';
		}
	}

	public class Error {
		private int rowNum = -1;
		private int cellNum = -1;
		private String excelName;
		private String msg;

		public String getExcelName() {
			return excelName;
		}

		public void setExcelName(String excelName) {
			this.excelName = excelName;
		}

		public int getRowNum() {
			return rowNum;
		}

		public Error setRowNum(int rowNum) {
			this.rowNum = rowNum;
			return this;
		}

		public int getCellNum() {
			return cellNum;
		}

		public Error setCellNum(int cellNum) {
			this.cellNum = cellNum;
			return this;
		}

		public String getMsg() {
			return msg;
		}

		public Error setMsg(String msg) {
			this.msg = msg;
			return this;
		}

		@Override
		public String toString() {
			return "Error [rowNum=" + rowNum + ", cellNum=" + cellNum + ", msg=" + msg + "]";
		}
	}

	public String getUserId() {
		return userId;
	}

	public void setUserId(String userId) {
		this.userId = userId;
	}

	public String getExcelOriginName() {
		return excelOriginName;
	}

	public void setExcelOriginName(String excelOriginName) {
		this.excelOriginName = excelOriginName;
	}

	public String getExcelNewName() {
		return excelNewName;
	}

	public void setExcelNewName(String excelNewName) {
		this.excelNewName = excelNewName;
	}

	public String getSavePath() {
		return savePath;
	}

	public void setSavePath(String savePath) {
		this.savePath = savePath;
	}

	public AssetsValuationType getType() {
		return type;
	}

	public void setType(AssetsValuationType type) {
		this.type = type;
	}

	public Header getHeader() {
		return header;
	}

	public void setHeader(Header header) {
		this.header = header;
	}

	public List<T> getData() {
		return data;
	}

	public void setData(List<T> data) {
		this.data = data;
	}

	public List<String> getFooter() {
		return footer;
	}

	public void setFooter(List<String> footer) {
		this.footer = footer;
	}

}
