package cn.superdesk.uniorder.dao.entity.thirdpart.szhtxx.paperInvoice;

import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;

/**
 * @Description:  
 * @Author: linjinyu 
 * @CreateDate: 2022-05-25 18:48:22 
 * @UpdateUser: linjinyu 
 * @UpdateDate: 2022-05-25 18:48:22 
 * @UpdateRemark: 修改内容 
 * @Version: 1.0 
 */ 
@NoArgsConstructor
@AllArgsConstructor
@Builder(toBuilder = true)
@Data
@ToString
public class SzhtxxPaperInvoiceRedTaxInfo implements Serializable {
    /**
     * Id
     */
    @ApiModelProperty(value = "Id")
    private Long id;

    /**
     * 批次Id
     */
    @ApiModelProperty(value = "批次Id")
    private String batchId;

    /**
     * 软删除:0-未删除;1-已删除
     */
    @ApiModelProperty(value = "软删除:0-未删除;1-已删除")
    private Integer deleted;

    /**
     * 0000
     */
    @ApiModelProperty(value = "0000")
    private String returnCode;

    /**
     * 发票开具成功
     */
    @ApiModelProperty(value = "发票开具成功")
    private String returnMsg;

    /**
     * 2 信息表流水号: 1. 取该申请数据的信息表流水号内容; 2. 此字段数据不可能为空;
     */
    @ApiModelProperty(value = "2 信息表流水号: 1. 取该申请数据的信息表流水号内容; 2. 此字段数据不可能为空;")
    private String redTaxInfoLsh;

    /**
     * 3 信息表编号: 1. 该数据取航信返回的信息表编号内容; 2. 此字段数据可能存在为空;
     */
    @ApiModelProperty(value = "3 信息表编号: 1. 该数据取航信返回的信息表编号内容; 2. 此字段数据可能存在为空;")
    private String redTaxInfoSn;

    /**
     * 4 信息表状态: 1. 该数据取航信返回的信息表状态内容; 2. 此字段数据可能存在为空;
     */
    @ApiModelProperty(value = "4 信息表状态: 1. 该数据取航信返回的信息表状态内容; 2. 此字段数据可能存在为空;")
    private String redTaxInfoStatus;

    /**
     * 5 信息表描述: 1. 该数据取航信返回的信息表描述内容; 2. 此字段数据可能存在为空;
     */
    @ApiModelProperty(value = "5 信息表描述: 1. 该数据取航信返回的信息表描述内容; 2. 此字段数据可能存在为空;")
    private String redTaxInfoDesc;

    /**
     * 6 是否使用: 1. 取该数据的使用状态`0-未使用;1-已使用`;
     */
    @ApiModelProperty(value = "6 是否使用: 1. 取该数据的使用状态`0-未使用;1-已使用`;")
    private Integer used;

    /**
     * 7 发票代码: 1. 取该申请数据所属蓝票的发票代码内容;
     */
    @ApiModelProperty(value = "7 发票代码: 1. 取该申请数据所属蓝票的发票代码内容;")
    private String fpdm;

    /**
     * 8 发票号: 1. 取该申请数据所属蓝票的发票号码内容;
     */
    @ApiModelProperty(value = "8 发票号: 1. 取该申请数据所属蓝票的发票号码内容;")
    private String fphm;

    /**
     * 9 开票机号: 1. 取该申请数据所属的开票机号; 2. 此字段数据不可能为空;
     */
    @ApiModelProperty(value = "9 开票机号: 1. 取该申请数据所属的开票机号; 2. 此字段数据不可能为空;")
    private String fjh;

    /**
     * 10 购买方名称&税号: 1. 取该申请数据所属购买方名称和税号内容; 2. 此字段数据不可能为空;
     */
    @ApiModelProperty(value = "10 购买方名称&税号: 1. 取该申请数据所属购买方名称和税号内容; 2. 此字段数据不可能为空;")
    private String ghfNsrsbh;

