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

import com.prolog.cs.biz.outbound.model.entity.StatusRecordDO;
import com.prolog.cs.biz.outbound.model.WAVE_STATUS;
import com.prolog.cs.biz.outbound.model.vo.WaveBillVO;
import com.prolog.framework.bz.core.model.BaseModel;
import com.prolog.framework.core.annotation.Column;

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

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

@ApiModel
public class WaveVO extends BaseModel implements Serializable {
    private static final long serialVersionUID = 4956498608989464037L;
    @ApiModelProperty(value = "波次ID")
    private String id;

    @ApiModelProperty(value = "波次编号")
    @Column(value = "code")
    private String code;

    @ApiModelProperty(value = "订单数量")
    private BigDecimal billNum;

    @ApiModelProperty(value = "总数量")
    private BigDecimal totalNum;

    @ApiModelProperty(value = "总体积")
    private BigDecimal totalVolume;

    @ApiModelProperty(value = "总重量")
    private BigDecimal totalWeight;
    @ApiModelProperty(value = "总件数")
    private BigDecimal totalPcs;
    @ApiModelProperty(value = "状态")
    private WAVE_STATUS status;
    @ApiModelProperty(value = "仓库id")
    private String warehouseId;

    @ApiModelProperty(value = "失败原因")
    private String errorMsg;
    @ApiModelProperty(value = "优先级")
    private Integer priority;
    @ApiModelProperty(value = "状态列表")
    private List<StatusRecordDO> statusList;
    @ApiModelProperty(value = "订单列表")
    private List<WaveBillVO> bills;

    @ApiModelProperty(value = "总数量")
    private Integer totalBills;
    @ApiModelProperty(value = "挂起数量")
    private Integer pendingBills;
    @ApiModelProperty(value = "整件任务数")
    private Integer zjTasks;
    @ApiModelProperty(value = "零货任务数")
    private Integer lhTasks;
    @ApiModelProperty(value = "功能库房任务数")
    private Integer gnkfTasks;
    @ApiModelProperty(value = "整单任务数")
    private Integer zdTasks;
    @ApiModelProperty(value = "补货任务数")
    private Integer bhTasks;

    public Integer getZdTasks() {
        return zdTasks;
    }

    public void setZdTasks(Integer zdTasks) {
        this.zdTasks = zdTasks;
    }

    public Integer getTotalBills() {
        return totalBills;
    }

    public void setTotalBills(Integer totalBills) {
        this.totalBills = totalBills;
    }

    public Integer getPendingBills() {
        return pendingBills;
    }

    public void setPendingBills(Integer pendingBills) {
        this.pendingBills = pendingBills;
    }

    public Integer getZjTasks() {
        return zjTasks;
    }

    public void setZjTasks(Integer zjTasks) {
        this.zjTasks = zjTasks;
    }

    public Integer getLhTasks() {
        return lhTasks;
    }

    public void setLhTasks(Integer lhTasks) {
        this.lhTasks = lhTasks;
    }

    public Integer getGnkfTasks() {
        return gnkfTasks;
    }

    public void setGnkfTasks(Integer gnkfTasks) {
        this.gnkfTasks = gnkfTasks;
    }

    public BigDecimal getTotalPcs() {
        return totalPcs;
    }

    public void setTotalPcs(BigDecimal totalPcs) {
        this.totalPcs = totalPcs;
    }

    public Integer getPriority() {
        return priority;
    }

    public void setPriority(Integer priority) {
        this.priority = priority;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public List<StatusRecordDO> getStatusList() {
        return statusList;
    }

    public void setStatusList(List<StatusRecordDO> statusList) {
        this.statusList = statusList;
    }


    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public BigDecimal getTotalNum() {
        return totalNum;
    }

    public void setTotalNum(BigDecimal totalNum) {
        this.totalNum = totalNum;
    }

    public BigDecimal getTotalVolume() {
        return totalVolume;
    }

    public void setTotalVolume(BigDecimal totalVolume) {
        this.totalVolume = totalVolume;
    }

    public BigDecimal getTotalWeight() {
        return totalWeight;
    }

    public void setTotalWeight(BigDecimal totalWeight) {
        this.totalWeight = totalWeight;
    }

    public WAVE_STATUS getStatus() {
        return status;
    }

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

    public String getWarehouseId() {
        return warehouseId;
    }

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

    public String getErrorMsg() {
        return errorMsg;
    }

    public void setErrorMsg(String errorMsg) {
        this.errorMsg = errorMsg;
    }


    public BigDecimal getBillNum() {
        return billNum;
    }

    public void setBillNum(BigDecimal billNum) {
        this.billNum = billNum;
    }

    public List<WaveBillVO> getBills() {
        return bills;
    }

    public void setBills(List<WaveBillVO> bills) {
        this.bills = bills;
    }

    public Integer getBhTasks() {
        return bhTasks;
    }

    public void setBhTasks(Integer bhTasks) {
        this.bhTasks = bhTasks;
    }
}
