package com.prolog.cs.biz.inbound.model.rcv;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.prolog.framework.bz.core.model.BaseModel;
import com.prolog.framework.core.annotation.AutoKey;
import com.prolog.framework.core.annotation.Id;
import com.prolog.framework.core.annotation.Table;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @Description
 * @Date 2021-04-02
 */

@ApiModel
@Table(value = "wms_in_rcv_reject_lines", appendDefaultJdbcType = true, camelToUnderline = true)
public class RcvRejectLines extends BaseModel implements Serializable {
	private static final long serialVersionUID = 7996371164786955913L;
	@Id
	@AutoKey(type = AutoKey.TYPE_SNOWFLAKE)
	/** 行ID(主键雪花id) **/
	@ApiModelProperty(value = "行ID(主键雪花id)")
	private String inRejectLineId;

	/** 收货单头ID **/
	@ApiModelProperty(value = "收货单头ID")
	private String rcvHeaderId;

	/** 收货行头ID **/
	@ApiModelProperty(value = "收货行头ID")
	private String rcvLineId;

	/** 行号 **/
	@ApiModelProperty(value = "行号")
	private BigDecimal lineNum;

	/** 库位ID **/
	@ApiModelProperty(value = "库位ID")
	private String warehouseLocatorId;

	/** 商品ID **/
	@ApiModelProperty(value = "商品ID")
	private String itemId;

	/** 单品数量 **/
	@ApiModelProperty(value = "单品数量")
	private BigDecimal pieceQty;

	/** 包装单位 **/
	@ApiModelProperty(value = "包装单位")
	private String uom;

	/** 包装单位类型(2019/2020)新老包装 **/
	@ApiModelProperty(value = "包装单位类型(2019/2020)新老包装")
	private String uomType;

	/** 包装含量 **/
	@ApiModelProperty(value = "包装含量")
	private BigDecimal conversionRate;

	/** 整箱数 **/
	@ApiModelProperty(value = "整箱数")
	private BigDecimal oddCaseQty;

	/** 零散数 **/
	@ApiModelProperty(value = "零散数")
	private BigDecimal oddPieceQty;

	/** batch_id **/
	@ApiModelProperty(value = "batch_id")
	private String batchId;

	/** 批次号 **/
	@ApiModelProperty(value = "批次号")
	private String batchNum;

	/** 批次生产日期 **/
	@ApiModelProperty(value = "批次生产日期")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date batchProductionDate;

	/** 批次有效期 **/
	@ApiModelProperty(value = "批次有效期")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date batchExpiredDate;

	/** 供应商批次号 **/
	@ApiModelProperty(value = "供应商批次号")
	private String vendorBatchNum;

	/** 生产商批号 **/
	@ApiModelProperty(value = "生产商批号")
	private String manufacturerLotNum;

	/** 容器编码 **/
	@ApiModelProperty(value = "容器编码")
	private String containerCode;

	/** 货格编码 **/
	@ApiModelProperty(value = "货格编码")
	private String goodsCaseCode;

	/** 备注 **/
	@ApiModelProperty(value = "备注")
	private String comments;

	/** 结论(拒收) **/
	@ApiModelProperty(value = "结论(拒收)")
	private String result;

	/** 原因 **/
	@ApiModelProperty(value = "原因")
	private String reason;

	/** 执行者 **/
	@ApiModelProperty(value = "执行者")
	private String executorUser;

	private String segment1;

	private String segment2;

	private String segment3;

	private String segment4;

	private String segment5;

	private String attribute1;

	private String attribute2;

	private String attribute3;

	private String attribute4;

	private String attribute5;

	/** 任务池ID（来源TASK） **/
	@ApiModelProperty(value = "任务池ID（来源TASK）")
	private String taskId;

	/** 货主ID（冗余，关联收货单） **/
	@ApiModelProperty(value = "货主ID（冗余，关联收货单）")
	private String mtlOwnerId;

