gunshi-project-ss/src/main/java/com/gunshi/project/hsz/model/CctvBMenu.java

70 lines
1.9 KiB
Java

package com.gunshi.project.hsz.model;
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.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* 描述: 视频点目录
* author: xusan
* date: 2024-07-08 17:34:26
*/
@Schema(description="视频点目录")
@Data
@TableName("public.cctv_b_menu")
public class CctvBMenu implements Serializable {
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableId(value="id", type= IdType.AUTO)
@Schema(description="id")
@NotNull(message = "id不能为空")
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/**
* parent_id
*/
@TableField(value="parent_id")
@Schema(description="parent_id")
@JsonSerialize(using = ToStringSerializer.class)
private Long parentId;
/**
* name
*/
@TableField(value="name")
@Schema(description="name")
@Size(max = 255,message = "name最大长度要小于 255")
@NotBlank(message = "name不能为空")
private String name;
/**
* 排序
*/
@TableField(value="order_index")
@Schema(description="排序")
private Integer orderIndex;
@TableField(exist = false)
@Schema(description="子集")
private List<CctvBMenu> children;
}