package com.agileboot.codegen.entity;

import com.agileboot.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

/**
 * 用户自定义模板实体类
 * 
 * @author system
 * @date 2025-09-26
 */
@Data
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
@TableName("user_template")
public class UserTemplate extends BaseEntity {

    /**
     * 主键ID
     */
    @TableId(value = "id")
    private Long id;

    /**
     * 用户ID
     */
    private Long userId;

    /**
     * 模板名称
     */
    private String templateName;

    /**
     * 模板分组
     */
    private String templateGroup;

    /**
     * 模板内容(FreeMarker模板)
     */
    private String templateContent;

    /**
     * 模板描述
     */
    private String description;

    /**
     * 是否公开(0-私有 1-公开)
     */
    private Integer isPublic;

    /**
     * 模板版本
     */
    private String version;

    /**
     * 使用次数统计
     */
    private Integer useCount;

    /**
     * 状态(0-草稿 1-发布 2-禁用)
     */
    private Integer status;

    /**
     * 是否启用显示(0-隐藏 1-显示)
     */
    private Integer isEnabled;

    /**
     * 模板内容是否公开(0-不公开 1-公开)
     */
    private Integer isContentPublic;
}
