
package com.tmerclub.cloud.product.model;

import com.tmerclub.cloud.common.model.BaseModel;

import java.io.Serial;
import java.io.Serializable;
import java.util.Date;

/**
 * 出入库明细
 *
 * @author lhd
 * @date 2022-06-22 16:57:26
 */
public class StockBillLog extends BaseModel implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;
    /**
     * 出入库明细id
     */
    private Long stockBillLogId;

    /**
     * 出入库单号
     */
    private String stockBillNo;

    /**
     * 关联订单号
     */
    private String sourceOrderNo;

    /**
     * 单据类型
     */
    private Integer stockBillType;

    /**
     * 出入库原因id
     */
    private Long stockChangeReasonId;

    /**
     * 操作员工id
     */
    private Long employeeId;

    /**
     * 状态，0：已作废，1：已出/入库，2：待提交
     */
    private Integer status;

    /**
     * 出入库时间
     */
    private Date businessTime;

    /**
     * 总出入库数量
     */
    private Integer totalCount;

    /**
     * 总出入库金额
     */
    private Long totalAmount;

    /**
     * 出入库凭证
     */
    private String qualifications;

    /**
     * 店铺id
     */
    private Long shopId;

    /**
     * 供应商id
     */
    private Long supplierId;

    /**
     * 备注
     */
    private String remark;

    /**
     * 类型，1：出库 2：入库
     */
    private Integer type;

    /**
     * 制单人手机号
     */
    private String makerMobile;

    /**
     * 库存点id
     */
    private Long stockPointId;

    /**
     * 库存点类型(1:门店, 2:仓库)
     */
    private Integer stockPointType;

    public StockBillLog() {
    }

    public StockBillLog(Long shopId, Date businessTime, Integer stockBillLogType, Integer stockType, String stockBillNo, Integer status, String sourceOrderNo) {
        Date now = new Date();
        this.setShopId(shopId);
        this.setEmployeeId(null);
        this.setCreateTime(now);
        this.setUpdateTime(now);
        this.setBusinessTime(businessTime);
        this.setStockBillType(stockBillLogType);
        this.setType(stockType);
        this.setStockBillNo(stockBillNo);
        this.setStatus(status);
        this.setSourceOrderNo(sourceOrderNo);
    }

    public Long getStockBillLogId() {
        return stockBillLogId;
    }

    public void setStockBillLogId(Long stockBillLogId) {
        this.stockBillLogId = stockBillLogId;
    }

    public String getStockBillNo() {
        return stockBillNo;
    }

    public void setStockBillNo(String stockBillNo) {
        this.stockBillNo = stockBillNo;
    }

    public String getSourceOrderNo() {
        return sourceOrderNo;
    }

    public void setSourceOrderNo(String sourceOrderNo) {
        this.sourceOrderNo = sourceOrderNo;
    }

    public Integer getStockBillType() {
        return stockBillType;
    }

    public void setStockBillType(Integer stockBillType) {
        this.stockBillType = stockBillType;
    }

    public Long getStockChangeReasonId() {
        return stockChangeReasonId;
    }

    public void setStockChangeReasonId(Long stockChangeReasonId) {
        this.stockChangeReasonId = stockChangeReasonId;
    }

    public Long getEmployeeId() {
        return employeeId;
    }

    public void setEmployeeId(Long employeeId) {
        this.employeeId = employeeId;
    }

    public Integer getStatus() {
        return status;
    }

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

    public Date getBusinessTime() {
        return businessTime;
    }

    public void setBusinessTime(Date businessTime) {
        this.businessTime = businessTime;
    }

    public Integer getTotalCount() {
        return totalCount;
    }

    public void setTotalCount(Integer totalCount) {
        this.totalCount = totalCount;
    }

    public Long getTotalAmount() {
        return totalAmount;
    }

    public void setTotalAmount(Long totalAmount) {
        this.totalAmount = totalAmount;
    }

    public String getQualifications() {
        return qualifications;
    }

    public void setQualifications(String qualifications) {
        this.qualifications = qualifications;
    }

    public Long getShopId() {
        return shopId;
    }

    public void setShopId(Long shopId) {
        this.shopId = shopId;
    }

    public Long getSupplierId() {
        return supplierId;
    }

    public void setSupplierId(Long supplierId) {
        this.supplierId = supplierId;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public Integer getType() {
        return type;
    }

    public void setType(Integer type) {
        this.type = type;
    }

    public String getMakerMobile() {
        return makerMobile;
    }

    public void setMakerMobile(String makerMobile) {
        this.makerMobile = makerMobile;
    }

    public Long getStockPointId() {
        return stockPointId;
    }

    public void setStockPointId(Long stockPointId) {
        this.stockPointId = stockPointId;
    }

    public Integer getStockPointType() {
        return stockPointType;
    }

    public void setStockPointType(Integer stockPointType) {
        this.stockPointType = stockPointType;
    }

    @Override
    public String toString() {
        return "StockBillLog{" +
                "stockBillLogId=" + stockBillLogId +
                ", stockBillNo='" + stockBillNo + '\'' +
                ", sourceOrderNo='" + sourceOrderNo + '\'' +
                ", stockBillType=" + stockBillType +
                ", stockChangeReasonId=" + stockChangeReasonId +
                ", employeeId=" + employeeId +
                ", status=" + status +
                ", businessTime=" + businessTime +
                ", totalCount=" + totalCount +
                ", totalAmount=" + totalAmount +
                ", qualifications='" + qualifications + '\'' +
                ", shopId=" + shopId +
                ", supplierId=" + supplierId +
                ", remark='" + remark + '\'' +
                ", type=" + type +
                ", makerMobile='" + makerMobile + '\'' +
                ", stockPointId=" + stockPointId +
                ", stockPointType=" + stockPointType +
                '}';
    }
}
