package cn.superdesk.uniorder.dto.vo.thirdpart.szhtxx.paperInvoice;

import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @Description: Java类作用描述
 * @Author: linjinyu
 * @CreateDate: 2022/5/25 7:55 下午
 * @UpdateUser: linjinyu
 * @UpdateDate: 2022/5/25 7:55 下午
 * @UpdateRemark: 修改内容
 * @Version: 1.0
 */
@NoArgsConstructor
@AllArgsConstructor
@Builder(toBuilder = true)
@Data
public class SzhtxxPaperInvoiceRedTaxInfoListItemVo implements Serializable {

    @ApiModelProperty("Id")
    private Long   id;
    @ApiModelProperty("批次Id")
    private String batchId;

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

    @ApiModelProperty("0000")
    private String returnCode;
    @ApiModelProperty("发票开具成功")
    private String returnMsg;

    @ApiModelProperty("2 信息表流水号: 1. 取该申请数据的信息表流水号内容; 2. 此字段数据不可能为空;")
    private String redTaxInfoLsh;
    @ApiModelProperty("3 信息表编号: 1. 该数据取航信返回的信息表编号内容; 2. 此字段数据可能存在为空;")
    private String redTaxInfoSn;
    @ApiModelProperty("4 信息表状态: 1. 该数据取航信返回的信息表状态内容; 2. 此字段数据可能存在为空;")
    private String redTaxInfoStatus;
    @ApiModelProperty("5 信息表描述: 1. 该数据取航信返回的信息表描述内容; 2. 此字段数据可能存在为空;")
    private String redTaxInfoDesc;

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

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

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

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

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

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

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

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

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

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

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

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

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