package com.cim.idm.wmspackage.productpacking.management.data;

import java.sql.Timestamp;

import com.cim.idm.framework.orm.info.HistoryDataInfo;
import com.cim.idm.framework.orm.info.access.FieldAccessor;

public class ProductPackingHistory extends FieldAccessor implements HistoryDataInfo<ProductPackingHistoryKey> {

	private ProductPackingHistoryKey key;
	private String packingType ; //A packing group type. [ PALLET | BOX | TRAY ]
	private String contentMaterialType ; //A material type to be contained in a packing group. [ PRODUCT | PACKINGGROUP ]
	private String detailMaterialType ;//A detail material type.
	private String superProductPackingName; //A super pacing group name.
	private String productSpecName; //A product spec.
	private String packingGrade; //A product grade.
	private long subPackingQuantity;
	//private long materialQuantity; //The quantity of sub packinggroup in a packing group.
	private long oldProductQuantity; //previous product quantity 
	private long productQuantity; //The quantity of products contained in a packing group.
	private String packingState; //A packing group state. [ Created | Released | Scrapped | Emptied | Completed ]
	private String oldPackingState; //A old packing group state.
	private String stockState; //A stock state. [ NotStocked | PreStocked | Stocked | OutReady | StockOut ]
	private String oldStockState; //A old stock state.
	private String holdState; //A hold state. [ NotOnHold | OnHold ]
	private String areaName; //An area name.
	private String locationName; //A location.
//	private String trayName; //a Tray name. 
	private String durableName;
	private String productProcessGroupName;
	private String shipRequestReserveState; //A reserve state for shiprequest.[ NotOnReserve | OnReserve ]
	private String shipRequestConfirmState; //A confirm state for shiprequest.[ NotOnConfirm | OnConfirm ]
	private String shipRequestName; //A invoice No. (Pallet Only) At Reserve ShipRequest
	private String shipRequestDetailName; //A invoice Detail No. (Pallet Only) At Reserve ShipRequest
	private String domesticExport; //A Desitination type of ship. [D = Domestic | E = Export ]
	private String eventName; //The last event name.
	private Timestamp eventTime; //A time when the last event is reported.
	private String eventUser; //A user who reports the last event.
	private String eventComment; //The last event comment.
	private Timestamp createTime; //A time when created.
	private String createUser; //The user who creates.
	private Timestamp stockInTime; //A stock in time.
	private String stockInUser; //The user who stock in.
	private String reasonCodeType; //A type of a reason code.
	private String reasonCode; //A reason Code
	
	
	@Override
	public ProductPackingHistoryKey getKey() {
		return key;
	}

	@Override
	public void setKey(ProductPackingHistoryKey key) {
		this.key = key;
	}

//	public String getPackingGroupType() {
//		return packingGroupType;
//	}
//
//	public void setPackingGroupType(String packingGroupType) {
//		this.packingGroupType = packingGroupType;
//	}
//
//	public String getMaterialType() {
//		return materialType;
//	}
//
//	public void setMaterialType(String materialType) {
//		this.materialType = materialType;
//	}

	public String getDetailMaterialType() {
		return detailMaterialType;
	}

	public void setDetailMaterialType(String detailMaterialType) {
		this.detailMaterialType = detailMaterialType;
	}

//	public String getSuperPackingGroupName() {
//		return superPackingGroupName;
//	}
//
//	public void setSuperPackingGroupName(String superPackingGroupName) {
//		this.superPackingGroupName = superPackingGroupName;
//	}

	public String getProductSpecName() {
		return productSpecName;
	}

	public void setProductSpecName(String productSpecName) {
		this.productSpecName = productSpecName;
	}

//	public String getPackingGroupGrade() {
//		return packingGroupGrade;
//	}
//
//	public void setPackingGroupGrade(String packingGroupGrade) {
//		this.packingGroupGrade = packingGroupGrade;
//	}
//
//	public long getMaterialQuantity() {
//		return materialQuantity;
//	}
//
//	public void setMaterialQuantity(long materialQuantity) {
//		this.materialQuantity = materialQuantity;
//	}

	public long getProductQuantity() {
		return productQuantity;
	}

	public void setProductQuantity(long productQuantity) {
		this.productQuantity = productQuantity;
	}
	
	

	public long getOldProductQuantity() {
		return oldProductQuantity;
	}

	public void setOldProductQuantity(long oldProductQuantity) {
		this.oldProductQuantity = oldProductQuantity;
	}

	public String getEventName() {
		return eventName;
	}
	
	public void setEventName(String eventName) {
		this.eventName = eventName;
	}

//	public String getPackingGroupState() {
//		return packingGroupState;
//	}
//
//	public void setPackingGroupState(String packingGroupState) {
//		this.packingGroupState = packingGroupState;
//	}
//
//	public String getOldPackingGroupState() {
//		return oldPackingGroupState;
//	}
//
//	public void setOldPackingGroupState(String oldPackingGroupState) {
//		this.oldPackingGroupState = oldPackingGroupState;
//	}

	public String getStockState() {
		return stockState;
	}

