package com.bs.ct.domain;

import com.bs.common.annotation.Excel;
import com.bs.common.core.domain.BaseEntity;
import com.bs.common.core.domain.entity.SysDept;
import com.bs.common.core.domain.entity.SysUser;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
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 io.swagger.annotations.ApiModelProperty;

import java.util.Date;

/**
 * 图库目录共享用户对象 ct_gallery_share_user
 *
 * @author bs
 * @date 2025-06-14
 */
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("ct_gallery_share_user")
@Data
public class CtGalleryShareUser extends BaseEntity{
    private static final long serialVersionUID = 1L;

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

    /** 共享id */

    @Excel(name = "共享id")
    @ApiModelProperty(value = "共享id")
    private Long shareId;

    @Excel(name = "用户类型")
    @ApiModelProperty(value = "用户类型")
    private String userType;

    /** 共享用户 */

    @Excel(name = "共享用户")
    @ApiModelProperty(value = "共享用户")
    private Long userId;


    /** 开始时间 */

    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开始时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty(value = "开始时间")
    private Date beginDate;

    /** 结束时间 */

    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty(value = "结束时间")
    private Date endDate;

    @TableField(exist = false)
    private SysDept dept;

    @TableField(exist = false)
    private SysUser user;
}
