package com.flossom.common.core.domain.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.flossom.common.core.annotation.Excel;
import com.flossom.common.core.web.domain.BaseEntity;

import java.util.Date;

/**
 * 用户对象 wx_user_member
 *
 * @author flossom
 * @date 2023-12-08
 */
public class WxUserMember extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    private Long id;

    /**
     * 昵称
     */
    @Excel(name = "昵称")
    private String nickname;

    /**
     * 头像
     */
    @Excel(name = "头像")
    private String headimg;

    /**
     * 姓名
     */
    @Excel(name = "姓名")
    private String username;

    /**
     * 积分
     */
    @Excel(name = "积分")
    private Integer credit;

    /**
     * 即将过期积分
     */
    @Excel(name = "即将过期积分")
    private Integer expireCredit;

    /**
     * openid
     */
    @Excel(name = "openid")
    private String openid;

    /**
     * unionid
     */
    @Excel(name = "unionid")
    private String unionid;

    /**
     * 用户类型：0游客 1会员
     */
    @Excel(name = "用户类型：0游客 1会员")
    private Integer userType;

    /**
     * 会员等级：0 不是会员，1以上为会员
     */
    @Excel(name = "会员等级：0 不是会员，1以上为会员")
    private Integer level;

    /**
     * 手机
     */
    @Excel(name = "手机")
    private String mobile;

    /**
     * 省id
     */
    @Excel(name = "省id")
    private Long provinceId;

    /**
     * 省
     */
    @Excel(name = "省")
    private String province;

    /**
     * 市id
     */
    @Excel(name = "市id")
    private Long cityId;

    /**
     * 市
     */
    @Excel(name = "市")
    private String city;

    /**
     * 区id
     */
    @Excel(name = "区id")
    private Long areaId;

    /**
     * 区
     */
    @Excel(name = "区")
    private String area;

    /**
     * 生日
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "生日", width = 30, dateFormat = "yyyy-MM-dd")
    private Date birthday;

    /**
     * 打卡：1可以2不可以
     */
    @Excel(name = "1可以2不可以")
    private Integer clock;

    /**
     * 活动：1可以2不可以
     */
    @Excel(name = "1可以2不可以")
    private Integer activity;

    /**
     * 微信号
     */
    @Excel(name = "微信号")
    private String wechat;


    /**
     * 1 未对接到中控 2已经对接 3对接失败
     */
    @Excel(name = "1 未对接到中控 2已经对接 3对接失败")
    private Integer isAbutment;


    /**
     * 是否完善信息： ：0 未完善  1完善
     */
    private Integer isCompleteInformation;

    /**
     * 绑定的仪器数量
     */
    private Integer devicesNum;

    /**
     * 登陆时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "登陆时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date loginTime;

    /**
     * 状态（0正常 1停用）
     */
    @Excel(name = "状态", readConverterExp = "0=正常,1=停用")
    private Integer status;

    public void setId(Long id) {
        this.id = id;
    }

    public Long getId() {
        return id;
    }

    public void setNickname(String nickname) {
        this.nickname = nickname;
    }

    public String getNickname() {
        return nickname;
    }

    public void setHeadimg(String headimg) {
        this.headimg = headimg;
    }

    public String getHeadimg() {
        return headimg;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getUsername() {
        return username;
    }

    public void setCredit(Integer credit) {
        this.credit = credit;
    }

    public Integer getCredit() {
        return credit;
    }

    public void setOpenid(String openid) {
        this.openid = openid;
    }

    public String getOpenid() {
        return openid;
    }

    public void setUnionid(String unionid) {
        this.unionid = unionid;
    }

    public String getUnionid() {
        return unionid;
    }

    public void setUserType(Integer userType) {
        this.userType = userType;
    }

    public Integer getUserType() {
        return userType;
    }

    public void setLevel(Integer level) {
        this.level = level;
    }

    public Integer getLevel() {
        return level;
    }

    public void setMobile(String mobile) {
        this.mobile = mobile;
    }

    public String getMobile() {
        return mobile;
    }

    public void setProvince(String province) {
        this.province = province;
    }

    public String getProvince() {
        return province;
    }

    public void setCity(String city) {
        this.city = city;
    }

    public String getCity() {
        return city;
    }

    public void setArea(String area) {
        this.area = area;
    }

    public String getArea() {
        return area;
    }

    public void setBirthday(Date birthday) {
        this.birthday = birthday;
    }

    public Date getBirthday() {
        return birthday;
    }

    public void setClock(Integer clock) {
        this.clock = clock;
    }

    public Integer getClock() {
        return clock;
    }

    public void setActivity(Integer activity) {
        this.activity = activity;
    }

    public Integer getActivity() {
        return activity;
    }

    public void setWechat(String wechat) {
        this.wechat = wechat;
    }

    public String getWechat() {
        return wechat;
    }


    public void setIsAbutment(Integer isAbutment) {
        this.isAbutment = isAbutment;
    }

    public Integer getIsAbutment() {
        return isAbutment;
    }

    public void setLoginTime(Date loginTime) {
        this.loginTime = loginTime;
    }

    public Date getLoginTime() {
        return loginTime;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public Integer getStatus() {
        return status;
    }

    public Long getProvinceId() {
        return provinceId;
    }

    public void setProvinceId(Long provinceId) {
        this.provinceId = provinceId;
    }

    public Long getCityId() {
        return cityId;
    }

    public void setCityId(Long cityId) {
        this.cityId = cityId;
    }

    public Long getAreaId() {
        return areaId;
    }

    public void setAreaId(Long areaId) {
        this.areaId = areaId;
    }

    public Integer getIsCompleteInformation() {
        return isCompleteInformation;
    }

    public void setIsCompleteInformation(Integer isCompleteInformation) {
        this.isCompleteInformation = isCompleteInformation;
    }

    public Integer getDevicesNum() {
        return devicesNum;
    }

    public void setDevicesNum(Integer devicesNum) {
        this.devicesNum = devicesNum;
    }

    public Integer getExpireCredit() {
        return expireCredit;
    }

    public void setExpireCredit(Integer expireCredit) {
        this.expireCredit = expireCredit;
    }

    public WxUserMember() {
    }

    public WxUserMember(Long id, String nickname, String headimg, String username, Integer credit, Integer expireCredit, String openid, String unionid, Integer userType, Integer level, String mobile, Long provinceId, String province, Long cityId, String city, Long areaId, String area, Date birthday, Integer clock, Integer activity, String wechat, Integer isAbutment, Integer isCompleteInformation, Integer devicesNum, Date loginTime, Integer status) {
        this.id = id;
        this.nickname = nickname;
        this.headimg = headimg;
        this.username = username;
        this.credit = credit;
        this.expireCredit = expireCredit;
        this.openid = openid;
        this.unionid = unionid;
        this.userType = userType;
        this.level = level;
        this.mobile = mobile;
        this.provinceId = provinceId;
        this.province = province;
        this.cityId = cityId;
        this.city = city;
        this.areaId = areaId;
        this.area = area;
        this.birthday = birthday;
        this.clock = clock;
        this.activity = activity;
        this.wechat = wechat;
        this.isAbutment = isAbutment;
        this.isCompleteInformation = isCompleteInformation;
        this.devicesNum = devicesNum;
        this.loginTime = loginTime;
        this.status = status;
    }
}
