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

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_rqc_re_lines", appendDefaultJdbcType = true, camelToUnderline = true)
public class RqcReLines extends BaseModel implements Serializable {
	private static final long serialVersionUID = 142872020009166085L;
	@Id
	@AutoKey(type = AutoKey.TYPE_SNOWFLAKE)
	/** 唯一行号ID(主键雪花id) **/
	@ApiModelProperty(value = "唯一行号ID(主键雪花id)")
	private String rqcReLineId;

	/** 单据id **/
	@ApiModelProperty(value = "单据id")
	private String rqcReHeaderId;

	/** 质检任务池ID（来源RQC_RE_TASK） **/
	@ApiModelProperty(value = "质检任务池ID（来源RQC_RE_TASK）")
	private String taskReRqcId;

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

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

	/** 货主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;

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

	/** 容器编码（冗余，关联收货单行） **/
	@ApiModelProperty(value = "容器编码（冗余，关联收货单行）")
	private String containerCode;

	/** 货格编码（冗余，关联收货单行） **/
	@ApiModelProperty(value = "货格编码（冗余，关联收货单行）")
	private String goodsCaseCode;

	/** 批次ID **/
	@ApiModelProperty(value = "批次ID")
	private String batchId;

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

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

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

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

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

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

	/** 抽样整箱数 **/
	@ApiModelProperty(value = "抽样整箱数")
	private BigDecimal qcOddCaseQty;

	/** 抽样零散数 **/
	@ApiModelProperty(value = "抽样零散数")
	private BigDecimal qcOddPieceQty;

	/** 实际抽样整箱数 **/
	@ApiModelProperty(value = "实际抽样整箱数")
	private BigDecimal qcOddCaseActQty;

	/** 实际抽样零散数 **/
	@ApiModelProperty(value = "实际抽样零散数")
	private BigDecimal qcOddPieceActQty;

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

	/** 质检状态（初始/确认） **/
	@ApiModelProperty(value = "质检状态（初始/确认）")
	private String qcStatus;

	/** 质检结论（0合格/1不合格/2待处理/3拒绝） **/
	@ApiModelProperty(value = "质检结论（0合格/1不合格/2待处理/3拒绝）")
	private String qcResult;

	/** 质检原因 **/
	@ApiModelProperty(value = "质检原因")
	private String qcReason;

	/** 质检等级 **/
	@ApiModelProperty(value = "质检等级")
	private String qcGrade;

	/** 质检员 **/
	@ApiModelProperty(value = "质检员")
	private String qcOpcode;

	/** 质检时间 **/
	@ApiModelProperty(value = "质检时间")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date qcDate;

	/** 复检状态（初始/确认） **/
	@ApiModelProperty(value = "复检状态（初始/确认）")
	private String qcReStatus;

	/** 复检结论（0合格/1不合格/2待处理/3拒绝） **/
	@ApiModelProperty(value = "复检结论（0合格/1不合格/2待处理/3拒绝）")
	private String qcReResult;

	/** 复检原因 **/
	@ApiModelProperty(value = "复检原因")
	private String qcReReason;

	/** 复检等级 **/
	@ApiModelProperty(value = "复检等级")
	private String qcReGrade;

	/** 复检员 **/
	@ApiModelProperty(value = "复检员")
	private String qcReOpcode;

	/** 质检时间 **/
	@ApiModelProperty(value = "质检时间")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date qcReDate;

	/** 复检结论0合格/1不合格/2待处理/3拒绝） **/
	@ApiModelProperty(value = "复检结论0合格/1不合格/2待处理/3拒绝）")
	private String stockStatus;

	/** 货品标志 **/
	@ApiModelProperty(value = "货品标志")
	private String itemFlag;

	/** 复检次数 **/
	@ApiModelProperty(value = "复检次数")
	private Integer times;

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

	@ApiModelProperty(value = "(新)入库来源行id", position = -1111)
	private String refLineId;

	// 来源类型
	@ApiModelProperty(value = "(新)入库来源类型(0收货1质检2复检)", position = -1111)
	private Integer refType;

