package com.cico.nest.lcdp.boot.core.qxsd.adapter.web.vo.tunnelEquipment;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import jakarta.validation.constraints.*;

@Schema(description = "管理后台 - 隧道设备新增/修改 Request VO")
@Data
public class TunnelEquipmentSaveReqVO {

    @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "30400")
    private String id;

    @Schema(description = "管理中心", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "管理中心不能为空")
    private String managementCenter;

    @Schema(description = "关联映射小类", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "关联映射小类不能为空")
    private String associateMappingSubclass;

    @Schema(description = "隧道所", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "隧道所不能为空")
    private String tunnelDept;

    @Schema(description = "所属设施", requiredMode = Schema.RequiredMode.REQUIRED, example = "27592")
    @NotEmpty(message = "所属设施不能为空")
    private String belongFacilityId;

    @Schema(description = "0上行洞1下行洞", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "0上行洞1下行洞不能为空")
    private Integer uplinkDownlinkRoad;

    @Schema(description = "设备桩号", requiredMode = Schema.RequiredMode.REQUIRED)
    //@NotEmpty(message = "设备桩号不能为空")
    private Integer equipmentStation;

    @Schema(description = "设备名称", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "设备名称不能为空")
    private String equipmentName;

    @Schema(description = "ip地址", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "ip地址不能为空")
    private String ipAddress;

    @Schema(description = "设备uuid", requiredMode = Schema.RequiredMode.REQUIRED, example = "19225")
    @NotEmpty(message = "设备uuid不能为空")
    private String equipmentUuid;

    @Schema(description = "创建人")
    private String createBy;

    @Schema(description = "更新人")
    private String updateBy;

}
