package com.prolog.cs.biz.outbound.model;

import com.prolog.framework.bz.core.model.BaseModel;
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-30 
 */
@ApiModel
@Table ( value ="wms_pick_task_d",camelToUnderline = true )
public class PickTaskD extends BaseModel implements Serializable {
	private static final long serialVersionUID =  6372894078874436218L;

	@Id
	@ApiModelProperty(value = "主键id") 
	@Column(value = "pick_task_d_id")
	private String pickTaskDId;

	@ApiModelProperty(value = "拣选任务主表id") 
	@Column(value = "pick_task_id")
	private String pickTaskId;

	@ApiModelProperty(value = "波次库存预占id") 
	@Column(value = "wave_storage_id")
	private String waveStorageId;

	@ApiModelProperty(value = "仓库id") 
	@Column(value = "warehouse_id")
	private String warehouseId;

	@ApiModelProperty(value = "数量") 
	@Column(value = "qty")
	private BigDecimal qty;

	@ApiModelProperty(value = "已拣数量 - 拣选确认")
	@Column(value = "pick_qty")
	private BigDecimal pickQty;

	@ApiModelProperty(value = "拣选人id")
	@Column(value = "picker_id")
	private String pickerId;

	@ApiModelProperty(value = "拣选人工号")
	@Column(value = "picker_no")
	private String pickerNo;

	@ApiModelProperty(value = "拣选人名称")
	@Column(value = "picker_name")
	private String pickerName;

	@ApiModelProperty(value = "拣选人时间")
	@Column(value = "pick_time")
	private Date pickTime;

	@ApiModelProperty(value = "监管码")
	@Column(value = "supervise_code")
	private String superviseCode;

	@ApiModelProperty(value = "整件任务序号")
	@Column(value = "whole_num")
	private String wholeNum;

	@ApiModelProperty(value = "整件任务序号")
	@Column(value = "print_count")
	private Integer printCount;

	@ApiModelProperty(value = "红冲数量")
	@Column(value = "SALE_RED_QTY")
	private BigDecimal saleRedQty;

	@ApiModelProperty(value = "明细流程状态：1-生成拣货任务 2-拣货已索取 3-拣货已确认 4-内复核已索取 5-内复核已确认 6-外复核已索取 7-外复核已确认 8-拣货冲红")
	@Column(value = "flow_status")
	private String flowStatus;

	@ApiModelProperty(value = "任务类型（0-整件/1-散件/2-整散合一）")
	@Column(value = "pick_task_type")
	private Integer pickTaskType;

	@ApiModelProperty(value = "标签明细行id")
	@Column(value = "barcode_d_id")
	private String barcodeDId;

	@ApiModelProperty(value = "原任务明细行id")
	@Column(value = "src_pick_task_d_id")
	private String srcPickTaskDId;


	@ApiModelProperty(value = "拣货红冲方式 null:未红冲 0：还原库位 1：入盘点库")
	@Column(value = "pick_red_type")
	private String pickRedType;


	@ApiModelProperty(value = "补货明细行id")
	@Column(value = "detail_id")
	private String detailId;

	@ApiModelProperty(value = "商品编码")
	@Ignore
	private String itemCode;

	public String getItemCode() {
		return itemCode;
	}

	public void setItemCode(String itemCode) {
		this.itemCode = itemCode;
	}

	public String getSplitSourceId() {
		return splitSourceId;
	}

	public void setSplitSourceId(String splitSourceId) {
		this.splitSourceId = splitSourceId;
	}

	@ApiModelProperty(value = "乐观锁")
	@Column(value = "version")
	private Integer version;
	@ApiModelProperty(value = "拆分前源ID")
	@Column(value = "split_source_id")
	private String splitSourceId;

	public String getPickRedType() {
		return pickRedType;
	}

	public void setPickRedType(String pickRedType) {
		this.pickRedType = pickRedType;
	}

	public String getBarcodeDId() {
		return barcodeDId;
	}

	public void setBarcodeDId(String barcodeDId) {
		this.barcodeDId = barcodeDId;
	}

	public String getSrcPickTaskDId() {
		return srcPickTaskDId;
	}