	@ApiModelProperty(value = "处理意见", position = -1111)
	private String handlingSuggestion;
	@ApiModelProperty(value = "审核意见", position = -1111)
	private String aduitSuggestion;
	@ApiModelProperty(value = "供应商批号", position = -1111)
	private String vendorBatchNum;

	@ApiModelProperty(value = "复检意见1(主管)", position = -1114)
	private String qcReSuggestion;

	@ApiModelProperty(value = "复检结论2(经理)", position = -1114)
	private String qcReResult2;
	@ApiModelProperty(value = "复检人2(经理)", position = -1114)
	private String qcReOpcode2;
	@ApiModelProperty(value = "复检时间2(经理)", position = -1114)
	private Date qcReDate2;
	@ApiModelProperty(value = "复检意见2(经理)", position = -1114)
	private String qcReSuggestion2;

	@ApiModelProperty(value = "复检结论3(备用)", position = -1114)
	private String qcReResult3;
	@ApiModelProperty(value = "复检人3(备用)", position = -1114)
	private String qcReOpcode3;
	@ApiModelProperty(value = "复检时间3(备用)", position = -1114)
	private Date qcReDate3;
	@ApiModelProperty(value = "复检意见3(备用)", position = -1114)
	private String qcReSuggestion3;

	public String getQcReSuggestion() {
		return qcReSuggestion;
	}

	public void setQcReSuggestion(String qcReSuggestion) {
		this.qcReSuggestion = qcReSuggestion;
	}

	public String getQcReResult2() {
		return qcReResult2;
	}

	public void setQcReResult2(String qcReResult2) {
		this.qcReResult2 = qcReResult2;
	}

	public String getQcReOpcode2() {
		return qcReOpcode2;
	}

	public void setQcReOpcode2(String qcReOpcode2) {
		this.qcReOpcode2 = qcReOpcode2;
	}

	public Date getQcReDate2() {
		return qcReDate2;
	}

	public void setQcReDate2(Date qcReDate2) {
		this.qcReDate2 = qcReDate2;
	}

	public String getQcReSuggestion2() {
		return qcReSuggestion2;
	}

	public void setQcReSuggestion2(String qcReSuggestion2) {
		this.qcReSuggestion2 = qcReSuggestion2;
	}

	public String getQcReResult3() {
		return qcReResult3;
	}

	public void setQcReResult3(String qcReResult3) {
		this.qcReResult3 = qcReResult3;
	}

	public String getQcReOpcode3() {
		return qcReOpcode3;
	}

	public void setQcReOpcode3(String qcReOpcode3) {
		this.qcReOpcode3 = qcReOpcode3;
	}

	public Date getQcReDate3() {
		return qcReDate3;
	}

	public void setQcReDate3(Date qcReDate3) {
		this.qcReDate3 = qcReDate3;
	}

	public String getQcReSuggestion3() {
		return qcReSuggestion3;
	}

	public void setQcReSuggestion3(String qcReSuggestion3) {
		this.qcReSuggestion3 = qcReSuggestion3;
	}

	public String getHandlingSuggestion() {
		return handlingSuggestion;
	}

	public void setHandlingSuggestion(String handlingSuggestion) {
		this.handlingSuggestion = handlingSuggestion;
	}

	public String getAduitSuggestion() {
		return aduitSuggestion;
	}

	public void setAduitSuggestion(String aduitSuggestion) {
		this.aduitSuggestion = aduitSuggestion;
	}

	public String getVendorBatchNum() {
		return vendorBatchNum;
	}

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

	public Integer getRefType() {
		return refType;
	}

	public void setRefType(Integer refType) {
		this.refType = refType;
	}

	public String getRefLineId() {
		return refLineId;
	}

	public void setRefLineId(String refLineId) {
		this.refLineId = refLineId;
	}

	public String getRqcReLineId() {
		return rqcReLineId;
	}

	public void setRqcReLineId(String rqcReLineId) {
		this.rqcReLineId = rqcReLineId;
	}

	public String getRqcReHeaderId() {
		return rqcReHeaderId;
	}

	public void setRqcReHeaderId(String rqcReHeaderId) {
		this.rqcReHeaderId = rqcReHeaderId;
	}

