package com.microservices.zone.specialProject.domain.vo;

import com.microservices.common.core.utils.bean.BeanUtils;
import com.microservices.zone.specialProject.domain.ZoneSpecialProject;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;

/**
 * @author OTTO
 */
@Data
@ApiModel("专项项目输入对象")
public class ZoneSpecialProjectInputVo {
    @ApiModelProperty(value = "所属专区", required = true)
    @NotNull
    private Long zoneId;
    @ApiModelProperty(value = "专项项目名称", required = true)
    @NotNull
    @Size(max = 300, message = "专项项目名称长度不能超过300个字符")
    private String name;
    @ApiModelProperty(value = "专项项目类型Id", required = true)
    @NotNull
    private Long typeId;
    @ApiModelProperty(value = "专项项目负责人", required = true)
    @NotNull
    @Size(max = 100, message = "专项项目负责人长度不能超过100个字符")
    private String projectLeader;
    @ApiModelProperty(value = "专项项目承担单位")
    @Size(max = 300, message = "专项项目承担单位长度不能超过300个字符")
    private String responsibleCompany;
    @ApiModelProperty(value = "专项项目简介文件标识")
    private String introductionImageIdentifier;
    @ApiModelProperty(value = "专项项目奖项")
    @Size(max = 300, message = "专项项目奖项长度不能超过300个字符")
    private String awards;


    public ZoneSpecialProject toZoneSpecialProjectSearchVo() {
        ZoneSpecialProject target = new ZoneSpecialProject();
        BeanUtils.copyProperties(this, target);
        return target;
    }
}