package com.ai.da.mapper.primary.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;

/**
 * Attendance
 *
 * @author easy-generator
 * @since 2022-06-13
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_library")
public class Library implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * ID
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

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

    /**
     * 一级类型
     */
    private String level1Type;

    /**
     * 二级类型
     */
    private String level2Type;

    private String level3Type;

    private String ageGroup;

    /**
     * 元素名
     */
    private String name;

    /**
     * 元素存放地址
     */
    private String url;
    /**
     * md5值
     */
    private String md5;
    /**
     * 图片高度,目前只争对 models类型
     */
    private Integer high;
    /**
     * 图片宽度,目前只争对 models类型
     */
    private Integer width;

    private String segmentedData;

    /**
     * 创建时间
     */
    private Date createDate;

    /**
     * 更新时间
     */
    private Date updateDate;

//    private Integer isCopy;

    public Library() {
    }

    public Library(Long accountId, String level1Type, String level2Type, String level3Type, String url, String md5, Date createDate) {
        this.accountId = accountId;
        this.level1Type = level1Type;
        this.level2Type = level2Type;
        this.level3Type = level3Type;
        this.url = url;
        this.md5 = md5;
        this.createDate = createDate;
    }

    public Library(Long accountId, String level1Type, String level2Type, String level3Type, String ageGroup, String name, String url, String md5, Date createDate) {
        this.accountId = accountId;
        this.level1Type = level1Type;
        this.level2Type = level2Type;
        this.level3Type = level3Type;
        this.ageGroup = ageGroup;
        this.name = name;
        this.url = url;
        this.md5 = md5;
        this.createDate = createDate;
    }
}
