package com.zksy.api.domain;

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 java.io.Serializable;
import java.time.LocalDateTime;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * 预警阈值
 * @TableName warning_threshold
 */
@TableName(value ="warning_threshold")
@Data
public class WarningThreshold implements Serializable {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.ASSIGN_UUID)
    @ApiModelProperty(value = "主键")
    private String id;

    /**
     * 设备编码，支持多个设备编号，用逗号分隔
     */
    @TableField(value = "device_code")
    @ApiModelProperty(value = "设备编码，支持多个设备编号，用逗号分隔")
    private String deviceCode;

    /**
     * 预警类型
     */
    @TableField(value = "warning_type")
    @ApiModelProperty(value = "预警类型")
    private String warningType;

    /**
     * 预警编码
     */
    @TableField(value = "warning_code")
    @ApiModelProperty(value = "预警编码")
    private String warningCode;

    /**
     * 预警最小值
     */
    @TableField(value = "min_value")
    @ApiModelProperty(value = "预警最小值，小于等于该值视为报警")
    private Double minValue;

    /**
     * 预警最大值
     */
    @TableField(value = "max_value")
    @ApiModelProperty(value = "预警最大值，大于等于该值视为报警")
    private Double maxValue;

    /**
     * 分时阈值生效开始时间（HH:mm），为空表示全天生效
     */
    @TableField(value = "period_start")
    @ApiModelProperty(value = "分时阈值生效开始时间（HH:mm），为空表示全天生效")
    private String periodStart;

    /**
     * 分时阈值生效结束时间（HH:mm），为空表示全天生效
     */
    @TableField(value = "period_end")
    @ApiModelProperty(value = "分时阈值生效结束时间（HH:mm），为空表示全天生效")
    private String periodEnd;

    /**
     * 备注
     */
    @TableField(value = "remark")
    @ApiModelProperty(value = "备注")
    private String remark;

    /**
     * 创建时间
     */
    @TableField(value = "create_time")
    @ApiModelProperty(value = "创建时间")
    private LocalDateTime createTime;

    /**
     * 修改时间
     */
    @TableField(value = "update_time")
    @ApiModelProperty(value = "修改时间")
    private LocalDateTime updateTime;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}
