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 2025-11-06
 */
@Getter
@Setter
@TableName("fin_cost_invoiced_apply_detail")
public class CostInvoicedApplyDetail implements Serializable {

    private static final long serialVersionUID = 1L;

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

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

    /**
     * 开票申请单ID
     */
    private Long iaId;

    /**
     * 开票申请单号
     */
    private String iaNo;

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

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

    /**
     * 对账单明细ID
     */
    private Long asdId;

    /**
     * 对账单明细行号
     */
    private String asdItemNo;

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

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

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

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

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

    /**
     * 税率值
     */
    private Integer taxValue;

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

    /**
     * 差税额(税额)
     */
    private BigDecimal diffTaxAmount;

    /**
     * 到票差异含税单价
     */
    private BigDecimal iaDiffPrice;

    /**
     * 到票差异含税金额
     */
    private BigDecimal iaDiffAmount;

    /**
     * 分摊未税返利金额
     */
    private BigDecimal shareRntAmount;

    /**
     * 分摊含税返利金额
     */
    private BigDecimal shareRebateAmount;

    /**
     * 分摊返利税金
     */
    private BigDecimal sraTaxAmount;

    /**
     * 分摊未税扣款金额
     */
    private BigDecimal shareDntAmount;

    /**
     * 分摊含税扣款金额
     */
    private BigDecimal shareDeductionAmount;

    /**
     * 分摊扣款税金
     */
    private BigDecimal sdaTaxAmount;

    /**
     * 明细行是否可分摊 0:否 1:是
     */
    private Integer shareFlag;

    /**
     * 允许分摊凭证中的对账数量(存在反向凭证时需要)
     */
    private BigDecimal shareNum;

    /**
     * 分摊后未税金额
     */
    private BigDecimal shareAfterNta;

    /**
     * 分摊后税金
     */
    private BigDecimal shareAfterTa;

    /**
     * 分摊后含税金额
     */
    private BigDecimal shareAfterIta;

    /**
     * 物料凭证记录ID
     */
    private Long receiveId;

    /**
     * 删除标识 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;

    /**
     * 货到付款消费标识 0：未完全付款 1：已完全付款
     */
    private Integer codFlag;
}
