package cn.superdesk.uniorder.dto.vo.organisation;

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

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

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

    /**************************************** SysEnterpriseExtInvoice start ****************************************/

    @ApiModelProperty(value = "")
    private Long id;

    @ApiModelProperty(value = "")
    private Integer serviceNo;
    @ApiModelProperty(value = "编号")
    private String serialNumber;

    @ApiModelProperty(value = "统一订单 项目ID")
    private Long sysOrgId;
    @ApiModelProperty(value = "统一订单 企业ID")
    private Long sysVirtId;
    @ApiModelProperty(value = "服务之窗 项目ID")
    private Long outOrgId;
    @ApiModelProperty(value = "服务之窗 企业ID")
    private Long outVirtId;

    @ApiModelProperty(value = "开票方式(1为随货开票,0为订单预借,2为集中开票 )")
    private Integer invoiceState;
    @ApiModelProperty(value = "1普通发票 2增值税发票")
    private Integer invoiceType;
    @ApiModelProperty(value = "发票类型:4-个人-04,5-单位-01")
    private Integer selectedInvoiceTitle;
    @ApiModelProperty(value = "个人发票抬头")
    private String realname;
    @ApiModelProperty(value = "发票抬头  (如果selectedInvoiceTitle=5则此字段必须)")
    private String companyName;
    @ApiModelProperty(value = "纳税人识别码 备注 开企业抬头发票,请填写 纳税人识别号 ,以免影响您报销")
    private String taxpayersIDCode;
    @ApiModelProperty(value = "1:明细,3:电脑配件,19:耗材,22:办公用品 备注:若增值发票则只能选1 明细")
    private Integer invoiceContent;
    @ApiModelProperty(value = "增值票收票人姓名 备注:当invoiceType=2 且invoiceState=1时则此字段必填")
    private String invoiceName;
    @ApiModelProperty(value = "增值票收票人电话 备注:当invoiceType=2 且invoiceState=1时则此字段必填")
    private String invoicePhone;
    @ApiModelProperty(value = "")
    private String invoiceEmail;
    @ApiModelProperty(value = "联系人-名称")
    private String contactsName;
    @ApiModelProperty(value = "联系人-邮箱")
    private String contactsEmail;
    @ApiModelProperty(value = "联系人-电话")
    private String contactsPhone;
    @ApiModelProperty(value = "增值票收票人所在省(京东地址编码) 备注:当invoiceType=2 且invoiceState=1时则此字段必填")
    private Integer invoiceProvice;
    @ApiModelProperty(value = "增值票收票人所在市(京东地址编码) 备注:当invoiceType=2 且invoiceState=1时则此字段必填")
    private Integer invoiceCity;
    @ApiModelProperty(value = "增值票收票人所在区/县(京东地址编码) 备注:当invoiceType=2 且invoiceState=1时则此字段必填")
    private Integer invoiceCounty;
    @ApiModelProperty(value = "增值票收票人所在地址 备注:当invoiceType=2 且invoiceState=1时则此字段必填")
    private String invoiceAddress;
    @ApiModelProperty(value = "复合字段 地址电话")
    private String invoiceAddressPhone;
    @ApiModelProperty(value = "复合字段 银行名称与账号")
    private String invoiceBankAccountNumber;
    @ApiModelProperty(value = "增值票开户银行")
    private String invoiceBank;
    @ApiModelProperty(value = "增值票开户帐号")
    private String invoiceAccount;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "")
    private Integer isDefault;

    @ApiModelProperty(value = "")
    private Integer deleted;
    @ApiModelProperty(value = "是否启用:1-启用;0-禁用;")
    private Integer enabled;

    @ApiModelProperty(value = "")
    private Date createTime;
    @ApiModelProperty(value = "")
    private Long createUserId;

    @ApiModelProperty(value = "")
    private Date updateTime;
    @ApiModelProperty(value = "")
    private Long updateUserId;


    /**************************************** SysEnterpriseExtInvoice   end ****************************************/

    /**************************************** 附加属性 start ****************************************/

    private String enabledName;
    private String deletedName;
    private String createUserName;
    private String updateUserName;

    /**************************************** 附加属性   end ****************************************/


    private String path;
    private String effect;
}
