package org.dromara.ygpassport.domain.vo;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import org.dromara.ygpassport.domain.Research;

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

/**
 * 科研视图对象 ep_research
 *
 */
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = Research.class)
public class ResearchVo implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @ExcelProperty(value = "序号")
    private Long id;

    /**
     * 学生学号
     */
    @ExcelProperty(value = "学生学号")
    private String stuNo;

    /**
     * 学期
     */
    @ExcelProperty(value = "学期", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "semester")
    private Long semester;

    /**
     * 科研名称
     */
    @ExcelProperty(value = "科研名称")
    private String researchName;

    /**
     * 科研名称编号
     */
    @ExcelProperty(value = "科研名称编号")
    private String researchNo;

    /**
     * 是否为第一/第二作者
     */
    @ExcelProperty(value = "是否为第一/第二作者", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "is_onetwo")
    private Integer isOnetow;

    /**
     * 出版日期
     */
    @ExcelProperty(value = "出版日期")
    private Date publishDate;

    /**
     * 路径
     */
    @ExcelIgnore
    private String researchFilePath;


}
