package com.zhongshu.card.client.model.devices;

import com.github.microservice.models.type.DeviceSpecType;
import com.github.microservice.models.type.DeviceType;
import com.zhongshu.card.client.model.base.SuperSearch;
import com.zhongshu.card.client.type.OnLineState;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.util.ArrayList;
import java.util.List;

/**
 * @author TRX
 * @date 2024/6/14
 */
@Data
public class DeviceInfoSearch extends SuperSearch {

    @Schema(description = "关键字搜索")
    private String keyWord;

    @Schema(description = "设备ID")
    private String deviceId;

    @Schema(description = "设备deviceId集合")
    private List<String> deviceIds = new ArrayList<>();

    @Schema(description = "设备名称")
    private String deviceName;

    @Schema(description = "关联的项目code")
    private String projectInfoCode;

    @Schema(description = "关联的项目Name")
    private String projectInfoName;

    @Schema(description = "设备类型，如 消费机 门禁机")
    private DeviceType deviceType;

    @Schema(description = "设备型号")
    private DeviceSpecType deviceModel;

    @Schema(description = "网关号")
    private String gateWayId;

    @Schema(description = "所属区域（精准匹配）")
    private String areaId;

    @Schema(description = "包含所属区域下所有的设备")
    private String containAreaId;

    @Schema(description = "是否在线")
    private OnLineState onLineState;

    @Schema(description = "设备IP地址")
    private String ip;

    @Schema(description = "是否查询所有的商户")
    private Boolean isAllBusinessMain = Boolean.TRUE;

    @Schema(description = "商户oid")
    private String shopOid;

    @Schema(description = "商户oid集合")
    private List<String> shopOids = new ArrayList<>();
}
