package com.rj.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * SOP知识库管理（表 sop_management_my）
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("sop_management_my")
@Schema(description = "SOP知识库管理(sop_management_my)")
public class SopManagementMy implements Serializable {

    private static final long serialVersionUID = 1L;

    @Schema(description = "主键ID，UUID")
    @TableId("id")
    private String id;

    @Schema(description = "租户id")
    @TableField("tenant_id")
    private String tenantId;

    @Schema(description = "SOP标题")
    @TableField("title")
    private String title;

    @Schema(description = "SOP分类")
    @TableField("category")
    private String category;

    @Schema(description = "应用行业")
    @TableField("industry")
    private String industry;

    @Schema(description = "SOP内容")
    @TableField("content")
    private String content;

    @Schema(description = "创建人")
    @TableField("creator")
    private String creator;

    @Schema(description = "创建时间")
    @TableField("create_time")
    private LocalDateTime createTime;

    @Schema(description = "更新时间")
    @TableField("update_time")
    private LocalDateTime updateTime;

    @Schema(description = "状态：已发布、草稿、已下架")
    @TableField("status")
    private String status;

    @Schema(description = "浏览次数")
    @TableField("view_count")
    private Integer viewCount;

    @Schema(description = "点赞次数")
    @TableField("like_count")
    private Integer likeCount;

    @Schema(description = "标签，多个用逗号分隔")
    @TableField("tags")
    private String tags;

    @Schema(description = "附件URL")
    @TableField("attachment_url")
    private String attachmentUrl;

    @Schema(description = "排序权重")
    @TableField("sort_order")
    private Integer sortOrder;

    @Schema(description = "是否置顶：0否，1是")
    @TableField("is_top")
    private Boolean isTop;

    @Schema(description = "备注")
    @TableField("remark")
    private String remark;
}
