package com.sqx.modules.app.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;


/**
 * 用户
 */
@Data
@ApiModel("用户")
@TableName("tb_user")
public class UserEntity implements Serializable {
    private static final long serialVersionUID = 1L;


    /**
     * 用户id
     */
    @TableId(value = "user_id", type = IdType.AUTO)
    private Long userId;

    /**
     * 用户名
     */
    private String userName;

    /**
     * 手机号
     */
    private String phone;

    /**
     * 头像
     */
    private String avatar;

    /**
     * 微信号
     */
    private String weChatNum;

    /**
     * 性别 1男 2女
     */
    private Integer sex;

    /**
     * 年龄
     */
    private Integer age;

    /**
     * 微信小程序openId
     */
    private String openId;

    /**
     * 微信App  openId
     */
    private String wxOpenId;

    /**
     * 密码
     */
    private String password;
    /**
     * 收益
     */
    private BigDecimal balance;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private String createTime;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private String updateTime;

    /**
     * 苹果id
     */
    private String appleId;

    /**
     * 手机类型 1安卓 2ios
     */
    private Integer sysPhone;

    /**
     * 状态 1正常 2禁用
     */
    private Integer status;

    /**
     * 来源 APP 小程序  公众号
     */
    private String platform;

    /**
     * 积分
     */
    private Integer jifen;

    /**
     * 邀请码
     */
    private String invitationCode;

    /**
     * 邀请人邀请码
     */
    private String inviterCode;
    /**
     * 邀请人的人上级
     */
    @TableField("inviter_inviter_code")
    private String inviterInviterCode;
    /**
     * app消息推送
     */
    private String clientid;

    /**
     * 支付宝名称
     */
    private String zhiFuBaoName;

    /**
     * 支付宝账号
     */
    private String zhiFuBao;


    /**
     * 微信二维码
     */
    private String wxImg;

    private Integer isSendMsg;


    /**
     * 直属佣金
     */
    private BigDecimal zhiRate;

    /**
     * 非直属佣金
     */
    private BigDecimal feiRate;


    /**
     * 1用户 2企业
     */
    private Integer userType;


    private String auditContent;

    /**
     * 用户刷新次数
     */
    private Integer userRefreshCount;

    /**
     * 企业刷新次数
     */
    private Integer companyRefreshCount;

    /**
     * 用户是否是会员 0否 1是
     */
    private Integer isUserVip;

    /**
     * 企业是否是会员 0否 1是
     */
    private Integer isCompanyVip;

    /**
     * 用户是否已增加次数 0否 1是
     */
    private Integer isUserAdd;

    /**
     * 企业是否已增加次数 0否 1是
     */
    private Integer isCompanyAdd;

    /**
     * 用户月卡到期时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime userMonthTime;

    /**
     * 企业月卡到期时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime companyMonthTime;
    /**
     * 公众号临时标识
     */
    private String tempId;
    /**
     * 公司id
     */
    @TableField(exist = false)
    @ApiModelProperty("公司id")
    private Long companyId;

    /**
     * 公司id
     */
    @TableField(exist = false)
    @ApiModelProperty("简历id")
    private Long resumesId;

    @TableField(exist = false)
    private BigDecimal money;

    private Integer vipPostTimes;
    private Integer vipDueTimes;
}
