package org.jeecg.modules.shop.user.entity;

import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @Description: partner_user
 * @Author: jeecg-boot
 * @Date:   2025-07-09
 * @Version: V1.0
 */
@Data
@TableName("partner_user")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="partner_user对象", description="partner_user")
public class PartnerUser implements Serializable {
    private static final long serialVersionUID = 1L;

	/**创建人*/
    @ApiModelProperty(value = "创建人")
    private String createBy;
	/**创建时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间")
    private Date createTime;
	/**更新人*/
    @ApiModelProperty(value = "更新人")
    private String updateBy;
	/**更新时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新时间")
    private Date updateTime;
	/**id*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "id")
    private String id;
	/**编号*/
    @ApiModelProperty(value = "编号")
    private String billNo;
	/**代理角色code*/
    @ApiModelProperty(value = "代理角色code")
    private String ruleCode;
	/**类型 0个人 1公司*/
    @ApiModelProperty(value = "类型 0个人 1公司")
    private Integer type;
	/**所属部门*/
    @ApiModelProperty(value = "所属部门")
    private String sysOrgCode;
	/**邮箱*/
    @ApiModelProperty(value = "邮箱")
    private String email;
	/**手机区号*/
    @ApiModelProperty(value = "手机区号")
    private String areaCode;
	/**手机号*/
    @ApiModelProperty(value = "手机号")
    private String phone;
	/**全名*/
    @ApiModelProperty(value = "全名")
    private String fullName;
	/**firstName*/
    @ApiModelProperty(value = "firstName")
    private String firstName;
	/**lastName*/
    @ApiModelProperty(value = "lastName")
    private String lastName;
	/**头像*/
    @ApiModelProperty(value = "头像")
    private String photo;
	/**密码*/
    @ApiModelProperty(value = "密码")
    private String password;
	/**国家*/
    @ApiModelProperty(value = "国家")
    private String country;
	/**申请理由*/
    @ApiModelProperty(value = "申请理由")
    private String applicationReason;
	/**促进易杰发展*/
    @ApiModelProperty(value = "促进易杰发展")
    private String promoteBusiness;
	/**0paypal 1bank*/
    @ApiModelProperty(value = "0paypal 1bank")
    private Integer payMethod;
	/**paypal email*/
    @ApiModelProperty(value = "paypal email")
    private String paypalEmail;
	/**paypal_beneficiarys_name*/
    @ApiModelProperty(value = "paypal_beneficiarys_name")
    private String paypalBeneficiarysName;
	/**bank_account_name*/
    @ApiModelProperty(value = "bank_account_name")
    private String bankAccountName;
	/**bank_account_number*/
    @ApiModelProperty(value = "bank_account_number")
    private String bankAccountNumber;
	/**back card-SWIFT/BIC Code*/
    @ApiModelProperty(value = "back card-SWIFT/BIC Code")
    private String bankCardCode;
	/**back card-BANK NAME*/
    @ApiModelProperty(value = "back card-BANK NAME")
    private String bankName;
	/**bank_address*/
    @ApiModelProperty(value = "bank_address")
    private String bankAddress;
	/**Corporate Name 类型为公司时填写*/
    @ApiModelProperty(value = "Corporate Name 类型为公司时填写")
    private String companyName;
	/**Position类型为公司时填写*/
    @ApiModelProperty(value = "Position类型为公司时填写")
    private String position;
	/**Date of Incorporation类型为公司时填写*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "Date of Incorporation类型为公司时填写")
    private Date dateOfIncorporation;
	/**Company Size类型为公司时填写*/
    @ApiModelProperty(value = "Company Size类型为公司时填写")
    private String ompanySize;
	/**Business type类型为公司时填写*/
    @ApiModelProperty(value = "Business type类型为公司时填写")
    private String businessType;
	/**状态0禁用1启用*/
    @ApiModelProperty(value = "状态0禁用1启用")
    private Integer state;
	/**登录次数*/
    @ApiModelProperty(value = "登录次数")
    private Integer loginCount;
	/**最近登录时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "最近登录时间")
    private Date loginTime;
	/**审核时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "审核时间")
    private Date auditTime;
	/**审核人*/
    @ApiModelProperty(value = "审核人")
    private String auditPerson;

    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "注册时间")
    private Date registerTime;

    @ApiModelProperty(value = "信息是否完善0未完善 1已完善")
    private Integer infoState;

    @ApiModelProperty(value = "审核状态0审核中 1拒绝 2已通过")
    private Integer auditState;

}
