package com.jwipc.finance.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;

/**
 * <p>
 * 对账模块-对账单明细表
 * </p>
 *
 * @author shenyang.ou
 * @since 2024-03-04
 */
@Getter
@Setter
@TableName("fin_account_statement_detail")
public class AccountStatementDetail implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 数据主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 行号
     */
    private String itemNo;

    /**
     * 对账单ID
     */
    private Long asId;

    /**
     * 对账单号
     */
    private String asNo;

    /**
     * 凭证ID
     */
    private Long receiveId;

    /**
     * 凭证号
     */
    private String receiveCode;

    /**
     * 凭证行号
     */
    private String receiveRowNo;

    /**
     * 入库数量
     */
    private BigDecimal receiveNum;

    /**
     * 对账数量
     */
    private BigDecimal asQuantity;

    /**
     * 税率编码
     */
    private String taxCode;

    /**
     * 税率值(%)
     */
    private BigDecimal taxValue;

    /**
     * 未税单价
     */
    private BigDecimal notTaxPrice;

    /**
     * 含税单价
     */
    private BigDecimal taxPrice;

    /**
     * 未税金额
     */
    private BigDecimal notTaxAmount;

    /**
     * 含税金额
     */
    private BigDecimal taxAmount;

    /**
     * 税额
     */
    private BigDecimal diffTaxAmount;

    /**
     * 差异单价
     */
    private BigDecimal asDiffPrice;

    /**
     * 对账差异含税金额
     */
    private BigDecimal asDiffAmount;

    /**
     * 价格单位
     */
    private String priceUnit;

    /**
     * 开票完成标识 0:未完成 1:已完成
     */
    private Integer invoiceCompleteFlag;

    /**
     * 采购是否可编辑 0:否 1:是
     */
    private Integer editFlag;

    /**
     * 最低对账数量
     */
    private BigDecimal minStatementQuantity;

    /**
     * 删除标识 0:未删除 1:已删除
     */
    private Integer deleteFlag;

    /**
     * 创建用户ID
     */
    private Long createUserId;

    /**
     * 创建用户编码
     */
    private String createUserCode;

    /**
     * 创建用户姓名
     */
    private String createUserName;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 最后更新用户ID
     */
    private Long updateUserId;

    /**
     * 最后更新用户编码
     */
    private String updateUserCode;

    /**
     * 最后更新用户姓名
     */
    private String updateUserName;

    /**
     * 最后更新时间
     */
    private LocalDateTime updateTime;

    private String  subjectTypeCode;
    private String  rowTypeCode;
}
