package com.ruoyi.warehouseBusiness.domain;

import com.baomidou.mybatisplus.annotation.TableLogic;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 仓储费对象 t_warehouse_agreement
 *
 * @author ruoyi
 * @date 2020-12-11
 */
public class TWarehouseAgreement extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * $column.columnComment
     */
    private Long fId;

    /**
     * 业务编号,格式WA+YYYY+YY+NNN,编号不能断号，要连续、如果删除该编号，下次新建单据，优先使用删除单据号，每月从001开始
     */
    @Excel(name = "业务编号,格式WA+YYYY+YY+NNN,编号不能断号，要连续、如果删除该编号，下次新建单据，优先使用删除单据号，每月从001开始 ")
    private String fBillno;

    /**
     * 合同号
     */
    @Excel(name = "合同号")
    private String fContractno;

    /**
     * 制单部门
     */
    @Excel(name = "制单部门")
    private Long fDeptid;

    /**
     * 客户名称,t_corps 中的no或 name，模糊查找选择后，存储id，显示name
     */
    @Excel(name = "客户名称,t_corps 中的no或 name，模糊查找选择后，存储id，显示name")
    private Long fCorpid;

    /**
     * 货物品名,t_goods 中的no或 name，模糊查找选择后，存储f_id，显示name
     */
    private Long fGoodsid;

    /**
     * 结算方式,也可以从表t_stltypes中下拉选择，存储id，显示name
     */
    @Excel(name = "结算方式,也可以从表t_stltypes中下拉选择，存储id，显示name")
    private Long fStltypeid;

    /**
     * 费用类型,0，仓储费 1 作业费
     */
    @Excel(name = "费用类型,0，仓储费 1 作业费")
    private Long fFeetypeid;

    /**
     * 货物类别,存储t_packages，f_id 显示名称，可以多选t_packages 中的no或 name，模糊查找选择后，存储f_id，显示name
     */
    @Excel(name = "货物类别,存储t_packages，f_id 显示名称，可以多选t_packages 中的no或 name，模糊查找选择后，存储f_id，显示name")
    private String tPackages;

    /**
     * 贸易方式,对应t_trademodels
     */
    @Excel(name = "贸易方式,对应t_trademodels ")
    private Long fTrademodeid;

    /**
     * 免堆天数
     */
    @Excel(name = "免堆天数")
    private Long fFreedays;

    /**
     * 有效期起
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "有效期起", width = 30, dateFormat = "yyyy-MM-dd")
    private Date fBegindate;

    /**
     * 有效期至
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "有效期至", width = 30, dateFormat = "yyyy-MM-dd")
    private Date fEnddate;

    /**
     * 状态,N 录入中，T审核通过
     */
    @Excel(name = "状态,N 录入中，T审核通过")
    private String fBillstatus;

    /**
     * 审批状态,N 录入中，T审核通过
     */
    @Excel(name = "状态")
    private String fStatus;

    /**
     * 删除状态
     */
    @TableLogic
    private String delFlag;

    /**
     * 作业费类型
     */
    @Excel(name = "作业费类型")
    private Long fTaskType;

    /**
     * 费用类型
     */
    @Excel(name = "费用类型")
    private String fDc;

    /**
     * 费用类型
     */
    private String fBilltype;

    /**
     * 费用类型
     */
    @Excel(name = "类型名称")
    private String fBilltypeName;

    public String getfBilltypeName() {
        return fBilltypeName;
    }

    public void setfBilltypeName(String fBilltypeName) {
        this.fBilltypeName = fBilltypeName;
    }

    public String getfBilltype() {
        return fBilltype;
    }

    public void setfBilltype(String fBilltype) {
        this.fBilltype = fBilltype;
    }

    public String getfContractno() {
        return fContractno;
    }

    public void setfContractno(String fContractno) {
        this.fContractno = fContractno;
    }

    public Long getfGoodsid() {
        return fGoodsid;
    }

    public void setfGoodsid(Long fGoodsid) {
        this.fGoodsid = fGoodsid;
    }

    public void setfId(Long fId) {
        this.fId = fId;
    }

    public Long getfId() {
        return fId;
    }

    public void setfBillno(String fBillno) {
        this.fBillno = fBillno;
    }

    public String getfBillno() {
        return fBillno;
    }

    public void setfDeptid(Long fDeptid) {
        this.fDeptid = fDeptid;
    }

    public Long getfDeptid() {
        return fDeptid;
    }

    public void setfCorpid(Long fCorpid) {
        this.fCorpid = fCorpid;
    }

    public Long getfCorpid() {
        return fCorpid;
    }

    public void setfStltypeid(Long fStltypeid) {
        this.fStltypeid = fStltypeid;
    }

    public Long getfStltypeid() {
        return fStltypeid;
    }

    public void setfFeetypeid(Long fFeetypeid) {
        this.fFeetypeid = fFeetypeid;
    }

    public Long getfFeetypeid() {
        return fFeetypeid;
    }

    public void settPackages(String tPackages) {
        this.tPackages = tPackages;
    }

    public String gettPackages() {
        return tPackages;
    }

    public void setfTrademodeid(Long fTrademodeid) {
        this.fTrademodeid = fTrademodeid;
    }

    public Long getfTrademodeid() {
        return fTrademodeid;
    }

    public void setfFreedays(Long fFreedays) {
        this.fFreedays = fFreedays;
    }

    public Long getfFreedays() {
        return fFreedays;
    }

    public void setfBegindate(Date fBegindate) {
        this.fBegindate = fBegindate;
    }

    public Date getfBegindate() {
        return fBegindate;
    }

    public void setfEnddate(Date fEnddate) {
        this.fEnddate = fEnddate;
    }

    public Date getfEnddate() {
        return fEnddate;
    }

    public void setfBillstatus(String fBillstatus) {
        this.fBillstatus = fBillstatus;
    }

    public String getfBillstatus() {
        return fBillstatus;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    public String getDelFlag() {
        return delFlag;
    }

    public String getfStatus() {
        return fStatus;
    }

    public void setfStatus(String fStatus) {
        this.fStatus = fStatus;
    }

    public Long getfTaskType() {
        return fTaskType;
    }

    public void setfTaskType(Long fTaskType) {
        this.fTaskType = fTaskType;
    }

    public String getfDc() {
        return fDc;
    }

    public void setfDc(String fDc) {
        this.fDc = fDc;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("fId", getfId())
                .append("fBillno", getfBillno())
                .append("fDeptid", getfDeptid())
                .append("fCorpid", getfCorpid())
                .append("fStltypeid", getfStltypeid())
                .append("fFeetypeid", getfFeetypeid())
                .append("tPackages", gettPackages())
                .append("fTrademodeid", getfTrademodeid())
                .append("fFreedays", getfFreedays())
                .append("fBegindate", getfBegindate())
                .append("fEnddate", getfEnddate())
                .append("fBillstatus", getfBillstatus())
                .append("fStatus", getfStatus())
                .append("delFlag", getDelFlag())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("remark", getRemark())
                .toString();
    }
}
