package com.sz.admin.monitor.service;


import com.mybatisflex.core.service.IService;
import com.sz.admin.monitor.pojo.dto.edgebox.EdgeBoxBindCamerasDTO;
import com.sz.admin.monitor.pojo.dto.edgebox.EdgeBoxCreateDTO;
import com.sz.admin.monitor.pojo.dto.edgebox.EdgeBoxListDTO;
import com.sz.admin.monitor.pojo.dto.edgebox.EdgeBoxUpdateDTO;
import com.sz.admin.monitor.pojo.po.EdgeBox;
import com.sz.admin.monitor.pojo.vo.edgebox.EdgeBoxVO;
import com.sz.core.common.entity.ImportExcelDTO;
import com.sz.core.common.entity.PageResult;
import com.sz.core.common.entity.SelectIdsDTO;
import jakarta.servlet.http.HttpServletResponse;

import java.util.List;

/**
 * <p>
 * 边缘盒子 Service
 * </p>
 *
 * @author Lz
 * @since 2026-03-05
 */
public interface EdgeBoxService extends IService<EdgeBox> {

    void create(EdgeBoxCreateDTO dto);

    void update(EdgeBoxUpdateDTO dto);

    PageResult<EdgeBoxVO> page(EdgeBoxListDTO dto);

    List<EdgeBoxVO> list(EdgeBoxListDTO dto);

    void remove(SelectIdsDTO dto);

    EdgeBoxVO detail(Object id);

    void importExcel(ImportExcelDTO dto);

    void exportExcel(EdgeBoxListDTO dto, HttpServletResponse response);

    // 给盒子绑定摄像头通道
    void bindCameras(EdgeBoxBindCamerasDTO dto);
}