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

import cn.superdesk.uniorder.common.pagination.AnBaseQueryCriteria;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;
import lombok.experimental.SuperBuilder;

/**
 * @author linjinyu
 * @email linjinyu@avic-s.com
 * @date 2022-05-25 18:50:54
 */
@NoArgsConstructor
@AllArgsConstructor
@SuperBuilder(toBuilder = true)
@Data
@ToString
public class SzhtxxPaperInvoiceRedTaxInfoQueryCriteria extends AnBaseQueryCriteria {

//----(5)发票号:对当前列表数据`发票号`字段内容,`精确`查询,多条数据存在同一个发票号;
//----(6)信息表流水号:对当前列表数据`信息表流水号`字段内容,`精确`查询;
//----(7)信息表编号:对当前列表数据`信息表编号`字段内容,`精确`查询;
//----(8)发票代码:对当前列表数据`发票代码`字段内容,`精确`查询,多张发票存在同一个发票代码;
//----(9)购买方名称:对当前列表数据`购买方名称`字段内容,`模糊`查询;
//----(10)购买方税号:对当前列表数据中`购买方税号`字段内容,`精确`查询;
//----(11)销售方名称:对当前列表数据`销售方名称`字段内容,`模糊`查询;
//----(12)销售方税号:对当前列表数据中`销售方税号`字段内容,`精确`查询;
//----(13)金税盘号:对当前列表数据`金税盘号`字段内容,`精确`查询;
//----(14)申请人:对当前列表数据`申请人`字段内容,`模糊`查询;


    @ApiModelProperty("(6)信息表流水号:对当前列表数据`信息表流水号`字段内容,`精确`查询;2 信息表流水号: 1. 取该申请数据的信息表流水号内容; 2. 此字段数据不可能为空;")
    private String redTaxInfoLsh;
    @ApiModelProperty("(7)信息表编号:对当前列表数据`信息表编号`字段内容,`精确`查询;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("(8)发票代码:对当前列表数据`发票代码`字段内容,`精确`查询,多张发票存在同一个发票代码;7 发票代码: 1. 取该申请数据所属蓝票的发票代码内容;")
    private String fpdm;
    @ApiModelProperty("(5)发票号:对当前列表数据`发票号`字段内容,`精确`查询,多条数据存在同一个发票号;8 发票号: 1. 取该申请数据所属蓝票的发票号码内容;")
    private String fphm;

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

    @ApiModelProperty("(10)购买方税号:对当前列表数据中`购买方税号`字段内容,`精确`查询;10 购买方名称&税号: 1. 取该申请数据所属购买方名称和税号内容; 2. 此字段数据不可能为空;")
    private String ghfNsrsbh;
    @ApiModelProperty("(9)购买方名称:对当前列表数据`购买方名称`字段内容,`模糊`查询;10 购买方名称&税号: 1. 取该申请数据所属购买方名称和税号内容; 2. 此字段数据不可能为空;")
    private String ghfmc;
    @ApiModelProperty("(12)销售方税号:对当前列表数据中`销售方税号`字段内容,`精确`查询;11 销售方名称&税号: 1. 取该申请数据所属销售方名称和税号内容; 2. 此字段数据不可能为空;")
    private String xhfNsrsbh;
    @ApiModelProperty("(11)销售方名称:对当前列表数据`销售方名称`字段内容,`模糊`查询;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("(13)金税盘号:对当前列表数据`金税盘号`字段内容,`精确`查询;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("申请日期-查询)")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private String startTime;
    @ApiModelProperty("申请日期-查询)")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private String endTime;
    @ApiModelProperty("(14)申请人:对当前列表数据`申请人`字段内容,`模糊`查询;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;


}