	/** 仓库ID（冗余，关联收货单） **/
	@ApiModelProperty(value = "仓库ID（冗余，关联收货单）")
	private String warehouseId;

	/** 来源单类型（冗余，关联收货单） **/
	@ApiModelProperty(value = "来源单类型（冗余，关联收货单）")
	private String srcBillType;

	/** 来源单头ID（冗余，关联收货单） **/
	@ApiModelProperty(value = "来源单头ID（冗余，关联收货单）")
	private String srcHeaderId;

	/** 来源单行ID（冗余，关联收货单） **/
	@ApiModelProperty(value = "来源单行ID（冗余，关联收货单）")
	private String srcLineId;

	/** ASN头ID（冗余，关联收货单） **/
	@ApiModelProperty(value = "ASN头ID（冗余，关联收货单）")
	private String asnHeaderId;

	/** ASN行ID（冗余，关联收货单） **/
	@ApiModelProperty(value = "ASN行ID（冗余，关联收货单）")
	private String asnLineId;

	public String getInRejectLineId() {
		return inRejectLineId;
	}

	public void setInRejectLineId(String inRejectLineId) {
		this.inRejectLineId = inRejectLineId;
	}

	public String getRcvHeaderId() {
		return rcvHeaderId;
	}

	public void setRcvHeaderId(String rcvHeaderId) {
		this.rcvHeaderId = rcvHeaderId;
	}

	public String getRcvLineId() {
		return rcvLineId;
	}

	public void setRcvLineId(String rcvLineId) {
		this.rcvLineId = rcvLineId;
	}

	public BigDecimal getLineNum() {
		return lineNum;
	}

	public void setLineNum(BigDecimal lineNum) {
		this.lineNum = lineNum;
	}

	public String getWarehouseLocatorId() {
		return warehouseLocatorId;
	}

	public void setWarehouseLocatorId(String warehouseLocatorId) {
		this.warehouseLocatorId = warehouseLocatorId;
	}

	public String getItemId() {
		return itemId;
	}

	public void setItemId(String itemId) {
		this.itemId = itemId;
	}

	public BigDecimal getPieceQty() {
		return pieceQty;
	}

	public void setPieceQty(BigDecimal pieceQty) {
		this.pieceQty = pieceQty;
	}

	public String getUom() {
		return uom;
	}

	public void setUom(String uom) {
		this.uom = uom;
	}

	public String getUomType() {
		return uomType;
	}

	public void setUomType(String uomType) {
		this.uomType = uomType;
	}

	public BigDecimal getConversionRate() {
		return conversionRate;
	}

	public void setConversionRate(BigDecimal conversionRate) {
		this.conversionRate = conversionRate;
	}

	public BigDecimal getOddCaseQty() {
		return oddCaseQty;
	}

	public void setOddCaseQty(BigDecimal oddCaseQty) {
		this.oddCaseQty = oddCaseQty;
	}

	public BigDecimal getOddPieceQty() {
		return oddPieceQty;
	}

	public void setOddPieceQty(BigDecimal oddPieceQty) {
		this.oddPieceQty = oddPieceQty;
	}

	public String getBatchId() {
		return batchId;
	}

	public void setBatchId(String batchId) {
		this.batchId = batchId;
	}

	public String getBatchNum() {
		return batchNum;
	}

	public void setBatchNum(String batchNum) {
		this.batchNum = batchNum;
	}

	public Date getBatchProductionDate() {
		return batchProductionDate;
	}

	public void setBatchProductionDate(Date batchProductionDate) {
		this.batchProductionDate = batchProductionDate;
	}

	public Date getBatchExpiredDate() {
		return batchExpiredDate;
	}

	public void setBatchExpiredDate(Date batchExpiredDate) {
		this.batchExpiredDate = batchExpiredDate;
	}

	public String getVendorBatchNum() {
		return vendorBatchNum;
	}

