package com.estate.expert.admin.domain.exam.task.check; import com.estate.expert.admin.domain.common.EntityRef; import com.estate.expert.admin.domain.common.IDtoBase; import com.estate.expert.admin.domain.project.detail.AddressInfo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Builder; import lombok.Getter; import lombok.Setter; import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotNull; import java.io.Serializable; import java.time.LocalDate; import java.time.LocalDateTime; import java.util.List; import java.util.Set; /** * DTO for {@link CheckTask} */ @ApiModel("检查任务") @Builder @Getter @Setter public class CheckTaskDto implements Serializable, IDtoBase { @ApiModelProperty("ID") Integer id; @ApiModelProperty("计划ID") @NotNull(message = "计划ID不能为空") EntityRef plan; @ApiModelProperty("项目") @NotNull(message = "项目不能为空") EntityRef project; @ApiModelProperty("委托方") EntityRef client; @ApiModelProperty("检查时间") LocalDate date; @ApiModelProperty("检查地点") String assemblePlace; @ApiModelProperty("计划ID") CheckTaskState state; @ApiModelProperty("创建人") EntityRef creator; @ApiModelProperty("创建时间") LocalDateTime createTime; @ApiModelProperty("更新时间") LocalDateTime updateTime; @ApiModelProperty("检查小组-组长") @NotEmpty(message = "检查小组-组长不能为空") Set groupLeaders; @ApiModelProperty("检查小组-组员") Set groupMembers; @ApiModelProperty(value = "司机,需要和车辆一一对应", notes = "方便后面联表查询司机的任务") List drivers; @ApiModelProperty(value = "车辆,需要和司机一一对应", notes = "方便后面联表查询用车情况") List cars; @ApiModelProperty("地点信息") String location; @ApiModelProperty("经纬度") Double[] gps; @ApiModelProperty("项目ID(用于更新项目地址)") Integer projectId; @ApiModelProperty("项目地址信息(用于更新项目地址)") AddressInfo addressInfo; }