package com.jwipc.finance.model.po;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * <p>
 * 对账模块-报关单明细表
 * </p>
 *
 * @author shenyang.ou
 * @since 2025-10-27
 */
@Data
public class PaymentNoticeDetailPO implements Serializable {

    private static final long serialVersionUID = 1L;

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

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

    /**
     * 主表id
     */
    private Long mainId;

    /**
     * 主表流水号
     */
    private String mainCode;

    /**
     * 委托单据号
     */
    private String code;

    /**
     * 报关单号
     */
    private String customsDeclarationCode;

    /**
     * 单据日期
     */
    private LocalDate codeDate;

    /**
     * 物料编码
     */
    private String materialCode;
    private String supplierCode;
    private String supplierName;

    /**
     * 数量
     */
    private BigDecimal num;

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

    /**
     * 总价
     */
    private BigDecimal taxAmount;

    /**
     * 关税 (CNY)
     */
    private BigDecimal tariffPrice;

    /**
     * 增值税 (CNY)
     */
    private BigDecimal valueAddedTaxPrice;

    /**
     * 代理费 (CNY)
     */
    private BigDecimal agencyFeePrice;

    /**
     * 境内费用 (CNY)
     */
    private BigDecimal domesticFeePrice;

    /**
     * 境外费用 (CNY)
     */
    private BigDecimal overseasFeePrice;

    /**
     * 费用税额 (CNY)
     */
    private BigDecimal feeTaxAmountPrice;

    /**
     * 运费 (CNY)
     */
    private BigDecimal freightPrice;

    /**
     * 运费用税额 (CNY)
     */
    private BigDecimal freightTaxAmountPrice;

    /**
     * 其他费用
     */
    private BigDecimal otherFeePrice;

    /**
     * 备注
     */
    private String remark;

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

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

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

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

    /**
     * 附件
     */
    private String files;

    /**
     * 删除标识 0:未删除 1:已删除
     */
    private Integer deleteFlag;
    private String companyCode;
    private String type;
    private String deliveryOrderCodes;
}