    /**
     * 10 购买方名称&税号: 1. 取该申请数据所属购买方名称和税号内容; 2. 此字段数据不可能为空;
     */
    @ApiModelProperty(value = "10 购买方名称&税号: 1. 取该申请数据所属购买方名称和税号内容; 2. 此字段数据不可能为空;")
    private String ghfmc;

    /**
     * 11 销售方名称&税号: 1. 取该申请数据所属销售方名称和税号内容; 2. 此字段数据不可能为空;
     */
    @ApiModelProperty(value = "11 销售方名称&税号: 1. 取该申请数据所属销售方名称和税号内容; 2. 此字段数据不可能为空;")
    private String xhfNsrsbh;

    /**
     * 11 销售方名称&税号: 1. 取该申请数据所属销售方名称和税号内容; 2. 此字段数据不可能为空;
     */
    @ApiModelProperty(value = "11 销售方名称&税号: 1. 取该申请数据所属销售方名称和税号内容; 2. 此字段数据不可能为空;")
    private String xhfmc;

    /**
     * 12 所属月份(原发票): 1. 取该申请数据所属原发票的开票日期; 2. 格式：年月，示例：202205 3. 此字段数据不可能为空;所属月份^_^yyyyMM
     */
    @ApiModelProperty(value = "12 所属月份(原发票): 1. 取该申请数据所属原发票的开票日期; 2. 格式：年月，示例：202205 3. 此字段数据不可能为空;所属月份^_^yyyyMM")
    private String ssyf;

    @ApiModelProperty(value = " add -- 价税合计金额^_^小数点后2位,以元为单位,精确到分")
    private BigDecimal kphjje;
    @ApiModelProperty(value = "13 合计金额(不含税): 1. 取该申请数据提交时的不含税合计金额=-原发票的不含税合计金额; 2. 金额保留小数点两位，无需红色字体显示; 3. 此字段数据不可能为空;")
    private BigDecimal hjbhsje;
    @ApiModelProperty(value = "14 税率: 1. 取该申请数据提交时的税率; 2. 以`%`显示; 3. 此字段数据不可能为空;")
    private BigDecimal sl;
    @ApiModelProperty(value = "15 税额: 1. 取该申请数据提交时的税额=-原发票的税额; 2. 金额保留小数点两位，无需红色字体显示; 3. 此字段数据不可能为空;")
    private BigDecimal hjse;

    /**
     * 16 申请方: 1. 取该申请数据提交时申请选择`销售方申请`，目前只有`销售方申请`; 2. 此字段数据不可能为空;ghf购买方|xhf销售方
     */
    @ApiModelProperty(value = "16 申请方: 1. 取该申请数据提交时申请选择`销售方申请`，目前只有`销售方申请`; 2. 此字段数据不可能为空;xhf销售方")
    private String reqfCode;

    /**
     * 16 申请方: 1. 取该申请数据提交时申请选择`销售方申请`，目前只有`销售方申请`; 2. 此字段数据不可能为空;
     */
    @ApiModelProperty(value = "16 申请方: 1. 取该申请数据提交时申请选择`销售方申请`，目前只有`销售方申请`; 2. 此字段数据不可能为空;")
    private String reqfName;

    /**
     * 17 申请说明: 1. 取该申请数据提交时申请选择`销售方申请`的申请说明`0000000100`; 2. 此字段数据不可能为空;
     */
    @ApiModelProperty(value = "17 申请说明: 1. 取该申请数据提交时申请选择`销售方申请`的申请说明`0000000100`; 2. 此字段数据不可能为空;")
    private String reqExplain;

    /**
     * 18 金税盘号: 1. 取该申请数据提交时金税盘号内容; 2. 此字段数据不可能为空;
     */
    @ApiModelProperty(value = "18 金税盘号: 1. 取该申请数据提交时金税盘号内容; 2. 此字段数据不可能为空;")
    private String goldenTaxPlateNo;

