package com.ruoyi.system.domain;

import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 【请填写功能名称】对象 t_electronic_fence
 *
 * @author ruoyi
 * @date 2023-09-14
 */
public class TElectronicFence extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    private Long id;

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

    /**
     * 开始时间
     */
    @JsonFormat(pattern = "HH:mm")
    @Excel(name = "开始时间", width = 30, dateFormat = "HH:mm")
    private Date startTime;

    /**
     * 结束时间
     */
    @JsonFormat(pattern = "HH:mm")
    @Excel(name = "结束时间", width = 30, dateFormat = "HH:mm")
    private Date endTime;

    /**
     * 围栏状态：（0：关闭 1：开启）
     */
    @Excel(name = "围栏状态：", readConverterExp = "0=：关闭,1=：开启")
    private Integer eState;

    /**
     * 围栏开启状态（0：默认 1：禁止离开 2：禁止进入）
     */
    @Excel(name = "围栏开启状态", readConverterExp = "0=：默认,1=：禁止离开,2=：禁止进入")
    private Integer eType;

    /**
     * 描述
     */
    @Excel(name = "描述")
    private String eDesc;

    /**
     * 高德围栏服务的唯一ID
     */
    @Excel(name = "高德围栏服务的唯一ID")
    private String gfid;

    /**
     * 0：默认 1：删除
     */
    @Excel(name = "0：默认 1：删除")
    private Integer delState;

    /**
     * 用户id
     */
    @Excel(name = "用户id")
    private Long userId;

    /**
     * 设备表id
     */
    @Excel(name = "设备表id")
    private Long deviceId;

    /**
     * 高德电子围栏服务表id
     */
    @Excel(name = "高德电子围栏服务表id")
    private Long serviceId;

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

    public Long getId() {
        return id;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    public Date getStartTime() {
        return startTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void seteState(Integer eState) {
        this.eState = eState;
    }

    public Integer geteState() {
        return eState;
    }

    public void seteType(Integer eType) {
        this.eType = eType;
    }

    public Integer geteType() {
        return eType;
    }

    public String geteDesc() {
        return eDesc;
    }

    public void seteDesc(String eDesc) {
        this.eDesc = eDesc;
    }

    public void setGfid(String gfid) {
        this.gfid = gfid;
    }

    public String getGfid() {
        return gfid;
    }

    public void setDelState(Integer delState) {
        this.delState = delState;
    }

    public Integer getDelState() {
        return delState;
    }

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

    public Long getUserId() {
        return userId;
    }

    public void setDeviceId(Long deviceId) {
        this.deviceId = deviceId;
    }

    public Long getDeviceId() {
        return deviceId;
    }

    public void setServiceId(Long serviceId) {
        this.serviceId = serviceId;
    }

    public Long getServiceId() {
        return serviceId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("name", getName())
                .append("startTime", getStartTime())
                .append("endTime", getEndTime())
                .append("updateTime", getUpdateTime())
                .append("createTime", getCreateTime())
                .append("eState", geteState())
                .append("eType", geteType())
                .append("desc", geteDesc())
                .append("gfid", getGfid())
                .append("delState", getDelState())
                .append("userId", getUserId())
                .append("deviceId", getDeviceId())
                .append("serviceId", getServiceId())
                .toString();
    }
}
