package com.prolog.upcloud.base.wh.operate.model;

import com.prolog.framework.core.annotation.AutoKey;
import com.prolog.framework.core.annotation.Column;
import com.prolog.framework.core.annotation.Id;
import com.prolog.framework.core.annotation.Ignore;
import com.prolog.framework.core.annotation.Table;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

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

/**
 * @Description 库存调整明细
 * @Date 2021-04-07
 */
@ApiModel
@Table(value = "wms_adjust_d")
public class WmsAdjustD implements Serializable {
	private static final long serialVersionUID = 1615077283384344881L;
	@Id
	@AutoKey(type = AutoKey.TYPE_SNOWFLAKE)
	@ApiModelProperty(value = "行id")
	@Column(value = "adjust_line_id")
	private String adjustLineId;

	@ApiModelProperty(value = "头ID")
	@Column(value = "adjust_header_id")
	private String adjustHeaderId;

	@Column(value = "line_num")
	private Long lineNum;

	@ApiModelProperty(value = "库位ID")
	@Column(value = "warehouse_locator_id")
	private String whLocatorId;

	@ApiModelProperty(value = "货主ID")
	@Column(value = "cargo_owner_id")
	private String cargoOwnerId;

	@ApiModelProperty(value = "容器")
	@Column(value = "container_code")
	private String containerCode;

	@ApiModelProperty(value = "货格")
	@Column(value = "goods_case_code")
	private String goodsCaseCode;

	@ApiModelProperty(value = "商品ID")
	@Column(value = "item_id")
	private String itemId;

	@ApiModelProperty(value = "商品批次ID")
	@Column(value = "batch_id")
	private String batchId;

	@ApiModelProperty(value = "商品批次编号")
	@Column(value = "batch_num")
	private String batchNum;

	@ApiModelProperty(value = "单位(最小)")
	@Column(value = "uom")
	private String uom;

	@ApiModelProperty(value = "包装含量（最大）")
	@Column(value = "conversion_rate")
	private BigDecimal conversionRate;

	@ApiModelProperty(value = "数量(作废)")
	@Column(value = "quantity")
	private BigDecimal quantity;

	@ApiModelProperty(value = "损溢数量(最小,正数为溢,负数为损)")
	@Column(value = "piece_quantity")
	private BigDecimal pieceQuantity;

	@ApiModelProperty(value = "差异数量(作废)")
	@Column(value = "diff_quantity")
	private BigDecimal diffQuantity;

	@ApiModelProperty(value = "企业id")
	@Column(value = "enterprise_id")
	private String enterpriseId;

	@Column(value = "gmt_create")
	private Date gmtCreate;

	@Column(value = "creator")
	private String creator;

	@Column(value = "creator_name")
	private String creatorName;

	@Column(value = "gmt_modified")
	private Date gmtModified;

	@Column(value = "modifier")
	private String modifier;

	@Column(value = "modifier_name")
	private String modifierName;

	@Column(value = "segment1")
	private String segment1;

	@Column(value = "segment2")
	private String segment2;

	@Column(value = "segment3")
	private String segment3;

	@Column(value = "segment4")
	private String segment4;

	@Column(value = "segment5")
	private String segment5;

	@Column(value = "comments")
	private String comments;

	@ApiModelProperty(value = "状态(0 刚生成(WMS一次审核) 5刚生成(WMS二次审核)  10已上传  30ERP已审核 40ERP驳回 50WMS记账完毕 60作废成功)")
	@Column(value = "status")
	private String status;

	@ApiModelProperty(value = "来源单ID(check_line_id)")
	@Column(value = "src_bill_d_id")
	private String srcBillDId;

	@ApiModelProperty(value = "来源单ID(盘点单CHECK_HEADER_ID)")
	@Column(value = "src_bill_h_id")
	private String srcBillHId;

	@ApiModelProperty(value = "审核时间")
	@Column(value = "adjust_date")
	private Date adjustDate;

	@ApiModelProperty(value = "库存状态（1合格/2不合格/3待检/4退货）")
	@Column(value = "stock_status")
	private String stockStatus;

	@ApiModelProperty(value = "账存数(盘前)")
	@Column(value = "piece_account")
	private BigDecimal pieceAccount;
	@ApiModelProperty(value = "实际数(盘后)")
	@Column(value = "piece_account_fact")
	private BigDecimal pieceAccountFact;

	@ApiModelProperty(value = "一审审核员")
	@Column(value = "op_user1")
	private String opUser1;

	@ApiModelProperty(value = "一审审核时间")
	@Column(value = "op_date1")
	private Date opDate1;

	@ApiModelProperty(value = "二审审核员")
	@Column(value = "op_user2")
	private String opUser2;

	@ApiModelProperty(value = "二审审核时间")
	@Column(value = "op_date2")
	private Date opDate2;

	// 批号
	// 生产日期
	// 有效期至

	@ApiModelProperty(value = "回传用的billno")
	@Column(value = "billno")
	private String billno;

	@ApiModelProperty(value = "是否是损溢代管库存(0否1是)")
	@Ignore
	private Integer isHost;

	public Integer getIsHost() {
		return isHost;
	}

