package com.estate.expert.admin.domain.plan; import com.estate.expert.admin.domain.common.EntityRef; import com.estate.expert.admin.domain.common.IDtoBase; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Builder; import lombok.Value; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; import java.io.Serializable; import java.time.LocalDateTime; /** * DTO for {@link Plan} */ @ApiModel("计划") @Value @Builder public class PlanDto implements Serializable, IDtoBase { @ApiModelProperty("计划ID") Integer id; @ApiModelProperty("计划名称") @NotBlank String name; @ApiModelProperty("计划类型") @NotNull PlanType type; @ApiModelProperty("委托方") @NotNull EntityRef client; @ApiModelProperty("项目状态") PlanState state; @ApiModelProperty("综合模型") @NotNull(message = "综合模型不能为空") EntityRef systemModel; @ApiModelProperty("综合模型-模糊数学专家") @NotNull(message = "综合模型-模糊数学专家不能为空") EntityRef systemFuzzyExpert; @ApiModelProperty("综合模型-打分表专家") @NotNull(message = "综合模型-打分表专家不能为空") EntityRef systemScoreExpert; @ApiModelProperty("设备模型") @NotNull(message = "设备模型不能为空") EntityRef deviceModel; @ApiModelProperty("设备模型-模糊数学专家") @NotNull(message = "设备模型-模糊数学专家不能为空") EntityRef deviceFuzzyExpert; @ApiModelProperty("设备模型-打分表专家") @NotNull(message = "设备模型-打分表专家不能为空") EntityRef deviceScoreExpert; @ApiModelProperty("计划完成时间") LocalDateTime completedTime; @ApiModelProperty("创建时间") LocalDateTime createTime; @ApiModelProperty("更新时间") LocalDateTime updateTime; @ApiModelProperty("创建人") EntityRef creator; }