package com.yc.ship.module.trade.controller.admin.invoice.vo;

import com.yc.ship.framework.common.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

@Schema(description = "管理后台 - 电子发票分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class InvoicePageReqVO extends PageParam {

    @Schema(description = "票务流水号")
    private String transactionNo;

    @Schema(description = "来源：1散客，2团票")
    private Integer source;

    @Schema(description = "抬头类型：0企业单位、1个人", example = "2")
    private Integer titleType;

    @Schema(description = "发票类型：0普通发票，1增值税专用发票", example = "2")
    private Integer invoiceType;

    @Schema(description = "开票状态：1、开票中；2、开票失败；3、开票成功", example = "1")
    private String invoiceStatus;



    @Schema(description = "买方名称", example = "王五")
    private String buyerName;

    @Schema(description = "买方纳税人识别号")
    private String buyerTaxCode;

    @Schema(description = "推送短信手机号")
    private String buyerTel;

    @Schema(description = "推送PDF文件的邮箱")
    private String buyerEmail;

    @Schema(description = "电话")
    private String buyerPhone;


    @Schema(description = "卖方名称", example = "张三")
    private String salesName;

    @Schema(description = "卖方地址")
    private String salesAddress;

    @Schema(description = "卖方税号")
    private String salesTaxCode;


    @Schema(description = "发票号码")
    private String cFphm;

    @Schema(description = "开票日期开始")
    private String beginCKprq;

    @Schema(description = "开票日期结束")
    private String endCKprq;


    @Schema(description = "旅行社ID", example = "16723")
    private String agencyId;

    @Schema(description = "旅行社账号ID", example = "1834")
    private String accountId;

    @Schema(description = "发票流水号", example = "1834")
    private String fpqqlsh;

    @Schema(description = "门店ID", example = "16723")
    private Long storeId;

    @Schema(description = "订单号", example = "16723")
    private String orderNo;

}