package com.xinelu.manage.domain.materialsinfo;

import com.xinelu.common.annotation.Excel;
import com.xinelu.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

/**
 * 素材信息对象 materials_info
 *
 * @author haown
 * @date 2024-02-26
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "素材信息对象", description = "materials_info")
public class MaterialsInfo extends BaseEntity {

	private static final long serialVersionUID=1L;

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

    /** 素材名称 */
    @ApiModelProperty(value = "素材名称")
    @Excel(name = "素材名称")
    private String materialsName;

    /** 素材类型，图文：IMAGE_TEXT，视频：VIDEO */
    @ApiModelProperty(value = "素材类型，图文：IMAGE_TEXT，视频：VIDEO")
    @Excel(name = "素材类型，图文：IMAGE_TEXT，视频：VIDEO")
    private String materialsType;

    /** 素材选择，AI生成：AI_GENERATION，手动上传：MANUAL_UPLOAD */
    @ApiModelProperty(value = "素材选择，AI生成：AI_GENERATION，手动上传：MANUAL_UPLOAD")
    @Excel(name = "素材选择，AI生成：AI_GENERATION，手动上传：MANUAL_UPLOAD")
    private String materialsOption;

    /** 素材图片/者视频文件存放路径 */
    @ApiModelProperty(value = "素材图片/者视频文件存放路径")
    @Excel(name = "素材图片/者视频文件存放路径")
    private String materialsFilePath;

    /** 视频封面类型，视频首帧：VIDEO_FIRST_FRAME，手动上传：MANUAL_UPLOAD */
    @ApiModelProperty(value = "视频封面类型，视频首帧：VIDEO_FIRST_FRAME，手动上传：MANUAL_UPLOAD")
    @Excel(name = "视频封面类型，视频首帧：VIDEO_FIRST_FRAME，手动上传：MANUAL_UPLOAD")
    private String videoCoverType;

    /** 视频封面存放路径 */
    @ApiModelProperty(value = "视频封面存放路径")
    @Excel(name = "视频封面存放路径")
    private String videoCoverFilePath;

    /** 素材摘要 */
    @ApiModelProperty(value = "素材摘要")
    @Excel(name = "素材摘要")
    private String materialsAbstract;

    /** 适用症状 */
    @ApiModelProperty(value = "适用症状")
    @Excel(name = "适用症状")
    private String indications;

    /** 适用疾病 */
    @ApiModelProperty(value = "适用疾病")
    @Excel(name = "适用疾病")
    private String applicableDiseases;

    /** 药物名称 */
    @ApiModelProperty(value = "药物名称")
    @Excel(name = "药物名称")
    private String drugName;

    /** 手术名称 */
    @ApiModelProperty(value = "手术名称")
    @Excel(name = "手术名称")
    private String surgicalName;

    /** 检查项目 */
    @ApiModelProperty(value = "检查项目")
    @Excel(name = "检查项目")
    private String checkItems;

    /** 检验项目 */
    @ApiModelProperty(value = "检验项目")
    @Excel(name = "检验项目")
    private String inspectionItems;

    /** 所属人群表id（如果使用人群为多个，需要扩展表） */
    @ApiModelProperty(value = "所属人群表id")
    @Excel(name = "所属人群表id", readConverterExp = "如=果使用人群为多个，需要扩展表")
    private Long crowdId;

    /** 人群名称 */
    @ApiModelProperty(value = "人群名称")
    @Excel(name = "人群名称")
    private String crowName;

    /** 素材状态，全部：ALL，已上架：LISTED，未上架：NOT_LISTED */
    @ApiModelProperty(value = "素材状态，全部：ALL，已上架：LISTED，未上架：NOT_LISTED")
    @Excel(name = "素材状态，已上架：LISTED，未上架：NOT_LISTED")
    private String materialsStatus;

    /** 素材备注 */
    @ApiModelProperty(value = "素材备注")
    @Excel(name = "素材备注")
    private String materialsRemark;

    /** 素材排序，值越小排序越靠前 */
    @ApiModelProperty(value = "素材排序，值越小排序越靠前")
    @Excel(name = "素材排序，值越小排序越靠前")
    private Integer materialsSort;

	/** 删除标识，0：未删除，1：已删除 */
	private Integer delFlag;

}
