package com.cmvr.inspection.domain.vo;

import com.cmvr.common.annotation.Excel;
import com.cmvr.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

/**
 * 巡检任务视图对象（包含关联信息）
 * 
 * @author cmvr-iot
 * @since 2026-05-29
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
@ApiModel("巡检任务视图对象")
public class InspectionTaskVo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    @ApiModelProperty("id")
    private String id;

    /** 任务编码 */
    @Excel(name = "任务编码")
    @ApiModelProperty("任务编码")
    private String taskCode;

    /** 任务名称 */
    @Excel(name = "任务名称")
    @ApiModelProperty("任务名称")
    private String taskName;

    /** 任务类型 */
    @Excel(name = "任务类型")
    @ApiModelProperty("任务类型(1巡检任务 2讲解任务)")
    private String taskType;

    /** 创建人昵称 */
    @Excel(name = "创建人昵称")
    @ApiModelProperty("创建人昵称")
    private String createByName;

    /** 修改人昵称  */
    @Excel(name = "修改人昵称")
    @ApiModelProperty("修改人昵称")
    private String updateByName;

    /** 任务id */
    @Excel(name = "任务id")
    @ApiModelProperty("任务id")
    private String taskConfigId;

    @Excel(name = "地图id")
    @ApiModelProperty("地图id")
    private String mapId;

    @Excel(name = "地图名称")
    @ApiModelProperty("地图名称")
    private String mapName;

    @Excel(name = "点位数量")
    @ApiModelProperty("点位数量")
    private Integer waypointCount;

}