	public void setStockState(String stockState) {
		this.stockState = stockState;
	}

	public String getOldStockState() {
		return oldStockState;
	}

	public void setOldStockState(String oldStockState) {
		this.oldStockState = oldStockState;
	}

	public String getHoldState() {
		return holdState;
	}

	public void setHoldState(String holdState) {
		this.holdState = holdState;
	}

	public String getAreaName() {
		return areaName;
	}

	public void setAreaName(String areaName) {
		this.areaName = areaName;
	}

	public String getLocationName() {
		return locationName;
	}

	public void setLocationName(String locationName) {
		this.locationName = locationName;
	}

//	public String getTrayName() {
//		return trayName;
//	}
//
//	public void setTrayName(String trayName) {
//		this.trayName = trayName;
//	}

	public String getDurableName() {
		return durableName;
	}

	public void setDurableName(String durableName) {
		this.durableName = durableName;
	}

	public String getShipRequestReserveState() {
		return shipRequestReserveState;
	}

	public void setShipRequestReserveState(String shipRequestReserveState) {
		this.shipRequestReserveState = shipRequestReserveState;
	}

	public String getShipRequestConfirmState() {
		return shipRequestConfirmState;
	}

	public void setShipRequestConfirmState(String shipRequestConfirmState) {
		this.shipRequestConfirmState = shipRequestConfirmState;
	}

//	public String getInvoiceNo() {
//		return invoiceNo;
//	}
//
//	public void setInvoiceNo(String invoiceNo) {
//		this.invoiceNo = invoiceNo;
//	}
//
//	public String getInvoiceDetailNo() {
//		return invoiceDetailNo;
//	}
//
//	public void setInvoiceDetailNo(String invoiceDetailNo) {
//		this.invoiceDetailNo = invoiceDetailNo;
//	}

	public String getDomesticExport() {
		return domesticExport;
	}

	public String getShipRequestName() {
		return shipRequestName;
	}

	public void setShipRequestName(String shipRequestName) {
		this.shipRequestName = shipRequestName;
	}

	public String getShipRequestDetailName() {
		return shipRequestDetailName;
	}

	public void setShipRequestDetailName(String shipRequestDetailName) {
		this.shipRequestDetailName = shipRequestDetailName;
	}

	public void setDomesticExport(String domesticExport) {
		this.domesticExport = domesticExport;
	}

	public Timestamp getEventTime() {
		return eventTime;
	}

	public void setEventTime(Timestamp eventTime) {
		this.eventTime = eventTime;
	}

	public String getEventUser() {
		return eventUser;
	}

	public void setEventUser(String eventUser) {
		this.eventUser = eventUser;
	}

	public String getEventComment() {
		return eventComment;
	}

	public void setEventComment(String eventComment) {
		this.eventComment = eventComment;
	}

	public Timestamp getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Timestamp createTime) {
		this.createTime = createTime;
	}

	public String getCreateUser() {
		return createUser;
	}

	public void setCreateUser(String createUser) {
		this.createUser = createUser;
	}

	public Timestamp getStockInTime() {
		return stockInTime;
	}

	public void setStockInTime(Timestamp stockInTime) {
		this.stockInTime = stockInTime;
	}

	public String getStockInUser() {
		return stockInUser;
	}

	public void setStockInUser(String stockInUser) {
		this.stockInUser = stockInUser;
	}

	public String getReasonCodeType() {
		return reasonCodeType;
	}

	public void setReasonCodeType(String reasonCodeType) {
		this.reasonCodeType = reasonCodeType;
	}

	public String getReasonCode() {
		return reasonCode;
	}

	public void setReasonCode(String reasonCode) {
		this.reasonCode = reasonCode;
	}

	public String getPackingType() {
		return packingType;
	}

	public void setPackingType(String packingType) {
		this.packingType = packingType;
	}

	public String getContentMaterialType() {
		return contentMaterialType;
	}

	public void setContentMaterialType(String contentMaterialType) {
		this.contentMaterialType = contentMaterialType;
	}

	public String getSuperProductPackingName() {
		return superProductPackingName;
	}

	public void setSuperProductPackingName(String superProductPackingName) {
		this.superProductPackingName = superProductPackingName;
	}

	public String getPackingGrade() {
		return packingGrade;
	}

	public void setPackingGrade(String packingGrade) {
		this.packingGrade = packingGrade;
	}

	public long getSubPackingQuantity() {
		return subPackingQuantity;
	}

	public void setSubPackingQuantity(long subPackingQuantity) {
		this.subPackingQuantity = subPackingQuantity;
	}

	public String getPackingState() {
		return packingState;
	}

	public void setPackingState(String packingState) {
		this.packingState = packingState;
	}

	public String getOldPackingState() {
		return oldPackingState;
	}

	public void setOldPackingState(String oldPackingState) {
		this.oldPackingState = oldPackingState;
	}

	public String getProductProcessGroupName() {
		return productProcessGroupName;
	}

	public void setProductProcessGroupName(String productProcessGroupName) {
		this.productProcessGroupName = productProcessGroupName;
	}

	
}
