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.hhlocal.HhLocalDeviceDto;
import cn.hanghui.outapi.platform.tenant.entity.dto.hhlocal.HhLocalDeviceSearch;
import cn.hanghui.outapi.platform.tenant.entity.dto.hhlocal.HhLocalDeviceTemplateDto;
import cn.hanghui.outapi.platform.tenant.entity.dto.hhlocal.HhLocalDeviceTemplateLessVo;
import cn.hanghui.outapi.platform.tenant.entity.dto.hhlocal.HhLocalDeviceTemplateSearch;
import cn.hanghui.outapi.platform.tenant.entity.dto.hhlocal.HhLocalDeviceTemplateVo;
import cn.hanghui.outapi.platform.tenant.entity.dto.hhlocal.HhLocalDeviceVo;
import com.baomidou.mybatisplus.core.metadata.IPage;

import java.util.List;

/**
 * @author shisl
 * @package cn.hanghui.outapi.platform.tenant.service
 * @class HhLocalDeviceService
 * @date 2024/9/25 上午9:35
 * @description
 */
public interface HhLocalDeviceService {


    Boolean templateEdit(HhLocalDeviceTemplateDto dto);

    List<HhLocalDeviceTemplateLessVo> templateList();

    IPage<HhLocalDeviceTemplateVo> templatePage(HhLocalDeviceTemplateSearch dto);

    Boolean templateDelete(Long deviceTemplateId);

    HhLocalDeviceTemplateVo templateDetail(Long deviceTemplateId);

    RestResult<Boolean> add(HhLocalDeviceDto dto);

    RestResult<IPage<HhLocalDeviceVo>> page(HhLocalDeviceSearch dto);

    RestResult<Boolean> del(Long deviceId);

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

    RestResult<List<String>> snlist();

    RestResult<List<HhLocalDeviceVo>> snConfig(TenantDto dto);
}