	public void setVendorBatchNum(String vendorBatchNum) {
		this.vendorBatchNum = vendorBatchNum;
	}

	public String getManufacturerLotNum() {
		return manufacturerLotNum;
	}

	public void setManufacturerLotNum(String manufacturerLotNum) {
		this.manufacturerLotNum = manufacturerLotNum;
	}

	public String getContainerCode() {
		return containerCode;
	}

	public void setContainerCode(String containerCode) {
		this.containerCode = containerCode;
	}

	public String getGoodsCaseCode() {
		return goodsCaseCode;
	}

	public void setGoodsCaseCode(String goodsCaseCode) {
		this.goodsCaseCode = goodsCaseCode;
	}

	public String getComments() {
		return comments;
	}

	public void setComments(String comments) {
		this.comments = comments;
	}

	public String getResult() {
		return result;
	}

	public void setResult(String result) {
		this.result = result;
	}

	public String getReason() {
		return reason;
	}

	public void setReason(String reason) {
		this.reason = reason;
	}

	public String getExecutorUser() {
		return executorUser;
	}

	public void setExecutorUser(String executorUser) {
		this.executorUser = executorUser;
	}

	public String getSegment1() {
		return segment1;
	}

	public void setSegment1(String segment1) {
		this.segment1 = segment1;
	}

	public String getSegment2() {
		return segment2;
	}

	public void setSegment2(String segment2) {
		this.segment2 = segment2;
	}

	public String getSegment3() {
		return segment3;
	}

	public void setSegment3(String segment3) {
		this.segment3 = segment3;
	}

	public String getSegment4() {
		return segment4;
	}

	public void setSegment4(String segment4) {
		this.segment4 = segment4;
	}

	public String getSegment5() {
		return segment5;
	}

	public void setSegment5(String segment5) {
		this.segment5 = segment5;
	}

	public String getAttribute1() {
		return attribute1;
	}

	public void setAttribute1(String attribute1) {
		this.attribute1 = attribute1;
	}

	public String getAttribute2() {
		return attribute2;
	}

	public void setAttribute2(String attribute2) {
		this.attribute2 = attribute2;
	}

	public String getAttribute3() {
		return attribute3;
	}

	public void setAttribute3(String attribute3) {
		this.attribute3 = attribute3;
	}

	public String getAttribute4() {
		return attribute4;
	}

	public void setAttribute4(String attribute4) {
		this.attribute4 = attribute4;
	}

	public String getAttribute5() {
		return attribute5;
	}

	public void setAttribute5(String attribute5) {
		this.attribute5 = attribute5;
	}

	public String getTaskId() {
		return taskId;
	}

	public void setTaskId(String taskId) {
		this.taskId = taskId;
	}

	public String getMtlOwnerId() {
		return mtlOwnerId;
	}

	public void setMtlOwnerId(String mtlOwnerId) {
		this.mtlOwnerId = mtlOwnerId;
	}

	public String getWarehouseId() {
		return warehouseId;
	}

	public void setWarehouseId(String warehouseId) {
		this.warehouseId = warehouseId;
	}

	public String getSrcBillType() {
		return srcBillType;
	}

	public void setSrcBillType(String srcBillType) {
		this.srcBillType = srcBillType;
	}

	public String getSrcHeaderId() {
		return srcHeaderId;
	}

	public void setSrcHeaderId(String srcHeaderId) {
		this.srcHeaderId = srcHeaderId;
	}

	public String getSrcLineId() {
		return srcLineId;
	}

	public void setSrcLineId(String srcLineId) {
		this.srcLineId = srcLineId;
	}

	public String getAsnHeaderId() {
		return asnHeaderId;
	}

	public void setAsnHeaderId(String asnHeaderId) {
		this.asnHeaderId = asnHeaderId;
	}

	public String getAsnLineId() {
		return asnLineId;
	}

	public void setAsnLineId(String asnLineId) {
		this.asnLineId = asnLineId;
	}

}
