package com.ruoyi.cs.domain.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.util.List;

/**
 * 科研成果信息对象 CsAchievementInfoAddDTO
 *
 * @author ruoyi
 * @date 2024-05-08
 */

@Getter
@Setter
@ToString
public class CsAchievementInfoAddDTO implements Serializable
{
    private static final long serialVersionUID = 1L;

    public interface addAchievementInfo{}


    /** 相关资源ID */
    private String resId;

    /** 应用领域 */
    @NotBlank(message = "请输入应用领域",groups = {addAchievementInfo.class})
    private String applicationArea;

    /** 使用超算平台软件 */
    @NotBlank(message = "请输入使用超算平台软件",groups = {addAchievementInfo.class})
    private String platformSoftware;

    /** 自主安装软件名 */
    @NotBlank(message = "请输入自主安装软件名",groups = {addAchievementInfo.class})
    private String softwareName;

    /** 是否同意宣传：0-否，1-是 */
    @NotBlank(message = "请输入是否同意宣传",groups = {addAchievementInfo.class})
    private String isPublicize;

    /** 论文成果信息列表 */
    private List<CsAchievementPaperDetailsDTO> paperAchievementList;

    /** 专利成果信息列表 */
    private List<CsAchievementPatentDetailsDTO> patentAchievementList;

    /** 奖项成果信息列表 */
    private List<CsAchievementPrizeDetailsDTO> prizeAchievementList;

    /** 其他成果信息列表 */
    private List<CsAchievementOtherDetailsDTO> otherAchievementList;

    /** 预约成果信息列表 */
    private List<CsAchievementReservationDetailsDTO> reservationAchievementList;

}
