package com.ruoyi.orderManagement.finance.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

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

/**
 * 财务主对象 F_TMSACCBILLS
 * 
 * @author ruoyi
 * @date 2021-03-12
 */
public class FTmsaccbills extends BaseEntity {
    private static final long serialVersionUID = 1L;

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

    /**
     * 年
     */
    @Excel(name = "年")
    private Long accYear;

    /**
     * 月
     */
    @Excel(name = "月")
    private Long accMonth;

    /**
     * 活动号
     */
    @JsonProperty("actId")
    @Excel(name = "活动号")
    private Long actId;

    /**
     * 检索区间
     */
    @JsonProperty("fFromDate")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "检索区间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date fFromDate;

    /**
     * 合计金额
     */
    @Excel(name = "合计金额")
    private BigDecimal amt;

    /**
     * 检索区间
     */
    @JsonProperty("fToDate")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "检索区间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date fToDate;

    /**
     * 参考号(银行账号、付款方式等……)
     */
    @JsonProperty("refNo")
    @Excel(name = "参考号(银行账号、付款方式等……)")
    private String refNo;

    /**
     * 业务完成日期
     */
    @JsonProperty("postDate")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "业务完成日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date postDate;

    /**
     * 应付合计
     */
    @JsonProperty("fAmtcr")
    @Excel(name = "应付合计")
    private BigDecimal fAmtcr;

    /**
     * 应收合计
     */
    @JsonProperty("fAmtdr")
    @Excel(name = "应收合计")
    private BigDecimal fAmtdr;

    /**
     * 删除状态
     */
    @JsonProperty("delFlag")
    private String delFlag;

    /**
     * 货权方
     */
    @JsonProperty("fCtrlcorpid")
    @Excel(name = "货权方")
    private String fCtrlcorpid;

    /**
     * 提单号
     */
    @JsonProperty("tMblno")
    @Excel(name = "提单号")
    private String tMblno;

    /**
     * 单据类型(对账单 收费 付费 付费申请 收费申请，发票申请 销项发票 进项发票)
     */
    @JsonProperty("fBilltype")
    @Excel(name = "单据类型(对账单 收费 付费 付费申请 收费申请，发票申请 销项发票 进项发票)")
    private String fBilltype;

