package com.multictrl.modules.business.dto.multi;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.multictrl.common.validator.group.AddGroup;
import com.multictrl.common.validator.group.UpdateGroup;
import io.swagger.v3.oas.annotations.media.Schema;

import java.util.List;

import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

/**
 * @author 张闯
 * @since 2026-05-28
 */
@Data
@Schema(name = "蛙跳组绑定设备列表")
public class MultiGroupDeviceDTO {

    /**
     * 蛙跳组id
     */
    @NotNull(message = "蛙跳组标识不能为空", groups = {AddGroup.class, UpdateGroup.class})
    @JsonProperty(required = true)
    @Schema(description = "蛙跳组id")
    private Long groupId;
    /**
     * 网关sn
     */
    @NotEmpty(message = "设备网关sn不能为空", groups = {AddGroup.class, UpdateGroup.class})
    @JsonProperty(required = true)
    @Schema(description = "设备网关sn列表")
    private List<String> gatewaySns;

}