	public void setSrcPickTaskDId(String srcPickTaskDId) {
		this.srcPickTaskDId = srcPickTaskDId;
	}

	public Integer getPickTaskType() {
		return pickTaskType;
	}

	public void setPickTaskType(Integer pickTaskType) {
		this.pickTaskType = pickTaskType;
	}

	public String getFlowStatus() {
		return flowStatus;
	}

	public void setFlowStatus(String flowStatus) {
		this.flowStatus = flowStatus;
	}

	public BigDecimal getSaleRedQty() {
		return saleRedQty;
	}

	public void setSaleRedQty(BigDecimal saleRedQty) {
		this.saleRedQty = saleRedQty;
	}

	public String getWholeNum() {
		return wholeNum;
	}

	public void setWholeNum(String wholeNum) {
		this.wholeNum = wholeNum;
	}

	public String getSuperviseCode() {
		return superviseCode;
	}

	public void setSuperviseCode(String superviseCode) {
		this.superviseCode = superviseCode;
	}

	public Integer getPrintCount() {
		return printCount;
	}

	public void setPrintCount(Integer printCount) {
		this.printCount = printCount;
	}

//	--------------废弃字段-----------------

	@ApiModelProperty(value = "复核数量")
	@Column(value = "check_qty")
	private BigDecimal checkQty;

	@ApiModelProperty(value = "复核人id")
	@Column(value = "checker_id")
	private String checkerId;

	@ApiModelProperty(value = "复核人工号")
	@Column(value = "checker_no")
	private String checkerNo;

	@ApiModelProperty(value = "复核人名称")
	@Column(value = "checker_name")
	private String checkerName;

	@ApiModelProperty(value = "复核人id-2")
	@Column(value = "checker_id_2")
	private String checkerId2;

	@ApiModelProperty(value = "复核人工号-2")
	@Column(value = "checker_no_2")
	private String checkerNo2;

	@ApiModelProperty(value = "复核人名称-2")
	@Column(value = "checker_name_2")
	private String checkerName2;

	@ApiModelProperty(value = "复核时间")
	@Column(value = "check_time")
	private Date checkTime;

	@ApiModelProperty(value = "复核2复核数量")     
	@Column("checker2_qty")     
	private BigDecimal checker2Qty;

	@ApiModelProperty(value = "eis回告的托盘号")
	@Column("container_code")
	private String containerCode;

	@ApiModelProperty(value = "外复核红冲数量")
	@Ignore
	private BigDecimal redQty;

	@ApiModelProperty(value = "货位")
	@Column("locator_id")
	private String locatorId;

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

	@ApiModelProperty(value = "批次号Id")
	@Column("batch_id")
	private String batchId;

	@ApiModelProperty(value = "库区编号")
	@Column("warehouse_area_code")
	private String warehouseAreaCode;

	@ApiModelProperty(value = "拣货模式")
	@Column("pick_model")
	private String pickModel;

	@ApiModelProperty(value = "oms订单id")
	@Column("src_id")
	private String srcId;

	@ApiModelProperty(value = "oms订单明细行id")
	@Column("src_line_id")
	private String srcLineId;

	@ApiModelProperty(value = "oms订单编码")
	@Column("src_code")
	private String srcCode;

	@ApiModelProperty(value = "订单id")
	@Column("bill_id")
	private String billId;

	@ApiModelProperty(value = "订单明细id")
	@Column(value = "bill_d_id")
	private String billDId;


	public String getItemId() {
		return itemId;
	}

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

	public String getBatchId() {
		return batchId;
	}

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

	public String getWarehouseAreaCode() {
		return warehouseAreaCode;
	}

	public void setWarehouseAreaCode(String warehouseAreaCode) {
		this.warehouseAreaCode = warehouseAreaCode;
	}

	public String getPickModel() {
		return pickModel;
	}

	public void setPickModel(String pickModel) {
		this.pickModel = pickModel;
	}

	public String getSrcId() {
		return srcId;
	}

	public void setSrcId(String srcId) {
		this.srcId = srcId;
	}

	public String getSrcLineId() {
		return srcLineId;
	}

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

	public String getSrcCode() {
		return srcCode;
	}

