package com.sunxung.factoring.entity.refundsManagement;

import java.math.BigDecimal;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.sunxung.factoring.entity.BaseEntity;

import java.time.LocalDateTime;
import java.io.Serializable;

/**
 * <p>
 * 应退明细表
 * </p>
 *
 * @author yafan
 * @since 2024-03-04
 */
@TableName("refund_details")
public class RefundDetails extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 退款管理表Id
     */
    @TableField("refund_management_id")
    private Long refundManagementId;

    /**
     * 分账管理-基础信息表id
     */
    @TableField("ledger_account_basic_info_id")
    private Long ledgerAccountBasicInfoId;

    /**
     * 分账管理-货款分配表id
     */
    @TableField("ledger_fund_goods_assign_id")
    private Long ledgerFundGoodsAssignId;

    /**
     * 金额
     */
    @TableField("amount")
    private BigDecimal amount;

    /**
     * 金额类型
     */
    @TableField("amount_type")
    private String amountType;

    /**
     * 是否选中 0:未选中、1:选中
     */
    @TableField("selected")
    private Boolean selected;

    /**
     * 状态 0:提交、1:通过、2:退回
     */
    @TableField("status")
    private Integer status;

    /**
     * 标签 0:下游回款、1:上游回购
     */
    @TableField("label")
    private Integer label;

    public Long getRefundManagementId() {
        return refundManagementId;
    }

    public void setRefundManagementId(Long refundManagementId) {
        this.refundManagementId = refundManagementId;
    }
    public BigDecimal getAmount() {
        return amount;
    }

    public void setAmount(BigDecimal amount) {
        this.amount = amount;
    }
    public String getAmountType() {
        return amountType;
    }

    public void setAmountType(String amountType) {
        this.amountType = amountType;
    }
    public Boolean getSelected() {
        return selected;
    }

    public void setSelected(Boolean selected) {
        this.selected = selected;
    }

    public Long getLedgerAccountBasicInfoId() {
        return ledgerAccountBasicInfoId;
    }

    public void setLedgerAccountBasicInfoId(Long ledgerAccountBasicInfoId) {
        this.ledgerAccountBasicInfoId = ledgerAccountBasicInfoId;
    }

    public Long getLedgerFundGoodsAssignId() {
        return ledgerFundGoodsAssignId;
    }

    public void setLedgerFundGoodsAssignId(Long ledgerFundGoodsAssignId) {
        this.ledgerFundGoodsAssignId = ledgerFundGoodsAssignId;
    }

    public Integer getStatus() {
        return status;
    }

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

    public Integer getLabel() {
        return label;
    }

    public void setLabel(Integer label) {
        this.label = label;
    }

    @Override
    public String toString() {
        return "RefundDetails{" +
            ", refundManagementId=" + refundManagementId +
            ", amount=" + amount +
            ", amountType=" + amountType +
            ", selected=" + selected +
        "}";
    }
}
