package com.heyu.api.data.entity.device;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.lz.mybatis.plugin.annotations.AS;

import java.math.BigDecimal;
import java.util.Date;import java.util.Date;
/**
*闹钟记录表
* @author quyixiao
* @since 2025-03-04
*/

@Data
@TableName("device_alarm_clock_record")
public class DeviceAlarmClockRecordEntity implements java.io.Serializable {
private static final long serialVersionUID = 1L;

    public final static String CLASS_NAME ="com.heyu.api.data.entity.device.DeviceAlarmClockRecordEntity:";

    public final static String all = CLASS_NAME + "*";
    public final static String id_ = CLASS_NAME + "id";                     // 
    public final static String is_delete = CLASS_NAME + "is_delete";        // 是否删除：0 否 1 删除
    public final static String create_time = CLASS_NAME + "create_time";    // 创建时间
    public final static String modify_time = CLASS_NAME + "modify_time";    // 修改时间
    public final static String device_id = CLASS_NAME + "device_id";        // 设备id
    public final static String user_id = CLASS_NAME + "user_id";            // 用户id
    public final static String time_ = CLASS_NAME + "time";                 // 第一次响铃的时间，循环响铃的时间（只取时间）
    public final static String times_ = CLASS_NAME + "times";               // 提醒的时间数一次性提醒的是时间戳（10位）。一天从0分钟开始，最大1440分钟
    public final static String repeat_ = CLASS_NAME + "repeat";             // 重复次数：0：响铃一次（time指定的时间） 1：循环 2循环 跳过节假日
    public final static String repeat_day = CLASS_NAME + "repeat_day";      // 当repeat=2时具体的星期 按位取，从低到高 1,2,3,4,5,6,7
    public final static String title_ = CLASS_NAME + "title";               // 闹铃标题
    public final static String read_text = CLASS_NAME + "read_text";        // 闹铃提示文案（语音播报）
    public final static String sound_type = CLASS_NAME + "sound_type";      // 响铃类型 0：系统内置 1：指定声音（音乐）
    public final static String sound_ = CLASS_NAME + "sound";               // 响铃地址
    public final static String sound_name = CLASS_NAME + "sound_name";      // 响铃名称
    public final static String alarm_type = CLASS_NAME + "alarm_type";      // 本地直接文本播放提醒的0：本地直接响铃提醒 1 请求服务器后动作
    public final static String action_type = CLASS_NAME + "action_type";    // 服务端配合操作的动作：0：无相关动作(文本播放或者音乐) 1：IOT控制 2天气 4U3D动作 5音乐
    public final static String action_ = CLASS_NAME + "action";             // 服务端配合的动作内容；
    //
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    //是否删除：0 否 1 删除
    private Integer isDelete;
    //创建时间
    private Date createTime;
    //修改时间
    private Date modifyTime;
    //设备id
    private Long deviceId;
    //用户id
    private Long userId;
    //第一次响铃的时间，循环响铃的时间（只取时间）
    private Date time;
    //提醒的时间数一次性提醒的是时间戳（10位）。一天从0分钟开始，最大1440分钟
    private Long times;
    //重复次数：0：响铃一次（time指定的时间） 1：循环 2循环 跳过节假日
    private Integer repeat;
    //当repeat=2时具体的星期 按位取，从低到高 1,2,3,4,5,6,7
    private Integer repeatDay;
    //闹铃标题
    private String title;
    //闹铃提示文案（语音播报）
    private String readText;
    //响铃类型 0：系统内置 1：指定声音（音乐）
    private Integer soundType;
    //响铃地址
    private String sound;
    //响铃名称
    private String soundName;
    //本地直接文本播放提醒的0：本地直接响铃提醒 1 请求服务器后动作
    private Integer alarmType;
    //服务端配合操作的动作：0：无相关动作(文本播放或者音乐) 1：IOT控制 2天气 4U3D动作 5音乐
    private Integer actionType;
    //服务端配合的动作内容；
    private String action;
    /**
     *  
     * @return
     */
    public Long getId() {
        return id;
    }
    /**
     *  
     * @param id
     */
    public void setId(Long id) {
        this.id = id;
    }

    /**
     * 是否删除：0 否 1 删除 
     * @return
     */
    public Integer getIsDelete() {
        return isDelete;
    }
    /**
     * 是否删除：0 否 1 删除 
     * @param isDelete
     */
    public void setIsDelete(Integer isDelete) {
        this.isDelete = isDelete;
    }

    /**
     * 创建时间 
     * @return
     */
    public Date getCreateTime() {
        return createTime;
    }
    /**
     * 创建时间 
     * @param createTime
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    /**
     * 修改时间 
     * @return
     */
    public Date getModifyTime() {
        return modifyTime;
    }
    /**
     * 修改时间 
     * @param modifyTime
     */
    public void setModifyTime(Date modifyTime) {
        this.modifyTime = modifyTime;
    }

    /**
     * 设备id 
     * @return
     */
    public Long getDeviceId() {
        return deviceId;
    }
    /**
     * 设备id 
     * @param deviceId
     */
    public void setDeviceId(Long deviceId) {
        this.deviceId = deviceId;
    }

