package cn.superdesk.uniorder.dto.param.invoice.supplier;

import cn.superdesk.uniorder.common.pagination.AnBaseQueryCriteria;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;

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

/**
 * @author linjinyu
 * @email linjinyu@avic-s.com
 * @date 2021-12-09 17:35:01
 */
@Data
@ToString
public class InvoiceApplySupplierQueryCriteria extends AnBaseQueryCriteria {

	@ApiModelProperty("")
	private Long       id;
	@ApiModelProperty("对账单类型 1-一般;2-积分;")
	private Integer    accountingOrderType;
	@ApiModelProperty("对账单Id")
	private Long       accountingOrderId;
	@ApiModelProperty("对账单编号")
	private String     accountingOrderSn;
	@ApiModelProperty("对账单 创建维度:0-订单;1-商品;2-流水;")
	private Integer    dimCreateBy;
	@ApiModelProperty("发票申请号")
	private String     invoiceApplySn;
	@ApiModelProperty("发票申请部分 - 开票申请金额:商品或流水累加")
	private BigDecimal invoiceApplyAmount;
	@ApiModelProperty("")
	private Integer    invoiceType;
	@ApiModelProperty("开票抬头")
	private String     invoiceTitle;
	@ApiModelProperty("平台方扩展发票信息.id invoiceBankInfo.id")
	private Long       sysPlatformExtInvoiceId;
	@ApiModelProperty("平台方扩展发票信息快照")
	private String     sysPlatformExtInvoiceSnapshot;
	@ApiModelProperty("作废-供应商|商户信息扩展发票信息.id sysSupplierExtInvoiceId")
	private Long       sysSupplierExtInvoiceId;
	@ApiModelProperty("作废-供应商|商户信息扩展发票信息快照")
	private String     sysSupplierExtInvoiceSnapshot;
	@ApiModelProperty("发票申请部分 - 税率 - unified_tax_rate.id ")
	private String     taxRate;
	@ApiModelProperty("发票号")
	private String     invoiceNumber;
	@ApiModelProperty("")
	private Long       saleId;
	@ApiModelProperty("")
	private String     saleName;
	@ApiModelProperty("发票申请部分 - 发票申请人Id - 后台帐号")
	private Long       applyUserId;
	@ApiModelProperty("发票申请部分 - 发票申请人名字 - 后台帐号")
	private String     applyUserName;
	@ApiModelProperty("发票申请部分 - 发票申请时间")
	private Date       applyTime;
	@ApiModelProperty("发票申请审核部分 - 审核人Id - 后台帐号")
	private Long       auditUserId;
	@ApiModelProperty("发票申请审核部分 - 审核人名字 - 后台帐号")
	private String     auditUserName;
	@ApiModelProperty("发票申请审核部分 - 审核时间")
	private Date       auditTime;
	@ApiModelProperty("发票申请审核部分 - 审核状态:1-未审核;2-已同意;3-已拒绝;")
	private Integer    auditStatus;
	@ApiModelProperty("开票进展部分 - 开票进展状态:0-待开票(原:未邮寄);1-已邮寄(弃用);2-已作废;10-开票中;11-已开票;")
	private Integer    invoiceStatus;
	@ApiModelProperty("开票进展部分 - 最后更新人 - sysUserId")
	private Long       invoiceProgressingUserId;
	@ApiModelProperty("开票进展部分 - 最后更新时间")
	private Date       invoiceProgressingTime;
	@ApiModelProperty("发票登记部分 - 开票登记人 - 后台帐号")
	private Long       makeInvoiceUserId;
	@ApiModelProperty("发票登记部分  - 开票登记人 - 后台帐号")
	private String     makeInvoiceUserName;
	@ApiModelProperty("发票登记部分 - 发票登记状态:0-未登记;1-已登记;2-重新开票;")
	private Integer    makeInvoiceStatus;
	@ApiModelProperty("发票登记部分 - 开票登记时间")
	private Date       makeInvoiceTime;
	@ApiModelProperty("收票部分 - 收票状态:0-未收票;1-已收票;")
	private Integer    receiveInvoiceStatus;
	@ApiModelProperty("收票部分 - 最后更新人 - sysUserId")
	private Long       receiveInvoiceUserId;
	@ApiModelProperty("收票部分 - 最后更新时间")
	private Date       receiveInvoiceTime;
	@ApiModelProperty("寄票登记部分 - 快递公司ID")
	private Long       expressCompanyId;
	@ApiModelProperty("寄票登记部分 - 快递单号")
	private String     expressNo;
	@ApiModelProperty("备注")
	private String     remark;
	@ApiModelProperty("绑定附件 upload_files.uid")
	private String     attachmentUploadFilesUids;
	@ApiModelProperty("寄票登记部分 - 寄票时间")
	private Date       mailTickTime;
	@ApiModelProperty("寄票登记部分 - 寄票登记人 - 后台帐号")
	private Long       mailTickUserId;
	@ApiModelProperty("寄票登记部分 - 寄票状态:0-未寄票;1-已寄票;")
	private Integer    mailTickStatus;
	@ApiModelProperty("付款(结清)登记部分 - 付款(结清)状态:0-付款(结清);1-部分付款(结清);2已付款(结清);")
	private Integer    payoffAccountStatus;
	@ApiModelProperty("付款(结清)登记部分 - 付款(结清)登记方式记录:0-初始;10-手动;11-流水;")
	private Integer    payoffAccountModeRecord;
	@ApiModelProperty("付款(结清)登记部分 - 最后更新人 - sysUserId")
	private Long       payoffAccountUserId;
	@ApiModelProperty("付款(结清)登记部分 - 最后更新时间")
	private Date       payoffAccountTime;
	@ApiModelProperty("创建开票申请时产生-统计类-对账单数量")
	private Integer    accountingOrderQuantity;
	@ApiModelProperty("创建开票申请时产生-统计类-")
	private Integer    orderQuantity;
	@ApiModelProperty("创建开票申请时产生-统计类-")
	private BigDecimal orderAmount;
	@ApiModelProperty("创建开票申请时产生-统计类-订单商品item数量累加")
	private Integer    goodsQuantity;
	@ApiModelProperty("创建开票申请时产生-统计类-订单商品item的数量累加")
	private Integer    goodsItemQuantity;
	@ApiModelProperty("创建开票申请时产生-统计类-商品销售金额(统一订单)")
	private BigDecimal goodsAmount;
	@ApiModelProperty("创建开票申请时产生-统计类-商品成本金额(统一订单)")
	private BigDecimal goodsCostAmount;


}