package com.jy.business.payment.model.table;

import com.jy.business.payment.model.entity.PaymentRequests;
import com.jy.framework.mybatis.join.QueryColumn;
import com.jy.framework.mybatis.join.Table;

public class PaymentRequestsTable extends Table<PaymentRequests> {

    public static PaymentRequestsTable payment_requests = new PaymentRequestsTable();
    public static PaymentRequestsTable pr = payment_requests.as("pr");

    /**
     * 请款id
     */
    public QueryColumn id = this.field(PaymentRequests::getId);

    /**
     * 归属公司id
     */
    public QueryColumn corporationId = this.field(PaymentRequests::getCorporationId);

    /**
     * 部门id
     */
    public QueryColumn deptId = this.field(PaymentRequests::getDeptId);

    /**
     * 请款类型
     */
    public QueryColumn type = this.field(PaymentRequests::getType);

    /**
     * 用款时间
     */
    public QueryColumn useTime = this.field(PaymentRequests::getUseTime);

    /**
     * 用款说明
     */
    public QueryColumn useRemark = this.field(PaymentRequests::getUseRemark);

    /**
     * 附件列表
     */
    public QueryColumn atts = this.field(PaymentRequests::getAtts);

    /**
     * 付款总金额
     */
    public QueryColumn totalAmount = this.field(PaymentRequests::getTotalAmount);

    /**
     * 单据数量
     */
    public QueryColumn documentQuantity = this.field(PaymentRequests::getDocumentQuantity);

    /**
     * 付款方式
     */
    public QueryColumn payType = this.field(PaymentRequests::getPayType);

    /**
     * 资金账户id
     */
    public QueryColumn capitalAccountId = this.field(PaymentRequests::getCapitalAccountId);

    /**
     * 户名
     */
    public QueryColumn accountName = this.field(PaymentRequests::getAccountName);

    /**
     * 银行账号
     */
    public QueryColumn account = this.field(PaymentRequests::getAccount);

    /**
     * 开户银行
     */
    public QueryColumn depositBank = this.field(PaymentRequests::getDepositBank);

    /**
     * 联行号/ SWIFT Code
     */
    public QueryColumn correspondentNumber = this.field(PaymentRequests::getCorrespondentNumber);

    /**
     * 审批状态
     */
    public QueryColumn approvalStatus = this.field(PaymentRequests::getApprovalStatus);

    /**
     * 放款状态
     */
    public QueryColumn paymentStatus = this.field(PaymentRequests::getPaymentStatus);

    /**
     * 已打款金额
     */
    public QueryColumn remitAmount = this.field(PaymentRequests::getRemitAmount);

    /**
     * 创建人
     */
    public QueryColumn createUser = this.field(PaymentRequests::getCreateUser);

    /**
     * 创建时间
     */
    public QueryColumn createTime = this.field(PaymentRequests::getCreateTime);

    /**
     * 更新人
     */
    public QueryColumn updateUser = this.field(PaymentRequests::getUpdateUser);

    /**
     * 更新时间
     */
    public QueryColumn updateTime = this.field(PaymentRequests::getUpdateTime);

    /**
     * 逻辑删除标记
     */
    public QueryColumn delFlag = this.field(PaymentRequests::getDelFlag);

    private PaymentRequestsTable() {
        super(PaymentRequests.class);
    }

    private PaymentRequestsTable(String alias) {
        super(PaymentRequests.class, alias);
    }

    public PaymentRequestsTable as(String alias) {
        return new PaymentRequestsTable(alias);
    }

}
