package org.wfc.system.service;

import org.wfc.common.core.web.page.TableDataInfo;
import org.wfc.omada.api.device.model.AdoptDeviceRequest;
import org.wfc.omada.api.device.model.ApGeneralConfig;
import org.wfc.omada.api.device.model.DeviceListAddBySnOpenApiVo;
import org.wfc.system.domain.SysDevice;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * <p>
 * 客户平台-设备表 服务类
 * </p>
 *
 * @author sys
 * @since 2025-01-07
 */
public interface ISysDeviceService extends IService<SysDevice> {

    boolean deviceJob();

    boolean settingJob();

    String testJob();

    boolean forgetDevice(String siteId, String deviceMac);

    boolean addDeviceBySn(String siteId, DeviceListAddBySnOpenApiVo deviceListAddBySnOpenApiVo);

    boolean startAdoptDevice(String siteId, String deviceMac, AdoptDeviceRequest adoptDeviceRequest);

    boolean rebootDevice(String siteId, String deviceMac);

    boolean updateConfig(String siteId, String deviceMac, ApGeneralConfig apGeneralConfig);

    ApGeneralConfig getConfig(String siteId, String deviceMac);

    TableDataInfo getDeviceList(String siteId, Integer pageNum, Integer pageSize, String searchKey);
}
