package com.dy.pipIrrTerminal.card.dto; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; import lombok.Data; /** * @author ZhuBaoMin * @date 2025-01-20 * @Description 创建管理卡DTO */ @Data @Schema(name = "创建管理卡DTO") public class CreateManagementCardDto { /** * 通讯协议 */ @NotBlank(message = "通讯协议不能为空") @Schema(description = "通讯协议", example = "RS485") private String protocol; /** * 卡片地址 */ @NotBlank(message = "卡片地址不能为空") @Schema(description = "卡片地址", example = "001") private String cardAddr; /** * 识别码 */ @NotBlank(message = "识别码不能为空") @Schema(description = "识别码", example = "A0B1C289") private String securityCode; /** * 卡片类型 * 2-设置区域表号卡,3-取数卡,4-检查卡,5-测试卡,6-清零卡,7-IP设置卡,8-域名设置卡,9-GPS卡,10-时间配置卡 */ @NotNull(message = "卡片类型不能为空") @Schema(description = "卡片类型", example = "2", allowableValues = { "2", "3", "4", "5", "6", "7", "8", "9", "10" }) private Byte cardType; /** * 5级行政区划编码 */ @Schema(description = "5级行政区划编码", example = "110101") private String districtCode; /** * 项目编码 */ @Schema(description = "项目编码", example = "1001") private Integer projectNo; /** * IP地址 */ @Schema(description = "IP地址", example = "192.168.1.100") private String ip; /** * 域名 */ @Schema(description = "域名", example = "example.com") private String domain; /** * 开关阀时间 */ @Schema(description = "开关阀时间(秒)", example = "30") private Integer openClostTime; /** * 备注信息 */ @Schema(description = "备注信息", example = "管理卡备注") private String remarks; }