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, 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 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; } }