    /**
     * 用户id 
     * @return
     */
    public Long getUserId() {
        return userId;
    }
    /**
     * 用户id 
     * @param userId
     */
    public void setUserId(Long userId) {
        this.userId = userId;
    }

    /**
     * 第一次响铃的时间，循环响铃的时间（只取时间） 
     * @return
     */
    public Date getTime() {
        return time;
    }
    /**
     * 第一次响铃的时间，循环响铃的时间（只取时间） 
     * @param time
     */
    public void setTime(Date time) {
        this.time = time;
    }

    /**
     * 提醒的时间数一次性提醒的是时间戳（10位）。一天从0分钟开始，最大1440分钟 
     * @return
     */
    public Long getTimes() {
        return times;
    }
    /**
     * 提醒的时间数一次性提醒的是时间戳（10位）。一天从0分钟开始，最大1440分钟 
     * @param times
     */
    public void setTimes(Long times) {
        this.times = times;
    }

    /**
     * 重复次数：0：响铃一次（time指定的时间） 1：循环 2循环 跳过节假日 
     * @return
     */
    public Integer getRepeat() {
        return repeat;
    }
    /**
     * 重复次数：0：响铃一次（time指定的时间） 1：循环 2循环 跳过节假日 
     * @param repeat
     */
    public void setRepeat(Integer repeat) {
        this.repeat = repeat;
    }

    /**
     * 当repeat=2时具体的星期 按位取，从低到高 1,2,3,4,5,6,7 
     * @return
     */
    public Integer getRepeatDay() {
        return repeatDay;
    }
    /**
     * 当repeat=2时具体的星期 按位取，从低到高 1,2,3,4,5,6,7 
     * @param repeatDay
     */
    public void setRepeatDay(Integer repeatDay) {
        this.repeatDay = repeatDay;
    }

    /**
     * 闹铃标题 
     * @return
     */
    public String getTitle() {
        return title;
    }
    /**
     * 闹铃标题 
     * @param title
     */
    public void setTitle(String title) {
        this.title = title;
    }

    /**
     * 闹铃提示文案（语音播报） 
     * @return
     */
    public String getReadText() {
        return readText;
    }
    /**
     * 闹铃提示文案（语音播报） 
     * @param readText
     */
    public void setReadText(String readText) {
        this.readText = readText;
    }

    /**
     * 响铃类型 0：系统内置 1：指定声音（音乐） 
     * @return
     */
    public Integer getSoundType() {
        return soundType;
    }
    /**
     * 响铃类型 0：系统内置 1：指定声音（音乐） 
     * @param soundType
     */
    public void setSoundType(Integer soundType) {
        this.soundType = soundType;
    }

    /**
     * 响铃地址 
     * @return
     */
    public String getSound() {
        return sound;
    }
    /**
     * 响铃地址 
     * @param sound
     */
    public void setSound(String sound) {
        this.sound = sound;
    }

    /**
     * 响铃名称 
     * @return
     */
    public String getSoundName() {
        return soundName;
    }
    /**
     * 响铃名称 
     * @param soundName
     */
    public void setSoundName(String soundName) {
        this.soundName = soundName;
    }

    /**
     * 本地直接文本播放提醒的0：本地直接响铃提醒 1 请求服务器后动作 
     * @return
     */
    public Integer getAlarmType() {
        return alarmType;
    }
    /**
     * 本地直接文本播放提醒的0：本地直接响铃提醒 1 请求服务器后动作 
     * @param alarmType
     */
    public void setAlarmType(Integer alarmType) {
        this.alarmType = alarmType;
    }

    /**
     * 服务端配合操作的动作：0：无相关动作(文本播放或者音乐) 1：IOT控制 2天气 4U3D动作 5音乐 
     * @return
     */
    public Integer getActionType() {
        return actionType;
    }
    /**
     * 服务端配合操作的动作：0：无相关动作(文本播放或者音乐) 1：IOT控制 2天气 4U3D动作 5音乐 
     * @param actionType
     */
    public void setActionType(Integer actionType) {
        this.actionType = actionType;
    }

    /**
     * 服务端配合的动作内容； 
     * @return
     */
    public String getAction() {
        return action;
    }
    /**
     * 服务端配合的动作内容； 
     * @param action
     */
    public void setAction(String action) {
        this.action = action;
    }

    @Override
    public String toString() {
        return "DeviceAlarmClockRecordEntity{" +
                ",id=" + id +
                ",isDelete=" + isDelete +
                ",createTime=" + createTime +
                ",modifyTime=" + modifyTime +
                ",deviceId=" + deviceId +
                ",userId=" + userId +
                ",time=" + time +
                ",times=" + times +
                ",repeat=" + repeat +
                ",repeatDay=" + repeatDay +
                ",title=" + title +
                ",readText=" + readText +
                ",soundType=" + soundType +
                ",sound=" + sound +
                ",soundName=" + soundName +
                ",alarmType=" + alarmType +
                ",actionType=" + actionType +
                ",action=" + action +
                "}";
    }
}