	public void setSrcCode(String srcCode) {
		this.srcCode = srcCode;
	}

	public String getBillId() {
		return billId;
	}

	public void setBillId(String billId) {
		this.billId = billId;
	}

	public String getBillDId() {
		return billDId;
	}

	public void setBillDId(String billDId) {
		this.billDId = billDId;
	}

	public String getLocatorId() {
		return locatorId;
	}

	public void setLocatorId(String locatorId) {
		this.locatorId = locatorId;
	}

	@ApiModelProperty(value = "eis回告的MSG_ID")
	@Column("ob_msg_id")
	private String obMsgId;

	public String getObMsgId() {
		return obMsgId;
	}

	public void setObMsgId(String obMsgId) {
		this.obMsgId = obMsgId;
	}

	public String getContainerCode() {
		return containerCode;
	}

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

	public BigDecimal getChecker2Qty() {
		return checker2Qty;
	}

	public void setChecker2Qty(BigDecimal checker2Qty) {
		this.checker2Qty = checker2Qty;
	}

	public Date getPickTime() {
		return pickTime;
	}

	public void setPickTime(Date pickTime) {
		this.pickTime = pickTime;
	}

	public Date getCheckTime() {
		return checkTime;
	}

	public void setCheckTime(Date checkTime) {
		this.checkTime = checkTime;
	}

	public String getPickTaskDId() {
		return pickTaskDId;
	}

	public void setPickTaskDId(String pickTaskDId) {
		this.pickTaskDId = pickTaskDId;
	}

	public String getPickTaskId() {
		return pickTaskId;
	}

	public void setPickTaskId(String pickTaskId) {
		this.pickTaskId = pickTaskId;
	}

	public String getWaveStorageId() {
		return waveStorageId;
	}

	public void setWaveStorageId(String waveStorageId) {
		this.waveStorageId = waveStorageId;
	}

	public String getWarehouseId() {
		return warehouseId;
	}

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

	public BigDecimal getQty() {
		return qty;
	}

	public void setQty(BigDecimal qty) {
		this.qty = qty;
	}

	public BigDecimal getPickQty() {
		return pickQty;
	}

	public void setPickQty(BigDecimal pickQty) {
		this.pickQty = pickQty;
	}

	public BigDecimal getCheckQty() {
		return checkQty;
	}

	public void setCheckQty(BigDecimal checkQty) {
		this.checkQty = checkQty;
	}

	public String getPickerId() {
		return pickerId;
	}

	public void setPickerId(String pickerId) {
		this.pickerId = pickerId;
	}

	public String getPickerNo() {
		return pickerNo;
	}

	public void setPickerNo(String pickerNo) {
		this.pickerNo = pickerNo;
	}

	public String getPickerName() {
		return pickerName;
	}

	public void setPickerName(String pickerName) {
		this.pickerName = pickerName;
	}

	public String getCheckerId() {
		return checkerId;
	}

	public void setCheckerId(String checkerId) {
		this.checkerId = checkerId;
	}

	public String getCheckerNo() {
		return checkerNo;
	}

	public void setCheckerNo(String checkerNo) {
		this.checkerNo = checkerNo;
	}

	public String getCheckerName() {
		return checkerName;
	}

	public void setCheckerName(String checkerName) {
		this.checkerName = checkerName;
	}

	public String getCheckerId2() {
		return checkerId2;
	}

	public void setCheckerId2(String checkerId2) {
		this.checkerId2 = checkerId2;
	}

	public String getCheckerNo2() {
		return checkerNo2;
	}

	public void setCheckerNo2(String checkerNo2) {
		this.checkerNo2 = checkerNo2;
	}

	public String getCheckerName2() {
		return checkerName2;
	}

	public void setCheckerName2(String checkerName2) {
		this.checkerName2 = checkerName2;
	}

	public BigDecimal getRedQty() {
		return redQty;
	}

	public void setRedQty(BigDecimal redQty) {
		this.redQty = redQty;
	}

	public String getDetailId() {
		return detailId;
	}

	public void setDetailId(String detailId) {
		this.detailId = detailId;
	}

	public Integer getVersion() {
		return version;
	}

	public void setVersion(int version) {
		this.version = version;
	}
}
