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

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

import java.time.LocalTime;
import java.util.Date;

/**
 * 用户护理日志对象
 *
 * @author flossom
 * @date 2024-01-29
 */
public class WxNursingLogExport {

    @Excel(name = "序号")
    private Long id;

    @Excel(name = "会员昵称")
    private String nickname;

    @Excel(name = "用户编号")
    private Long userId;

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

    @Excel(name = "仪器名称")
    private String instrumentName;

    @Excel(name = "模式")
    private String modeName;

    /**
     * 是否在线，1在线，2离线
     */
    @Excel(name = "在线状态", readConverterExp = "1=在线,2=离线", type = Excel.Type.ALL, combo = {"1", "2"})
    private Long online;

    @Excel(name = "陪伴模式")
    private Integer accompanyMode;

    @Excel(name = "创建时间", dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    @Excel(name = "护理时长", dateFormat = "HH:mm:ss")
    private LocalTime nursingTime;

    @Excel(name = "挡位1")
    private Integer gearPositionOne;

    @Excel(name = "挡位2")
    private Integer gearPositionTwo;

    @Excel(name = "挡位3")
    private Integer gearPositionThree;

    @Excel(name = "挡位4")
    private Integer gearPositionFour;

    @Excel(name = "能量总值")
    private Integer energyValue;

    @Excel(name = "水分数据1")
    private Integer waterDataOne;

    @Excel(name = "水分数据2")
    private Integer waterDataTwo;

    @Excel(name = "水分数据3")
    private Integer waterDataThree;

    @Excel(name = "总护理天数")
    private Integer nursingDays;

    @Excel(name = "本周护理天数")
    private Integer nursingDaysWeek;

    @Excel(name = "本月护理天数")
    private Integer nursingDaysMonth;

    @Excel(name = "本年护理天数")
    private Integer nursingDaysYear;

    @Excel(name = "最新护理时间", dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    @Excel(name = "小程序标签")
    private String miniProgramTagListStr;

    @Excel(name = "外部标签")
    private String wecomTagListStr;

    @Excel(name = "用户注册时间", dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date userMemberCreateTime;

    @Excel(name = "仪器绑定时间", dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date instrumentBindingTime;

    public WxNursingLogExport() {
    }

    public Long getId() {
        return id;
    }

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

    public String getNickname() {
        return nickname;
    }

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

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public String getMobile() {
        return mobile;
    }

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

    public String getInstrumentName() {
        return instrumentName;
    }

    public void setInstrumentName(String instrumentName) {
        this.instrumentName = instrumentName;
    }

    public String getModeName() {
        return modeName;
    }

    public void setModeName(String modeName) {
        this.modeName = modeName;
    }

    public Long getOnline() {
        return online;
    }

    public void setOnline(Long online) {
        this.online = online;
    }

    public Integer getAccompanyMode() {
        return accompanyMode;
    }

    public void setAccompanyMode(Integer accompanyMode) {
        this.accompanyMode = accompanyMode;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public LocalTime getNursingTime() {
        return nursingTime;
    }

    public void setNursingTime(LocalTime nursingTime) {
        this.nursingTime = nursingTime;
    }

    public Integer getGearPositionOne() {
        return gearPositionOne;
    }

    public void setGearPositionOne(Integer gearPositionOne) {
        this.gearPositionOne = gearPositionOne;
    }

    public Integer getGearPositionTwo() {
        return gearPositionTwo;
    }

    public void setGearPositionTwo(Integer gearPositionTwo) {
        this.gearPositionTwo = gearPositionTwo;
    }

    public Integer getGearPositionThree() {
        return gearPositionThree;
    }

    public void setGearPositionThree(Integer gearPositionThree) {
        this.gearPositionThree = gearPositionThree;
    }

    public Integer getGearPositionFour() {
        return gearPositionFour;
    }

    public void setGearPositionFour(Integer gearPositionFour) {
        this.gearPositionFour = gearPositionFour;
    }

    public Integer getEnergyValue() {
        return energyValue;
    }

    public void setEnergyValue(Integer energyValue) {
        this.energyValue = energyValue;
    }

    public Integer getWaterDataOne() {
        return waterDataOne;
    }

    public void setWaterDataOne(Integer waterDataOne) {
        this.waterDataOne = waterDataOne;
    }

    public Integer getWaterDataTwo() {
        return waterDataTwo;
    }

    public void setWaterDataTwo(Integer waterDataTwo) {
        this.waterDataTwo = waterDataTwo;
    }

    public Integer getWaterDataThree() {
        return waterDataThree;
    }

    public void setWaterDataThree(Integer waterDataThree) {
        this.waterDataThree = waterDataThree;
    }

    public Integer getNursingDays() {
        return nursingDays;
    }

    public void setNursingDays(Integer nursingDays) {
        this.nursingDays = nursingDays;
    }

    public Integer getNursingDaysWeek() {
        return nursingDaysWeek;
    }

    public void setNursingDaysWeek(Integer nursingDaysWeek) {
        this.nursingDaysWeek = nursingDaysWeek;
    }

    public Integer getNursingDaysMonth() {
        return nursingDaysMonth;
    }

    public void setNursingDaysMonth(Integer nursingDaysMonth) {
        this.nursingDaysMonth = nursingDaysMonth;
    }

    public Integer getNursingDaysYear() {
        return nursingDaysYear;
    }

    public void setNursingDaysYear(Integer nursingDaysYear) {
        this.nursingDaysYear = nursingDaysYear;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public String getMiniProgramTagListStr() {
        return miniProgramTagListStr;
    }

    public void setMiniProgramTagListStr(String miniProgramTagListStr) {
        this.miniProgramTagListStr = miniProgramTagListStr;
    }

    public String getWecomTagListStr() {
        return wecomTagListStr;
    }

    public void setWecomTagListStr(String wecomTagListStr) {
        this.wecomTagListStr = wecomTagListStr;
    }

    public Date getUserMemberCreateTime() {
        return userMemberCreateTime;
    }

    public void setUserMemberCreateTime(Date userMemberCreateTime) {
        this.userMemberCreateTime = userMemberCreateTime;
    }

    public Date getInstrumentBindingTime() {
        return instrumentBindingTime;
    }

    public void setInstrumentBindingTime(Date instrumentBindingTime) {
        this.instrumentBindingTime = instrumentBindingTime;
    }
}
