zxl
2026-03-25 8819762ad58f77e606431fca4072c19e542e6055
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
package com.tievd.jyz.entity;
 
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.tievd.cube.codegen.annotations.QueryField;
import com.tievd.cube.codegen.annotations.QueryFields;
import com.tievd.cube.commons.annotations.Dict;
import com.tievd.cube.commons.easyexcel.annotations.Excel;
import com.tievd.jyz.constants.SystemConstant;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
 
import java.io.Serializable;
import java.util.Date;
 
/**
 * <p>
 * 网关设备表
 * </p>
 *
 * @author
 * @since 2023-02-24
 */
@Data
@Accessors(chain = true)
@TableName("t_device")
@Schema(name = "Device", description = "节点表")
@QueryFields({@QueryField(value = "name", label = "网关名称"),
        @QueryField(value = "status", label = "状态")})
public class Device extends Model<Device> {
 
    private static final long serialVersionUID = 1L;
 
    @Schema(description = "主键")
    @TableId("id")
    private Long id;
 
    @Schema(description = "网关名称")
    @TableField("name")
    @Excel("网关名称")
    private String name;
 
    @Schema(description = "设备厂家")
    @TableField("factory")
    @Dict(SystemConstant.DICT_FACTORY)
    private String factory;
 
    @Schema(description = "网关类型 1.aibox")
    @TableField("device_type")
    @Dict(SystemConstant.DICT_GATEWAY_DEVICE_TYPE)
    @Excel("网关类型")
    private String deviceType;
 
    @Schema(description = "设备状态 1:在线 2:离线")
    @TableField("status")
    @Dict(SystemConstant.DICT_ONLINE_STATUS)
    private Byte status;
 
    @Schema(description = "SN号")
    @TableField("sn")
    @Excel("序列号")
    private String sn;
 
    @Schema(description = "所属机构")
    @TableField(value = "org_code", condition = SqlCondition.LIKE_RIGHT)
    @Excel("所属机构")
    @Dict(table = "sys_depart", text = "depart_name", value = "org_code")
    private String orgCode;
 
    @Schema(description = "节点ip")
    @TableField("device_ip")
    @Excel("IP地址")
    private String deviceIp;
 
    @Schema(description = "心跳时间")
    @TableField("heart_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date heartTime;
 
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(value = "create_time")
    private Date createTime;
 
    @TableField("update_time")
    private Date updateTime;
 
    @TableField("device_version")
    private String deviceVersion;
 
    @TableField("port")
    private Integer port;
 
    @Override
    public Serializable pkVal() {
        return this.id;
    }
 
//    public Device() {
//        this.status = SystemConstant.DEVICE_OFFLINE;
//    }
}