	public String getTaskReRqcId() {
		return taskReRqcId;
	}

	public void setTaskReRqcId(String taskReRqcId) {
		this.taskReRqcId = taskReRqcId;
	}

	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 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;
	}

	public String getItemId() {
		return itemId;
	}

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

	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 getBatchId() {
		return batchId;
	}

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

	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 getPieceQty() {
		return pieceQty;
	}

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

	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 BigDecimal getQcOddCaseQty() {
		return qcOddCaseQty;
	}

	public void setQcOddCaseQty(BigDecimal qcOddCaseQty) {
		this.qcOddCaseQty = qcOddCaseQty;
	}

	public BigDecimal getQcOddPieceQty() {
		return qcOddPieceQty;
	}

	public void setQcOddPieceQty(BigDecimal qcOddPieceQty) {
		this.qcOddPieceQty = qcOddPieceQty;
	}

	public BigDecimal getQcOddCaseActQty() {
		return qcOddCaseActQty;
	}

	public void setQcOddCaseActQty(BigDecimal qcOddCaseActQty) {
		this.qcOddCaseActQty = qcOddCaseActQty;
	}

	public BigDecimal getQcOddPieceActQty() {
		return qcOddPieceActQty;
	}

	public void setQcOddPieceActQty(BigDecimal qcOddPieceActQty) {
		this.qcOddPieceActQty = qcOddPieceActQty;
	}

	public String getLineRemark() {
		return lineRemark;
	}

	public void setLineRemark(String lineRemark) {
		this.lineRemark = lineRemark;
	}

	public String getQcStatus() {
		return qcStatus;
	}

	public void setQcStatus(String qcStatus) {
		this.qcStatus = qcStatus;
	}

	public String getQcResult() {
		return qcResult;
	}

	public void setQcResult(String qcResult) {
		this.qcResult = qcResult;
	}

	public String getQcReason() {
		return qcReason;
	}

	public void setQcReason(String qcReason) {
		this.qcReason = qcReason;
	}

	public String getQcGrade() {
		return qcGrade;
	}

	public void setQcGrade(String qcGrade) {
		this.qcGrade = qcGrade;
	}

	public String getQcOpcode() {
		return qcOpcode;
	}

	public void setQcOpcode(String qcOpcode) {
		this.qcOpcode = qcOpcode;
	}

	public Date getQcDate() {
		return qcDate;
	}

	public void setQcDate(Date qcDate) {
		this.qcDate = qcDate;
	}

	public String getQcReStatus() {
		return qcReStatus;
	}

	public void setQcReStatus(String qcReStatus) {
		this.qcReStatus = qcReStatus;
	}

	public String getQcReResult() {
		return qcReResult;
	}

	public void setQcReResult(String qcReResult) {
		this.qcReResult = qcReResult;
	}

	public String getQcReReason() {
		return qcReReason;
	}

	public void setQcReReason(String qcReReason) {
		this.qcReReason = qcReReason;
	}

	public String getQcReGrade() {
		return qcReGrade;
	}

	public void setQcReGrade(String qcReGrade) {
		this.qcReGrade = qcReGrade;
	}

	public String getQcReOpcode() {
		return qcReOpcode;
	}

	public void setQcReOpcode(String qcReOpcode) {
		this.qcReOpcode = qcReOpcode;
	}

	public Date getQcReDate() {
		return qcReDate;
	}

	public void setQcReDate(Date qcReDate) {
		this.qcReDate = qcReDate;
	}

	public String getStockStatus() {
		return stockStatus;
	}

	public void setStockStatus(String stockStatus) {
		this.stockStatus = stockStatus;
	}

	public String getItemFlag() {
		return itemFlag;
	}

	public void setItemFlag(String itemFlag) {
		this.itemFlag = itemFlag;
	}

	public Integer getTimes() {
		return times;
	}

	public void setTimes(Integer times) {
		this.times = times;
	}

	public String getManufacturerLotNum() {
		return manufacturerLotNum;
	}

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

	public String getBatchNum() {
		return batchNum;
	}

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

}
