package cn.hanghui.outapi.platform.tenant.service;

import cn.hanghui.outapi.platform.common.entity.rest.RestResult;
import cn.hanghui.outapi.platform.tenant.entity.dto.TenantDto;
import cn.hanghui.outapi.platform.tenant.entity.dto.hhomc.HhOmcDeviceDto;
import cn.hanghui.outapi.platform.tenant.entity.dto.hhomc.HhOmcDeviceSearch;
import cn.hanghui.outapi.platform.tenant.entity.dto.hhomc.HhOmcDeviceTemplateDto;
import cn.hanghui.outapi.platform.tenant.entity.dto.hhomc.HhOmcDeviceTemplateLessVo;
import cn.hanghui.outapi.platform.tenant.entity.dto.hhomc.HhOmcDeviceTemplateSearch;
import cn.hanghui.outapi.platform.tenant.entity.dto.hhomc.HhOmcDeviceTemplateVo;
import cn.hanghui.outapi.platform.tenant.entity.dto.hhomc.HhOmcDeviceVo;
import com.baomidou.mybatisplus.core.metadata.IPage;

import java.util.List;

/**
 * @author shisl
 * @package cn.hanghui.outapi.platform.tenant.service
 * @class HhOmcDeviceService
 * @date 2024/12/31 上午11:24
 * @description
 */
public interface HhOmcDeviceService {

    Boolean templateEdit(HhOmcDeviceTemplateDto dto);

    List<HhOmcDeviceTemplateLessVo> templateList();

    IPage<HhOmcDeviceTemplateVo> templatePage(HhOmcDeviceTemplateSearch dto);

    Boolean templateDelete(Long deviceTemplateId);

    HhOmcDeviceTemplateVo templateDetail(Long deviceTemplateId);

    RestResult<Boolean> add(HhOmcDeviceDto dto);

    RestResult<IPage<HhOmcDeviceVo>> page(HhOmcDeviceSearch dto);

    RestResult<List<String>> snlist();

    RestResult<Boolean> del(Long deviceId);

    RestResult<Boolean> opeDeviceAuth(Long deviceId, Boolean enableflag);

    RestResult<HhOmcDeviceVo> queryConfig(TenantDto dto);
    
}
