jinlin
2024-02-01 2df883fcbed176f83d8d144fd007e7f72fcb54d6
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
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
package com.zt.life.core.model;
 
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.zt.common.entity.CompanyEntity;
import com.zt.common.entity.TreeNode;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
 
import java.util.ArrayList;
import java.util.List;
 
/**
 * CORE_PRODUCT
 *
 * @author zt generator
 * @since 1.0.0 2020-07-15
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("CORE_PRODUCT")
public class ZtProduct extends CompanyEntity implements TreeNode<ZtProduct>, Cloneable {
    private static final long serialVersionUID = 1L;
 
    @ApiModelProperty(value = "记录id")
    private Long dataId;
 
    @ApiModelProperty(value = "树形id")
    @JsonIgnore
    private Long productId;
 
    @ApiModelProperty(value = "树形父id")
    @JsonIgnore
    private Long parentProductId;
 
    @ApiModelProperty(value = "父id集合")
    @JsonIgnore
    private String parentProductIds;
 
    @ApiModelProperty(value = "编码")
    private String code;
 
    @ApiModelProperty(value = "名称")
    private String name;
 
    @ApiModelProperty(value = "级别")
    @TableField(value = "level2")
    private String level;
 
    @ApiModelProperty(value = "级别名称")
    @TableField(exist = false)
    private String levelName;
 
    @ApiModelProperty(value = "排序")
    private Integer sort;
 
    @ApiModelProperty(value = "状态 0 无效 1 有效")
    @JsonIgnore
    private Integer status;
 
    @ApiModelProperty(value = "版本号")
    private Integer version;
 
    @ApiModelProperty(value = "X号")
    private Long shipId;
 
    @ApiModelProperty(value = "X号")
    private Long shipProductId;
 
    @ApiModelProperty(value = "系统编号")
    private Long sysId;
 
    @ApiModelProperty(value = "系统编号")
    private Long sysProductId;
 
    @ApiModelProperty(value = "分系统编号")
    private Long subSysId;
 
    @ApiModelProperty(value = "分系统编号")
    private Long subSysProductId;
 
    @ApiModelProperty(value = "设备编号")
    private Long deviceId;
 
    @ApiModelProperty(value = "设备编号")
    private Long deviceProductId;
 
    @ApiModelProperty(value = "是否有寿命件数据")
    @TableField(exist = false)
    private Integer hasNotData;
 
    @ApiModelProperty(value = "是否叶子节点")
    @TableField(exist = false)
    private Boolean leaf;
 
    @ApiModelProperty(value = "是否叶子节点")
    @TableField(exist = false)
    private Boolean hasChildren;
 
    @ApiModelProperty(value = "子产品")
    @TableField(exist = false)
    public List<ZtProduct> children = new ArrayList<>();
 
    @TableField(exist = false)
    private String modelName;
    @TableField(exist = false)
    private String shipName;
    @TableField(exist = false)
    private String sysName;
    @TableField(exist = false)
    private String subSysName;
    @TableField(exist = false)
    private String deviceName;
 
    @Override
    public ZtProduct clone() throws CloneNotSupportedException {
        ZtProduct product = (ZtProduct) super.clone();
        product.children = new ArrayList<>();
        return product;
    }
 
    @Override
    public Long getPid() {
        return parentProductId;
    }
 
    @Override
    public void setPid(Long pid) {
        this.parentProductId = pid;
    }
 
    @Override
    public Long getId() {
        return productId;
    }
 
    @Override
    public void setId(Long id) {
        this.productId = id;
    }
}