package com.ycwl.basic.integration.device.dto.device;

import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;
import java.util.Map;

/**
 * 根据配置筛选设备请求
 */
@Data
@NoArgsConstructor
public class FilterDevicesByConfigsRequest {
    /**
     * 页码，默认1
     */
    private Integer page = 1;
    
    /**
     * 每页数量，默认10
     */
    private Integer pageSize = 10;
    
    /**
     * 配置筛选条件列表，至少包含一个条件
     */
    private List<ConfigFilter> configFilters;
    
    /**
     * 多个条件间的逻辑关系，默认"AND"
     * 支持: "AND", "OR"
     */
    private String filterLogic = "AND";
    
    /**
     * 设备基本信息筛选条件
     * 可包含: name, no, type, isActive, scenicId
     */
    private Map<String, Object> deviceFilters;
}