class OrganizationEntity extends GenericTreeSortSupportEntity<String> implements RecordCreationEntity {

    @Override
    @Pattern(regexp = "^[0-9a-zA-Z_\\-]+$", message = "ID只能由数字,字母,下划线和中划线组成", groups = CreateGroup.class)
    @Schema(description = "机构ID(只能由数字,字母,下划线和中划线组成)")
    public String getId() {
        return super.getId();
    }

    @Column
    @Schema(description = "编码")
    private String code;

    @Column
    @Schema(description = "名称")
    private String name;

    @Column
    @Schema(description = "类型")
    private String type;

    @Column
    @Schema(description = "说明")
    private String describe;

    @Column
    @ColumnType(jdbcType = JDBCType.LONGVARCHAR)
    @JsonCodec
    @Schema(description = "其他配置")
    private Map<String, Object> properties;

    @Column(updatable = false)
    @Schema(
        description = "创建者ID(只读)"
        , accessMode = Schema.AccessMode.READ_ONLY
    )
    private String creatorId;

    @Column(updatable = false)
    @DefaultValue(generator = Generators.CURRENT_TIME)
    @Schema(description = "创建时间"
        , accessMode = Schema.AccessMode.READ_ONLY
    )
    private Long createTime;

    private List<OrganizationEntity> children;

    public Dimension toDimension(boolean direct) {<FILL_FUNCTION_BODY>}
}

        Map<String, Object> options = new HashMap<>();
        options.put("direct", direct);
        return SimpleDimension.of(getId(), getName(), OrgDimensionType.org, options);
    
<no_super_class>