zhangherong
2025-05-12 7e254edced5f0361882471ebffbad572c181235d
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysCategory.java
@@ -1,6 +1,7 @@
package org.jeecg.modules.system.entity;
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 com.fasterxml.jackson.annotation.JsonFormat;
@@ -9,58 +10,93 @@
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
/**
 * @Description: 分类字典
 * @Author: jeecg-boot
 * @Date:   2019-05-29
 * @Date: 2019-05-29
 * @Version: V1.0
 */
@Data
@TableName("sys_category")
public class SysCategory implements Serializable,Comparable<SysCategory>{
public class SysCategory implements Serializable {
    private static final long serialVersionUID = 1L;
   /**主键*/
   @TableId(type = IdType.ASSIGN_ID)
   private java.lang.String id;
   /**父级节点*/
   private java.lang.String pid;
   /**类型名称*/
   @Excel(name = "类型名称", width = 15)
   private java.lang.String name;
   /**类型编码*/
   @Excel(name = "类型编码", width = 15)
   private java.lang.String code;
   /**创建人*/
   private java.lang.String createBy;
   /**创建日期*/
   @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
   private java.util.Date createTime;
   /**更新人*/
   private java.lang.String updateBy;
   /**更新日期*/
   @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
   private java.util.Date updateTime;
   /**所属部门*/
   private java.lang.String sysOrgCode;
   /**是否有子节点*/
   @Excel(name = "是否有子节点(1:有)", width = 15)
   private java.lang.String hasChild;
   @Override
   public int compareTo(SysCategory o) {
      //比较条件我们定的是按照code的长度升序
      // <0:当前对象比传入对象小。
      // =0:当前对象等于传入对象。
      // >0:当前对象比传入对象大。
      int    s = this.code.length() - o.code.length();
      return s;
   }
   @Override
   public String toString() {
      return "SysCategory [code=" + code + ", name=" + name + "]";
   }
    /**
     * 主键
     */
    @TableId(type = IdType.ASSIGN_ID)
    private String id;
    /**
     * 父级节点
     */
    private String pid;
    /**
     * 类型编码
     */
    @Excel(name = "分类编码", width = 15, orderNum = "1")
    private String code;
    /**
     * 类型名称
     */
    @Excel(name = "分类名称", width = 15, orderNum = "2")
    private String name;
    /**
     * 创建人
     */
    private String createBy;
    /**
     * 创建日期
     */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private java.util.Date createTime;
    /**
     * 更新人
     */
    private String updateBy;
    /**
     * 更新日期
     */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private java.util.Date updateTime;
    /**
     * 所属部门
     */
    private String sysOrgCode;
    /**
     * 是否有子节点
     */
    private String hasChild;
    /**
     * 根节点编码
     */
    @Excel(name = "根节点编码", width = 15, orderNum = "4")
    private String rootCode;
    /**
     * 所有父节点ID
     */
    private String parentIds;
    @TableField(exist = false)
    @Excel(name = "父节点编码", width = 15, orderNum = "3")
    private String parentCode;
    @TableField(exist = false)
    private List<SysCategory> children;
    @Override
    public String toString() {
        return "SysCategory [code=" + code + ", name=" + name + "]";
    }
    public void addChild(SysCategory node) {
        if (children == null) {
            children = new ArrayList<>();
        }
        children.add(node);
    }
}