	public void setIsHost(Integer isHost) {
		this.isHost = isHost;
	}

	public String getBillno() {
		return billno;
	}

	public void setBillno(String billno) {
		this.billno = billno;
	}

	public String getStockStatus() {
		return stockStatus;
	}

	public String getOpUser1() {
		return opUser1;
	}

	public void setOpUser1(String opUser1) {
		this.opUser1 = opUser1;
	}

	public Date getOpDate1() {
		return opDate1;
	}

	public void setOpDate1(Date opDate1) {
		this.opDate1 = opDate1;
	}

	public String getOpUser2() {
		return opUser2;
	}

	public void setOpUser2(String opUser2) {
		this.opUser2 = opUser2;
	}

	public Date getOpDate2() {
		return opDate2;
	}

	public void setOpDate2(Date opDate2) {
		this.opDate2 = opDate2;
	}

	public String getEnterpriseId() {
		return enterpriseId;
	}

	public void setEnterpriseId(String enterpriseId) {
		this.enterpriseId = enterpriseId;
	}

	public BigDecimal getPieceAccount() {
		return pieceAccount;
	}

	public void setPieceAccount(BigDecimal pieceAccount) {
		this.pieceAccount = pieceAccount;
	}

	public BigDecimal getPieceAccountFact() {
		return pieceAccountFact;
	}

	public void setPieceAccountFact(BigDecimal pieceAccountFact) {
		this.pieceAccountFact = pieceAccountFact;
	}

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

	public String getSrcBillDId() {
		return srcBillDId;
	}

	public void setSrcBillDId(String srcBillDId) {
		this.srcBillDId = srcBillDId;
	}

	public String getSrcBillHId() {
		return srcBillHId;
	}

	public void setSrcBillHId(String srcBillHId) {
		this.srcBillHId = srcBillHId;
	}

	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}

	public String getAdjustLineId() {
		return this.adjustLineId;
	}

	public void setAdjustLineId(String adjustLineId) {
		this.adjustLineId = adjustLineId;
	}

	public String getAdjustHeaderId() {
		return this.adjustHeaderId;
	}

	public void setAdjustHeaderId(String adjustHeaderId) {
		this.adjustHeaderId = adjustHeaderId;
	}

	public Long getLineNum() {
		return this.lineNum;
	}

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

	public String getWhLocatorId() {
		return whLocatorId;
	}

	public void setWhLocatorId(String whLocatorId) {
		this.whLocatorId = whLocatorId;
	}

	public String getCargoOwnerId() {
		return this.cargoOwnerId;
	}

	public void setCargoOwnerId(String cargoOwnerId) {
		this.cargoOwnerId = cargoOwnerId;
	}

	public String getContainerCode() {
		return this.containerCode;
	}

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

	public String getGoodsCaseCode() {
		return this.goodsCaseCode;
	}

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

	public String getItemId() {
		return this.itemId;
	}

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

	public String getBatchId() {
		return this.batchId;
	}

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

	public String getBatchNum() {
		return this.batchNum;
	}

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

	public String getUom() {
		return this.uom;
	}

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

	public BigDecimal getConversionRate() {
		return this.conversionRate;
	}

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

	public BigDecimal getQuantity() {
		return this.quantity;
	}

	public void setQuantity(BigDecimal quantity) {
		this.quantity = quantity;
	}

	public BigDecimal getPieceQuantity() {
		return this.pieceQuantity;
	}

	public void setPieceQuantity(BigDecimal pieceQuantity) {
		this.pieceQuantity = pieceQuantity;
	}

	public BigDecimal getDiffQuantity() {
		return this.diffQuantity;
	}

	public void setDiffQuantity(BigDecimal diffQuantity) {
		this.diffQuantity = diffQuantity;
	}

	public Date getGmtCreate() {
		return this.gmtCreate;
	}

	public void setGmtCreate(Date gmtCreate) {
		this.gmtCreate = gmtCreate;
	}

	public String getCreator() {
		return this.creator;
	}

	public void setCreator(String creator) {
		this.creator = creator;
	}

	public String getCreatorName() {
		return this.creatorName;
	}

	public void setCreatorName(String creatorName) {
		this.creatorName = creatorName;
	}

	public Date getGmtModified() {
		return this.gmtModified;
	}

	public void setGmtModified(Date gmtModified) {
		this.gmtModified = gmtModified;
	}

	public String getModifier() {
		return this.modifier;
	}

	public void setModifier(String modifier) {
		this.modifier = modifier;
	}

	public String getModifierName() {
		return this.modifierName;
	}

	public void setModifierName(String modifierName) {
		this.modifierName = modifierName;
	}

	public String getSegment1() {
		return this.segment1;
	}

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

	public String getSegment2() {
		return this.segment2;
	}

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

	public String getSegment3() {
		return this.segment3;
	}

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

	public String getSegment4() {
		return this.segment4;
	}

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

	public String getSegment5() {
		return this.segment5;
	}

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

	public String getComments() {
		return this.comments;
	}

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

	public Date getAdjustDate() {
		return adjustDate;
	}

	public void setAdjustDate(Date adjustDate) {
		this.adjustDate = adjustDate;
	}
}