    /**
     * 结算日期(对账日期)
     */
    @JsonProperty("fAccbilldate")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "结算日期(对账日期)", width = 30, dateFormat = "yyyy-MM-dd")
    private Date fAccbilldate;

    /**
     * 参考号
     */
    @JsonProperty("fRefNo")
    @Excel(name = "参考号")
    private String fRefNo;

    /**
     * 业务编号(唯一格式+YYYY+YY+NNN，
     * 编号不能断号，要连续、如果删除该编号，下次新建单据，优先使用删除单据号，每月从001开始。)
     * 对账 DZ
     * <p>
     * 收费 SF
     * <p>
     * 付费 FF
     * <p>
     * 发票 FP
     */
    @JsonProperty("fBillno")
    @Excel(name = "业务编号(唯一格式+YYYY+YY+NNN， 编号不能断号，要连续、如果删除该编号，下次新建单据，优先使用删除单据号，每月从001开始。) 对账 DZ 收费 SF 付费 FF 发票 FP")
    private String fBillno;

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

    /**
     * 收费方式
     */
    @JsonProperty("chargingMethod")
    @Excel(name = "收费方式 ")
    private String chargingMethod;

    /**
     * 状态(1新建，2暂存，6提交)
     */
    @JsonProperty("fBillstatus")
    @Excel(name = "状态(1新建，2暂存，6提交)")
    private Long fBillstatus;

    /**
     * 发票号
     */
    @JsonProperty("invoiceNo")
    @Excel(name = "发票号")
    private String invoiceNo;

    /**
     * 银行
     */
    @Excel(name = "银行")
    private String bank;

    /**
     * 水单号
     */
    @JsonProperty("waterBillNo")
    @Excel(name = "水单号")
    private String waterBillNo;

    /**
     * 结算单位(下拉模糊搜索)
     */
    @JsonProperty("fCorpid")
    @Excel(name = "结算单位(下拉模糊搜索)")
    private Long fCorpid;

    /**
     * 系统类型(1仓储、2车队、3凯和)
     */
    @JsonProperty("fSystemType")
    @Excel(name = "系统类型(1仓储、2车队、3凯和)")
    private String fSystemType;

    /**
     * 备注
     */
    @JsonProperty("fRemarks")
    @Excel(name = "备注")
    private String fRemarks;

    /**
     * 查询时间区间
     */
    private List<String> timeInterval;

    /**
     *  开始金额
     */
    private BigDecimal firstMoney;

    /**
     *  截止金额
     */
    private BigDecimal lastMoney;

    public Long getId() {
        return id;
    }

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

    public Long getAccYear() {
        return accYear;
    }

    public void setAccYear(Long accYear) {
        this.accYear = accYear;
    }

    public Long getAccMonth() {
        return accMonth;
    }

    public void setAccMonth(Long accMonth) {
        this.accMonth = accMonth;
    }

    public Long getActId() {
        return actId;
    }

    public void setActId(Long actId) {
        this.actId = actId;
    }

    public Date getfFromDate() {
        return fFromDate;
    }

    public void setfFromDate(Date fFromDate) {
        this.fFromDate = fFromDate;
    }

    public BigDecimal getAmt() {
        return amt;
    }

    public void setAmt(BigDecimal amt) {
        this.amt = amt;
    }

    public Date getfToDate() {
        return fToDate;
    }

    public void setfToDate(Date fToDate) {
        this.fToDate = fToDate;
    }

    public String getRefNo() {
        return refNo;
    }

    public void setRefNo(String refNo) {
        this.refNo = refNo;
    }

    public Date getPostDate() {
        return postDate;
    }

    public void setPostDate(Date postDate) {
        this.postDate = postDate;
    }

    public BigDecimal getfAmtcr() {
        return fAmtcr;
    }

    public void setfAmtcr(BigDecimal fAmtcr) {
        this.fAmtcr = fAmtcr;
    }

    public BigDecimal getfAmtdr() {
        return fAmtdr;
    }

    public void setfAmtdr(BigDecimal fAmtdr) {
        this.fAmtdr = fAmtdr;
    }

    public String getDelFlag() {
        return delFlag;
    }

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

    public String getfCtrlcorpid() {
        return fCtrlcorpid;
    }

    public void setfCtrlcorpid(String fCtrlcorpid) {
        this.fCtrlcorpid = fCtrlcorpid;
    }

    public String gettMblno() {
        return tMblno;
    }

    public void settMblno(String tMblno) {
        this.tMblno = tMblno;
    }

    public String getfBilltype() {
        return fBilltype;
    }

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

    public Date getfAccbilldate() {
        return fAccbilldate;
    }

    public void setfAccbilldate(Date fAccbilldate) {
        this.fAccbilldate = fAccbilldate;
    }

    public String getfRefNo() {
        return fRefNo;
    }

    public void setfRefNo(String fRefNo) {
        this.fRefNo = fRefNo;
    }

    public String getfBillno() {
        return fBillno;
    }

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

    public Long getfDeptid() {
        return fDeptid;
    }

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

    public String getChargingMethod() {
        return chargingMethod;
    }

    public void setChargingMethod(String chargingMethod) {
        this.chargingMethod = chargingMethod;
    }

    public Long getfBillstatus() {
        return fBillstatus;
    }

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

    public String getInvoiceNo() {
        return invoiceNo;
    }

    public void setInvoiceNo(String invoiceNo) {
        this.invoiceNo = invoiceNo;
    }

    public String getBank() {
        return bank;
    }

    public void setBank(String bank) {
        this.bank = bank;
    }

    public String getWaterBillNo() {
        return waterBillNo;
    }

    public void setWaterBillNo(String waterBillNo) {
        this.waterBillNo = waterBillNo;
    }

    public Long getfCorpid() {
        return fCorpid;
    }

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

    public String getfSystemType() {
        return fSystemType;
    }

    public void setfSystemType(String fSystemType) {
        this.fSystemType = fSystemType;
    }

    public String getfRemarks() {
        return fRemarks;
    }

    public void setfRemarks(String fRemarks) {
        this.fRemarks = fRemarks;
    }

    public List<String> getTimeInterval() {
        return timeInterval;
    }

    public void setTimeInterval(List<String> timeInterval) {
        this.timeInterval = timeInterval;
    }

    public BigDecimal getFirstMoney() {
        return firstMoney;
    }

    public void setFirstMoney(BigDecimal firstMoney) {
        this.firstMoney = firstMoney;
    }

    public BigDecimal getLastMoney() {
        return lastMoney;
    }

    public void setLastMoney(BigDecimal lastMoney) {
        this.lastMoney = lastMoney;
    }

    @Override
    public String toString() {
        return "FTmsaccbills{" +
                "id=" + id +
                ", accYear=" + accYear +
                ", accMonth=" + accMonth +
                ", actId=" + actId +
                ", fFromDate=" + fFromDate +
                ", amt=" + amt +
                ", fToDate=" + fToDate +
                ", refNo='" + refNo + '\'' +
                ", postDate=" + postDate +
                ", fAmtcr=" + fAmtcr +
                ", fAmtdr=" + fAmtdr +
                ", delFlag='" + delFlag + '\'' +
                ", fCtrlcorpid='" + fCtrlcorpid + '\'' +
                ", tMblno='" + tMblno + '\'' +
                ", fBilltype='" + fBilltype + '\'' +
                ", fAccbilldate=" + fAccbilldate +
                ", fRefNo='" + fRefNo + '\'' +
                ", fBillno='" + fBillno + '\'' +
                ", fDeptid=" + fDeptid +
                ", chargingMethod='" + chargingMethod + '\'' +
                ", fBillstatus=" + fBillstatus +
                ", invoiceNo='" + invoiceNo + '\'' +
                ", bank='" + bank + '\'' +
                ", waterBillNo='" + waterBillNo + '\'' +
                ", fCorpid=" + fCorpid +
                ", fSystemType='" + fSystemType + '\'' +
                ", fRemarks='" + fRemarks + '\'' +
                ", timeInterval=" + timeInterval +
                '}';
    }
}