    /**
     * 19 申请方税号: 1. 取该申请数据提交时申请选择为`销售方申请`时，其申请方税号与`销售方税号`内容一致; 2. 此字段数据不可能为空;
     */
    @ApiModelProperty(value = "19 申请方税号: 1. 取该申请数据提交时申请选择为`销售方申请`时，其申请方税号与`销售方税号`内容一致; 2. 此字段数据不可能为空;")
    private String reqNsrsbh;

    /**
     * 20 备注: 1. 取该数据后台的【备注】内容;
     */
    @ApiModelProperty(value = "20 备注: 1. 取该数据后台的【备注】内容;")
    private String backendMemo;

    /**
     * 21 申请人&申请时间: 1. 取该数据提交航信的操作人姓名和时间; 2. 申请时间格式：年-月-日 时:分:秒;
     */
    @ApiModelProperty(value = "21 申请人&申请时间: 1. 取该数据提交航信的操作人姓名和时间; 2. 申请时间格式：年-月-日 时:分:秒;")
    private Date createTime;

    /**
     * 21 申请人&申请时间: 1. 取该数据提交航信的操作人姓名和时间; 2. 申请时间格式：年-月-日 时:分:秒;
     */
    @ApiModelProperty(value = "21 申请人&申请时间: 1. 取该数据提交航信的操作人姓名和时间; 2. 申请时间格式：年-月-日 时:分:秒;")
    private Long createUserId;

    /**
     * 21 申请人&申请时间: 1. 取该数据提交航信的操作人姓名和时间; 2. 申请时间格式：年-月-日 时:分:秒;
     */
    @ApiModelProperty(value = "21 申请人&申请时间: 1. 取该数据提交航信的操作人姓名和时间; 2. 申请时间格式：年-月-日 时:分:秒;")
    private String createUserName;

    /**
     * 22 更新人&更新时间: 1. 初始：取该数据提交航信的操作人姓名和时间; 2. 更新时间格式：年-月-日 时:分:秒; 3. 以下操作影响内容：;op下载信息表编号 确认下载航信返回成功时;op备注 成功时;op红冲 金税盘发票 成功后使用该数据的信息表编号;
     */
    @ApiModelProperty(value = "22 更新人&更新时间: 1. 初始：取该数据提交航信的操作人姓名和时间; 2. 更新时间格式：年-月-日 时:分:秒; 3. 以下操作影响内容：;op下载信息表编号 确认下载航信返回成功时;op备注 成功时;op红冲 金税盘发票 成功后使用该数据的信息表编号;")
    private Date updateTime;

    /**
     * 22 更新人&更新时间: 1. 初始：取该数据提交航信的操作人姓名和时间; 2. 更新时间格式：年-月-日 时:分:秒; 3. 以下操作影响内容：;op下载信息表编号 确认下载航信返回成功时;op备注 成功时;op红冲 金税盘发票 成功后使用该数据的信息表编号;
     */
    @ApiModelProperty(value = "22 更新人&更新时间: 1. 初始：取该数据提交航信的操作人姓名和时间; 2. 更新时间格式：年-月-日 时:分:秒; 3. 以下操作影响内容：;op下载信息表编号 确认下载航信返回成功时;op备注 成功时;op红冲 金税盘发票 成功后使用该数据的信息表编号;")
    private Long updateUserId;

    /**
     * 22 更新人&更新时间: 1. 初始：取该数据提交航信的操作人姓名和时间; 2. 更新时间格式：年-月-日 时:分:秒; 3. 以下操作影响内容：;op下载信息表编号 确认下载航信返回成功时;op备注 成功时;op红冲 金税盘发票 成功后使用该数据的信息表编号;
     */
    @ApiModelProperty(value = "22 更新人&更新时间: 1. 初始：取该数据提交航信的操作人姓名和时间; 2. 更新时间格式：年-月-日 时:分:秒; 3. 以下操作影响内容：;op下载信息表编号 确认下载航信返回成功时;op备注 成功时;op红冲 金税盘发票 成功后使用该数据的信息表编号;")
    private String updateUserName;

    private static final long serialVersionUID = 1L;
}