package com.usky.ems.service;

import com.usky.common.core.bean.CommonPage;
import com.usky.common.mybatis.core.CrudService;
import com.usky.ems.domain.DmpDevice;
import com.usky.ems.domain.DmpGateway;
import com.usky.ems.service.vo.DmpGatewayDevicePageRequest;
import com.usky.ems.service.vo.DmpGatewayDetailResponse;
import com.usky.ems.service.vo.DmpGatewayListItem;
import com.usky.ems.service.vo.DmpGatewayPageRequest;

/**
 * dmp_gateway 网关维护与查询
 */
public interface DmpGatewayService extends CrudService<DmpGateway> {

    void add(DmpGateway entity);

    void update(DmpGateway entity);

    boolean remove(Integer id);

    CommonPage<DmpGatewayListItem> pageGateways(DmpGatewayPageRequest request);

    CommonPage<DmpDevice> pageGatewayDevices(DmpGatewayDevicePageRequest request);

    DmpGatewayDetailResponse getGatewayDetail(Integer id);
}
